Code
cookbook/03_teams/05_knowledge/01_team_with_knowledge.py
from pathlib import Path
from agno.agent import Agent
from agno.knowledge.embedder.openai import OpenAIEmbedder
from agno.knowledge.knowledge import Knowledge
from agno.models.openai import OpenAIResponses
from agno.team import Team
from agno.tools.websearch import WebSearchTools
from agno.vectordb.lancedb import LanceDb, SearchType
# Setup paths for knowledge storage
cwd = Path(__file__).parent
tmp_dir = cwd.joinpath("tmp")
tmp_dir.mkdir(parents=True, exist_ok=True)
# Initialize knowledge base with vector database
agno_docs_knowledge = Knowledge(
vector_db=LanceDb(
uri=str(tmp_dir.joinpath("lancedb")),
table_name="agno_docs",
search_type=SearchType.hybrid,
embedder=OpenAIEmbedder(id="text-embedding-3-small"),
),
)
# Add content to knowledge base
agno_docs_knowledge.insert(url="https://docs.agno.com/llms-full.txt")
# Create web search agent for supplementary information
web_agent = Agent(
name="Web Search Agent",
role="Handle web search requests",
model=OpenAIResponses(id="gpt-5-mini"),
tools=[WebSearchTools()],
instructions=["Always include sources"],
)
# Create team with knowledge base integration
team_with_knowledge = Team(
name="Team with Knowledge",
members=[web_agent],
model=OpenAIResponses(id="gpt-5-mini"),
knowledge=agno_docs_knowledge,
show_members_responses=True,
markdown=True,
)
if __name__ == "__main__":
team_with_knowledge.print_response("Tell me about the Agno framework", stream=True)
Usage
1
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activate
uv venv --python 3.12
.venv\Scripts\activate
2
Install dependencies
uv pip install -U agno lancedb openai ddgs
3
Set environment variables
export OPENAI_API_KEY=****
4
Run the agent
python cookbook/03_teams/05_knowledge/01_team_with_knowledge.py