A knowledge base is a database of information that an agent can search to improve its responses. This information is stored in a vector database and provides agents with business context, helping them respond in a context-aware manner. The general syntax is:
Copy
Ask AI
from phi.agent import Agent, AgentKnowledge# Create a knowledge base for the Agentknowledge_base = AgentKnowledge(vector_db=...)# Add information to the knowledge baseknowledge_base.load_text("The sky is blue")# Add the knowledge base to the Agent and# give it a tool to search the knowledge base as neededagent = Agent(knowledge=knowledge_base, search_knowledge=True)
While any type of storage can act as a knowledge base, vector databases offer the best solution for retrieving relevant results from dense information quickly. Here’s how vector databases are used with Agents:
1
Chunk the information
Break down the knowledge into smaller chunks to ensure our search query
returns only relevant results.
2
Load the knowledge base
Convert the chunks into embedding vectors and store them in a vector
database.
3
Search the knowledge base
When the user sends a message, we convert the input message into an
embedding and “search” for nearest neighbors in the vector database.
Before you can use a knowledge base, it needs to be loaded with embeddings that will be used for retrieval. Use one of the following knowledge bases to simplify the chunking, loading, searching and optimization process: