Skip to content

构建由平台统一维护、供多个智能体复用的知识服务

本实战由一位内容负责人维护 Collection 和知识库组实例,两个智能体分别连接这项知识服务。内容负责人更新资料后,两个智能体都能在新会话中使用新版本,不需要各自重新上传同一份资料。

这个模式适合员工制度、产品支持说明和标准操作流程等需要统一维护、由多个智能体使用的内容。它不会让所有智能体共享会话、记忆或业务权限。

准备条件和样例

开始前需要:

  • 一个可用的模型凭证和模型。
  • 创建 Collection、知识库组、智能体模板和智能体实例的权限。
  • 上传 Markdown 文件并查看构建历史、日志和 Trace 的权限。
  • 一位负责更新资料的测试用户。
  • 两个测试智能体。需要同时验证资源发现和管理边界时,让第二个同租户用户创建其中一个智能体。

下载并解压共享知识服务样例包。压缩包包含:

  • employee-device-service-v1.md:初始版本,标记为 DEVICE-SERVICE-2026-07-A
  • employee-device-service-v2.md:替代版本,标记为 DEVICE-SERVICE-2026-07-B
  • test-cases.json:固定更新和无答案用例。

可以另外查看样例清单和校验值

本文使用固定的 recipe-shared-knowledge-* 名称。如果环境中已经存在同名资源,请统一追加简短后缀;不要修改或复用来源不明的同名资源。

样例中的组织和设备流程均为虚构内容。不要上传客户资料、个人信息、密钥或生产事件记录。

理解维护与使用关系

Collection 保存已经入库的资料,知识库组实例保存智能体实际使用的 Collection 和检索配置。多个智能体连接同一个知识库组实例时,内容负责人只需维护这一组知识资源。

复用知识库组实例会让多个智能体使用同一组资料和检索配置。账号能否查看、修改或删除关联的 Collection,取决于租户授予的权限。为 Collection、知识库组实例和消费智能体分别指定负责人。

以下入口仅在租户已启用知识库能力时可用。按钮会在新标签页打开控制台。若先进入登录页,控制台目前不会在登录后自动返回目标页面;请登录后返回本文,再次选择按钮。

创建共享知识服务

创建 Collection 并上传初始版本

  1. 打开 知识库管理

  2. 创建名为 recipe-shared-knowledge-v1 的 Collection,将说明设为 由内容负责人统一维护的虚构员工设备服务资料

  3. 保持向量维度、chunk_overlap 和距离算法的页面默认值。

  4. 选择新建的 Collection,上传 employee-device-service-v1.md,再选择 生成 RAG 知识库

  5. 构建历史 中等待任务成功,并打开 日志 确认没有解析、分块、Embedding 或写入错误。

创建知识库组实例

  1. 打开 知识库组

  2. 创建名为 recipe-shared-knowledge-template-v1 的知识库组模板,把 默认检索条数(top_k) 保持为 4,选择 recipe-shared-knowledge-v1,并记录页面显示的 Collection 资源 ID。

  3. 从该模板创建名为 recipe-shared-knowledge-instance-v1 的知识库组实例。

检查点 1:初始资料的构建任务成功,知识库组实例的 集合数1。打开实例详情,在 引用的知识库集合 中确认包含刚才记录的 Collection 资源 ID。

创建两个消费智能体

分别创建两个智能体模板:

  • recipe-shared-knowledge-consumer-a-v1
  • recipe-shared-knowledge-consumer-b-v1

两个模板都使用以下系统提示词:

language-text
你是员工设备服务助手。
回答设备换新和服务范围问题前,必须先检索已连接的知识库。
资料同时出现多个版本时,采用明确标注为当前或替代版本的内容,并在回答中给出版本标记。
资料没有答案时,明确说明没有提供该信息,不要编造政策、时限或金额。

为每个模板完成以下配置:

  1. 选择同一个可用模型凭证和模型。
  2. 插件配置 中添加 知识库 RAG - 实例
  3. 选择同一个 recipe-shared-knowledge-instance-v1
  4. 分别创建一个测试智能体实例。

本实战选择 知识库 RAG - 实例,因为验收目标是让两个智能体复用同一项已经验证的 Collection 范围和检索配置。改选 知识库 RAG - 模板 仍可使用同一个 Collection,但平台会为每个智能体实例分别创建知识库组实例。选择方法参见选择知识库 RAG 模板或实例

警告

复用共享知识前核对资源 ID

知识库组实例详情只列出 Collection 资源 ID,不显示 Collection 名称,也不能直接打开对应 Collection。内容负责人应把 Collection 名称和资源 ID 一并提供给消费方。消费方应核对资源 ID,不要根据相同名称选择资源。

需要验证不同用户能否复用知识服务时,让第二位同租户用户创建消费智能体 B。创建智能体前,该用户应打开内容负责人准备的知识库组实例,在 引用的知识库集合 中核对内容负责人提供的 Collection 资源 ID。确认后选择该知识库组实例,不要重新上传样例资料,也不要创建另一个同名 Collection。

检查点 2:两个智能体模板的 插件 都显示同一个知识库组实例,两个测试实例的 Playground 都显示 已连接

验证初始版本

在两个测试智能体实例中分别新建会话并发送:

language-text
设备换新申请要在几点前提交,才能在当天完成初审?请同时给出资料中的版本标记。

两个回答都应包含:

  • 16:00
  • DEVICE-SERVICE-2026-07-A

分别打开两个实例的 Trace,确认知识检索参数中的 collection_name 指向同一个 Collection 资源 ID。

检查点 3:两个智能体在不同会话中给出相同的初始版本答案,两个 Trace 指向同一个 Collection。

发布并验证替代版本

内容更新期间保留最后一个已经通过验收的版本,直到新版本完成构建和固定问题验证。

  1. 知识库管理 中选择 recipe-shared-knowledge-v1

  2. 上传 employee-device-service-v2.md,再选择 生成 RAG 知识库

  3. 等待新任务成功,并检查日志。

  4. 在两个消费智能体中分别新建会话,发送:

    language-text
    设备换新申请要在几点前提交,才能在当天完成初审?请采用明确标注为当前版本的资料,并同时给出版本标记。
  5. 两个回答都应包含 17:30DEVICE-SERVICE-2026-07-B,不得把 16:00 当作当前规则。

  6. 再分别发送:

    language-text
    当前设备换新流程是否包含公司配发的扩展坞?请给出资料版本。
  7. 两个回答都应说明包含公司配发的扩展坞,并给出 DEVICE-SERVICE-2026-07-B消费智能体 A 从共享 Collection 检索到替代版本

    消费智能体 B 从同一个共享 Collection 检索到替代版本
  8. 确认两个智能体都通过新版本固定问题后,在构建历史中删除 employee-device-service-v1.md 对应的旧构建记录,移除旧版本的检索内容。

  9. 再次使用新会话运行两条新版本问题,确认回答仍然只采用版本 B。

智能体模板、智能体实例和知识库组实例不需要因资料更新而重新创建。新会话可以避免更新前的回答继续留在当前会话上下文中。

检查点 4:两个消费智能体都从同一个 Collection 检索到版本 B,旧版本构建记录删除后仍能给出 17:30 和扩展坞范围。

验证资料缺失和更新失败

资料没有答案

在两个消费智能体中分别新建会话并发送:

language-text
员工差旅报销上限是多少?

回答应说明设备服务资料没有提供差旅报销上限,不得编造金额。

新资料构建失败

新版本上传后,只有构建任务成功并通过固定问题,才能把它作为当前版本。如果任务失败:

  1. 打开失败任务的日志,检查文件格式、解析、Embedding 和写入错误。
  2. 不要删除最后一个已经通过验收的版本。
  3. 修正资料后重新提交。
  4. 等待任务成功,再通过两个消费智能体重跑更新和资料缺失问题。

这样可以把“文件已经选择”与“新知识已经可用”区分开,避免一个失败任务替换已经工作的资料。

验证使用与管理边界

同租户账号可能同时看到 Collection 和知识库组实例。页面可见性不表示每个消费方都需要维护内容;账号可以执行哪些查看、修改和删除操作,取决于租户授予的权限。上线前为共享 Collection 和知识库组实例指定负责人,并确认参与账号只使用完成职责所需的权限。

当内容负责人和消费智能体 B 使用不同的同租户账号时,完成以下检查:

  1. 内容负责人可以在 知识库管理 中查看并更新 recipe-shared-knowledge-v1
  2. 消费方可以在创建智能体模板时选择 recipe-shared-knowledge-instance-v1,并通过自己的智能体实例完成固定问题。
  3. 如果消费方账号也能查看或修改该 Collection,只执行本实战的检索验证,不要改动共享内容;由内容负责人完成资料更新。
  4. 内容负责人更新资料后,消费方只需在新会话中重跑固定问题,不需要复制 Collection。
  5. 测试结束时,由拥有相应删除权限的账号只删除消费方本次创建的智能体实例和模板。确认共享知识库组实例和 Collection 仍然存在,其他消费智能体仍能完成固定问题。

如果消费方看不到目标知识库组实例,先确认双方属于同一租户,并由平台管理员检查资源访问权限。不要让消费方改为连接名称相似但来源不明的资源。

资源创建者和日常负责人可以不同。请以租户实际权限为准,不要仅凭创建者判断谁能修改或删除共享资源。

调整为自己的知识服务

  • 多个智能体使用一套制度:让它们连接同一个经过验收的知识库组实例,并记录内容负责人和固定问题。
  • 资料域不同:按资料负责人或业务边界拆分 Collection,不要把互不相关的内容都放入一个共享集合。
  • 不同智能体需要不同检索参数:为同一个 Collection 建立不同知识库组实例,分别验证 top_k 和回答质量。
  • 需要定时更新网页内容:使用网页或 Sitemap 定时任务,并在每次成功更新后运行固定问题。
  • 需要按用户隔离私有资料:不要复用同一个知识库组实例;按数据边界准备独立资源和访问控制。

准备上线和清理

上线前记录资料来源、当前版本、内容负责人、更新窗口、固定问题和回退版本。把构建失败、Trace 检索结果和无答案用例纳入变更检查。参见将智能体投入生产

清理本实战时,先确认没有其他智能体引用共享资源,再按以下顺序处理:

  1. 删除两个测试智能体实例。
  2. 删除两个测试智能体模板。
  3. 删除知识库组实例和模板。
  4. 删除本实战的构建记录。
  5. 最后删除 recipe-shared-knowledge-v1 Collection。

删除共享 Collection 会移除所有消费智能体依赖的向量内容。没有确认引用关系和回退方案前,不要清理正在使用的知识服务。