Files
mem0/notebooks/elasticsearch.ipynb
T

4.2 KiB

Cookbook for using ElasticSearchDB with Embedchain

Step-1: Install embedchain package

In [ ]:
!pip install embedchain
In [ ]:
!pip install embedchain[dataloaders]

Step-2: Set OpenAI environment variables and install the dependencies.

You can find this env variable on your OpenAI dashboard. Now lets install the dependencies needed for Elasticsearch.

In [ ]:
!pip install --upgrade 'embedchain[elasticsearch]'
In [ ]:
import os
from embedchain import Pipeline as App

os.environ["OPENAI_API_KEY"] = "sk-xxx"

Step-3: Define your Vector Database config

In [ ]:
config = """
vectordb:
  provider: elasticsearch
  config:
    collection_name: 'es-index'
    es_url: your-elasticsearch-url.com
    allow_reset: true
    api_key: xxx
"""

# Write the multi-line string to a YAML file
with open('elasticsearch.yaml', 'w') as file:
    file.write(config)

Step-4 Create embedchain app based on the config

In [ ]:
app = App.from_config(yaml_path="elasticsearch.yaml")

Step-5: Add data sources to your app

In [ ]:
app.add("https://www.forbes.com/profile/elon-musk")
In [ ]:
while(True):
    question = input("Enter question: ")
    if question in ['q', 'exit', 'quit']:
        break
    answer = app.query(question)
    print(answer)