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.
- Performing a vector similarity search to find semantically similar content.
- Conducting a keyword-based search to identify exact or close matches.
- Combining the results using a weighted approach to provide the most relevant information.
⚡ Asynchronous Operations
Several vector databases support asynchronous operations, offering improved performance through non-blocking operations, concurrent processing, reduced latency, and seamless integration with FastAPI and async agents.
When building with Agno, use the
aload
methods for async
knowledge base loading in production environments.Supported Vector Databases
The following VectorDb are currently supported:- Cassandra
- ChromaDb
- Clickhouse
- Couchbase*
- LanceDb*
- Milvus
- MongoDb
- Azure Cosmos MongoDB
- PgVector*
- Pinecone*
- Qdrant
- Singlestore
- SurrealDB
- Weaviate