Skip to content

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

连接 AI 助手

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

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

本实战将帮助你理解

  • Collection、知识库组实例和消费智能体如何组成一项可集中更新的知识服务。
  • 为什么两个智能体都要关联同一个知识库组实例,以及如何通过资源 ID 和 Trace 确认它们确实使用同一个 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,再创建供两个智能体共同使用的知识库组实例。

创建 Collection 并上传初始版本

  1. 打开 知识库管理

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

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

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

创建知识库组实例

  1. 打开 知识库组

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

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

继续前,确认初始资料的构建任务成功,知识库组实例的 集合数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。本实战直接关联这个已有实例,让两个智能体复用同一个知识库组;如果改选 知识库 RAG - 模板,平台会为每个智能体实例分别创建知识库组实例。参见选择知识库 RAG 模板或实例

    重要

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

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

  4. 关闭默认开启的 启用文件系统,不添加其他能力,使两位消费方只比较共享知识结果。

  5. 分别创建一个测试智能体实例。

继续前,确认两个智能体模板的 插件 都显示同一个知识库组实例,两个测试实例的 Playground 都显示 已连接

验证初始版本

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

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

两个回答都应包含:

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

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

确认两个智能体在不同会话中给出相同的初始版本答案,两个 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. 分别打开两个实例的 Trace,确认知识检索仍指向同一个 Collection 资源 ID。

    消费智能体 A 从共享 Collection 检索到替代版本消费智能体 B 从同一个共享 Collection 检索到替代版本
  7. 删除旧构建记录前,确认两个智能体都已通过版本 B 的固定问题,并再次核对目标记录对应 employee-device-service-v1.md

    注意

    只删除已经被版本 B 替代的测试记录

    删除前再次确认两个智能体都已通过版本 B 的固定问题,并核对目标记录对应 employee-device-service-v1.md。如果无法确认记录归属、新版本结果或回退方式,请保留旧记录并停止删除。

  8. 所有条件都已确认时,在构建历史中删除 employee-device-service-v1.md 对应的旧构建记录,移除旧版本的检索内容。

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

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

完成结果:内容负责人只更新一次共享 Collection,两个现有智能体不需要重新配置,都能在新会话中给出 17:30DEVICE-SERVICE-2026-07-B;两个 Trace 仍指向同一个 Collection。

可选:验证更多内容和无答案边界

前面的版本切换已经完成本实战。需要继续确认新版本的其他内容和无答案处理时,再运行以下固定问题。

验证扩展范围

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

language-text
当前设备换新流程是否包含公司配发的扩展坞?请给出资料版本。

两个回答都应说明包含公司配发的扩展坞,并给出 DEVICE-SERVICE-2026-07-B

资料没有答案

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

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

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

如果知识更新没有通过

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

  1. 打开失败任务的日志,检查文件格式、解析、Embedding 和写入错误。
  2. 不要删除最后一个已经通过验收的版本。
  3. 修正资料后重新提交。
  4. 等待任务成功,再通过两个消费智能体重跑版本更新问题;如果此前运行了可选的无答案用例,也一并重跑。

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

可选:验证使用与管理边界

需要确认另一位同租户用户也能发现并使用这项知识服务时,再完成本节。这个检查验证资源发现和操作分工,不是前面集中更新结果的必需步骤。

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

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

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

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

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

调整为自己的知识服务

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

准备上线和清理

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

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

危险

不要删除仍被使用的共享 Collection

删除 Collection 会移除所有消费智能体依赖的向量内容。无法确认引用关系、负责人或回退方式时,请停止清理并保留共享知识服务。

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