Agno通过Agentic RAG技术实现知识增强,配置专业知识库需要四个关键环节:
- 文档准备:支持PDF/URL等格式源,如案例中的
ThaiRecipes.pdf
菜谱文档。 - vector database:默认集成LanceDB,需配置
uri
(存储路径)和table_name
(集合名)。 - embedding model: Use
OpenAIEmbedder
等将文本转换为向量,推荐text-embedding-3-small
平衡成本与效果。 - Knowledge loading:首次调用
agent.knowledge.load()
完成文档解析和向量化存储。
完整实现示例:knowledge=PDFUrlKnowledgeBase(
urls=["https://example.com/doc.pdf"],
vector_db=LanceDb(uri="tmp/db", table_name="docs"),
embedder=OpenAIEmbedder(id="text-embedding-3-small")
)
配置后,智能体会优先从知识库获取答案,如案例中准确回答”泰式椰奶鸡汤的做法”。知识检索采用MMR算法确保结果多样性,避免单一重复响应。
This answer comes from the articleAgno: A framework for building multimodal intelligences with memory, knowledge and toolsThe