知识与 RAG
使用 AgenticX 构建文档智能与 RAG。
知识与 RAG
Near 知识库面板管的是脑:文档脑走 knowledge_search,代码脑走 code_search。每个脑有自己的配置、文件和索引。分身可以挂零个或多个脑。
下面的 Python KnowledgeBase 是库 API(agenticx/memory/knowledge_base.py)。Studio 入库走 agenticx/studio/kb/ 和 LiteParseAdapter。不要把它们当成同一个对象。
Desktop 默认向量库是 Chroma。改 embedding 配置通常要重建索引。入库必须露出真实百分比或阶段;失败须带文件名、类型和 traceback 摘要。
文档入库
python
1from agenticx.knowledge import KnowledgeBase23kb = KnowledgeBase(name="my-docs")45# Add documents6kb.add_file("report.pdf")7kb.add_url("https://example.com/article")8kb.add_text("AgenticX is a multi-agent framework...", source="manual")910# Process (chunk, embed, index)11kb.build()
检索
python
1# Vector retrieval2results = kb.search("What are the key features?", top_k=5)34# Hybrid retrieval (vector + BM25)5results = kb.search("key features", mode="hybrid", top_k=10)67# With reranking8results = kb.search("key features", mode="hybrid", rerank=True, top_k=5)
GraphRAG
对于关系复杂的文档,可使用 GraphRAG:
python
1from agenticx.knowledge import GraphKnowledgeBase23gkb = GraphKnowledgeBase(4 name="research-papers",5 graph_backend="neo4j", # or "nebula"6 neo4j_uri="bolt://localhost:7687"7)89gkb.add_file("research_paper.pdf")10gkb.build() # Extracts entities and relationships1112# Graph-aware retrieval13results = gkb.search("relationship between agent memory and performance")
为智能体挂载知识库
在 Near 里挂文档脑,让模型调 knowledge_search。Studio 路径上没有 KnowledgeBaseTool。
python
1from agenticx import Agent, Task, AgentExecutor2from agenticx.llms import OpenAIProvider34executor = AgentExecutor(llm_provider=OpenAIProvider(model="gpt-4o"))5result = executor.run(agent=agent, task=task)
支持的文档格式
| 格式 | Studio 路径 | 库侧说明 |
|---|---|---|
| PDF / DOCX / PPTX / 图片 | LiteParseAdapter(npm i -g @llamaindex/liteparse) | 不要把 PDF 当原始文本塞给模型 |
.xlsx / .xls | 需要本机 LibreOffice | 未安装时从 UI 支持列表剔除 |
| Markdown / 纯文本 | LiteParse 或原生 | — |
嵌入(Embeddings)
python
1from agenticx.embeddings import OpenAIEmbeddings23embeddings = OpenAIEmbeddings(model="text-embedding-3-small")4kb = KnowledgeBase(name="my-docs", embeddings=embeddings)
支持的 embedding 供应商:OpenAI、Bailian、SiliconFlow、LiteLLM。
向量存储
| 存储 | 说明 |
|---|---|
| Faiss | 本地、快速,无需独立服务 |
| Chroma | 本地或 server 模式 |
| Qdrant | 生产级,支持云端 |
| Milvus | 大规模企业场景 |
| PgVector | PostgreSQL 扩展 |
| Pinecone | 托管云服务 |
| Weaviate | 托管云服务,支持 GraphQL |
桌面知识库默认向量后端是 Chroma。仓库里还有其它向量适配器,并非都已接到 Studio 主路径。
多脑知识库
当前代码树可以把 文档脑 与 代码脑 隔离挂载,并可选地做跨脑检索。
- 文档脑:入库、分块、嵌入、检索
- 代码脑:对一个或多个代码库做混合语义索引
- 跨脑检索是可选能力,不会强制合并所有索引