Skip to content

Latest commit

 

History

History
95 lines (60 loc) · 3.52 KB

File metadata and controls

95 lines (60 loc) · 3.52 KB

知识库

知识库为 Agent 提供 RAG(检索增强生成)能力。你可以将文档、API 文档、内部 wiki 等内容导入知识库,Agent 在推理时自动检索相关信息,基于你的私有知识回答问题。

知识库概念

没有知识库的 Agent 只能依赖训练数据和当前对话上下文。接入知识库后,Agent 在回答问题前会先搜索知识库,把检索到的相关内容作为参考信息:

用户提问 → Agent 检索知识库 → 获得相关文档片段 → 结合检索结果生成回答

典型应用场景:

  • 让 Agent 熟悉你们公司的内部 API 文档
  • 为 Agent 提供产品使用手册,让它能回答用户问题
  • 导入技术规范,让 Agent 编写符合规范的代码

创建知识库

在 FenixAgent 控制台的知识库页面,点击"新建知识库",填写名称、Slug 和描述。

资源管理

知识库中的内容以**资源(Resource)**为单位管理。一个资源就是一段可检索的文本内容。

上传方式

  • 文件上传 — 直接上传文件(支持 txt、md、pdf 等格式)
  • URL 导入 — 提供一个 URL,FenixAgent 自动抓取内容

资源状态

每个资源有处理状态:

状态 说明
处理中 内容正在被解析和索引
就绪 已完成处理,可被检索
失败 处理失败,查看错误信息

Agent 绑定

在 Agent MD 文件的 frontmatter 中通过 knowledge 字段关联知识库。一个 Agent 可以关联多个知识库。关联后,Agent 启动时 FenixAgent 会自动注入一个知识库 MCP Server,Agent 可以调用它来检索知识。

检索策略

Agent 绑定知识库时,可以设置检索策略来控制检索行为:

searchFirst

  • true先检索后推理。Agent 收到问题后,先搜索知识库获取相关内容,再基于检索结果生成回答。适合"基于文档回答问题"的场景
  • false先推理后检索。Agent 先用自己的知识推理,如果不确定再搜索知识库。适合"Agent 本身有一定基础,知识库作为补充"的场景

maxResults

每次检索返回的最大条数(1-20)。更多的结果意味着更全面但更慢,更少的结果意味着更快但可能遗漏。

defaultNamespaces

默认搜索的命名空间范围。如果不设置,搜索所有命名空间。

运行时注入原理

Agent 启动时,FenixAgent 会自动注入一个知识库 MCP Server:

Agent MD 文件中的 knowledge 字段
    ↓
FenixAgent 生成知识库 MCP Server 配置
    ↓
注入到 AgentLaunchSpec.mcpServers 中
    ↓
Agent 运行时通过标准 MCP 工具调用检索知识

这意味着 Agent 不需要额外的代码来访问知识库——它通过标准的 MCP 工具调用就能检索知识,就像使用其他 MCP 工具一样。

最佳实践

知识库组织

  • 按主题拆分 — 不要把所有内容塞进一个知识库。按"API 文档"、"产品手册"、"技术规范"等主题分别建库
  • 保持更新 — 文档变更后及时更新知识库资源
  • 控制粒度 — 每个资源聚焦一个主题,避免单个资源包含太多不相关内容

检索调优

  • 先用 searchFirst: true + maxResults: 5 作为默认值
  • 如果 Agent 经常遗漏信息,增大 maxResults
  • 如果 Agent 响应太慢,减小 maxResults
  • defaultNamespaces 缩小搜索范围可以提高准确性和速度

下一步