ChromaDB Async

Code

1import asyncio
2
3from kern.agent import Agent
4from kern.knowledge.knowledge import Knowledge
5from kern.vectordb.chroma import ChromaDb
6
7vector_db = ChromaDb(collection="recipes", path="tmp/chromadb", persistent_client=True)
8
9knowledge = Knowledge(
10 vector_db=vector_db,
11)
12
13agent = Agent(knowledge=knowledge)
14
15if __name__ == "__main__":
16 asyncio.run(
17 knowledge.ainsert(url="https://kern.ndx.rocks/introduction/agents.md")
18 )
19
20 asyncio.run(
21 agent.aprint_response("What is the purpose of an Kern Agent?", markdown=True)
22 )

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 chromadb pypdf openai kern-ai

Set environment variables

1export OPENAI_API_KEY=xxx

Run Agent

1python cookbook/08_knowledge/vector_db/chroma_db/async_chroma_db.py