MongoDB

Code

1from kern.agent import Agent
2from kern.knowledge.knowledge import Knowledge
3from kern.vectordb.mongodb import MongoVectorDb
4
5mdb_connection_string = "mongodb://localhost:27017"
6knowledge = Knowledge(
7 vector_db=MongoVectorDb(
8 collection_name="recipes",
9 db_url=mdb_connection_string,
10 search_index_name="recipes",
11 ),
12)
13
14knowledge.insert(
15 name="Recipes",
16 url="https://kern-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf",
17 metadata={"doc_type": "recipe_book"},
18)
19
20# Create and use the agent
21agent = Agent(knowledge=knowledge)
22agent.print_response("How to make Thai curry?", markdown=True)

Usage

Set up your virtual environment

1uv venv --python 3.12
2source .venv/bin/activate
1uv venv --python 3.12
2.venv\Scripts\activate

Install dependencies

1uv pip install -U pymongo pypdf openai kern-ai

Run MongoDB

1docker run -d \
2--name local-mongo \
3-p 27017:27017 \
4-e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
5-e MONGO_INITDB_ROOT_PASSWORD=secret \
6mongo

Run Agent

1python cookbook/08_knowledge/vector_db/mongo_db/mongo_db.py