import asyncio from pathlib import Path from agno.agent import Agent from agno.knowledge.knowledge import Knowledge from agno.vectordb.pgvector.pgvector import PgVector db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai" knowledge = Knowledge( vector_db=PgVector( table_name="markdown_documents", db_url=db_url, ), max_results=5, # Number of results to return on search ) agent = Agent( knowledge=knowledge, search_knowledge=True, ) if __name__ == "__main__": asyncio.run( knowledge.add_content_async( path=Path("README.md"), ) ) asyncio.run( agent.aprint_response( "What can you tell me about Agno?", markdown=True, ) )
Create a virtual environment
Terminal
python3 -m venv .venv source .venv/bin/activate
Install libraries
pip install -U markdown sqlalchemy psycopg pgvector agno openai
Set environment variables
export OPENAI_API_KEY=xxx
Run PgVector
docker run -d \ -e POSTGRES_DB=ai \ -e POSTGRES_USER=ai \ -e POSTGRES_PASSWORD=ai \ -e PGDATA=/var/lib/postgresql/data/pgdata \ -v pgvolume:/var/lib/postgresql/data \ -p 5532:5432 \ --name pgvector \ agno/pgvector:16
Run Agent
python examples/concepts/knowledge/readers/markdown_reader_async.py