Documentation Index
Fetch the complete documentation index at: https://spacesail.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
This example shows how to add content to your knowledge base synchronously. While async operations are recommended for better performance, sync operations can be useful in certain scenarios.
Code
from agno.agent import Agent
from agno.db.postgres import PostgresDb
from agno.knowledge.knowledge import Knowledge
from agno.vectordb.pgvector import PgVector
contents_db = PostgresDb(
db_url="postgresql+psycopg://ai:ai@localhost:5532/ai",
knowledge_table="knowledge_contents",
)
# Create Knowledge Instance
knowledge = Knowledge(
name="Basic SDK Knowledge Base",
description="Agno 2.0 Knowledge Implementation",
vector_db=PgVector(
table_name="vectors", db_url="postgresql+psycopg://ai:ai@localhost:5532/ai"
),
)
knowledge.add_content(
name="CV",
path="cookbook/knowledge/testing_resources/cv_1.pdf",
metadata={"user_tag": "Engineering Candidates"},
)
agent = Agent(
name="My Agent",
description="Agno 2.0 Agent Implementation",
knowledge=knowledge,
search_knowledge=True,
debug_mode=True,
)
agent.print_response(
"What skills does Jordan Mitchell have?",
markdown=True,
)
Usage
Install libraries
pip install -U agno sqlalchemy psycopg pgvector 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 the example
python cookbook/knowledge/basic_operations/13_sync.py