通过


使用 Agent Bricks 的知识助手功能,基于您的文档创建高质量的聊天机器人。

本页介绍如何使用代理砖头:知识助手基于文档创建问答聊天机器人,并根据主题专家的自然语言反馈提高其质量。

Agent Bricks 提供了一种简单的方法来构建和优化特定于域的高质量 AI 代理系统,用于常见 AI 用例。

什么是 Agent Bricks:知识助手?

使用Agent Bricks:知识助手来创建一个聊天机器人,该机器人可以回答有关文档的问题,并提供带有引文的高质量回答。 知识助手使用高级 AI,遵循 “指示检索器 ”方法来解决传统检索扩充生成(RAG)方法的限制,并根据提供的文档提供质量最高的答案。

Agent Bricks:知识助手非常适合支持以下用例:

  • 根据产品文档回答用户问题。
  • 回答与人力资源策略相关的员工问题。
  • 根据支持知识库回答客户查询。

借助知识助手,你可以改进聊天代理的质量,并根据主题专家的自然语言反馈调整其行为。 直接在体验中提供问题和指南,并共享智能助手,允许他人协作并提升智能助手的性能。

Agent Bricks:知识助手创建一个代理端点,您可以在应用程序的下游流程中使用。 例如,下图显示了如何在 AI Playground 中通过聊天来与端点进行交互。 向代理询问与文档有关的问题,代理将以引用的方式回答。

知识助手在操场中的终结点。

Agent Bricks 使用 默认存储 来存储临时数据转换、模型检查点和支持每个代理的内部元数据。 在代理删除时,将从默认存储中删除与代理关联的所有数据。

Requirements

创建知识助理代理

转到“代理”图标。工作区左侧导航窗格中的代理。 在知识助手磁贴中,单击构建

步骤 1:配置代理

在“ 生成 ”选项卡上,配置代理并提供用于回答问题的知识源。

  1. 在“ 名称” 字段中,输入代理的名称。

  2. “说明” 字段中,描述你的代理能做什么。

  3. “知识源 ”面板中,添加知识源。 可以选择提供 Unity 目录文件或矢量搜索索引。

    UC 文件

    对于 UC 文件,支持以下文件类型:txt、pdf、md、ppt/pptx 和 doc/docx。 引入期间会自动跳过大于 50 MB 的文件,不会包含在知识库中。

    1. “类型”下,选择 “UC 文件”。
    2. “源”字段中,选择包含文件的 Unity Catalog 卷或卷目录。
    3. 在“ 名称” 字段中,输入知识源的名称。
    4. “描述内容”下,描述知识源包含的内容,以帮助代理了解何时使用此数据源。

    矢量搜索索引

    Note

    仅当索引用作 databricks-gte-large-en 其嵌入模型时,才支持矢量搜索索引。 创建矢量搜索索引时,请确保选择此嵌入模型。 有关详细信息,请参阅 创建矢量搜索索引

    1. “类型”下,选择 “矢量搜索索引”。
    2. “源 ”字段中,选择要提供代理的矢量搜索索引。
    3. 在“ 名称” 字段中,输入知识源的名称。
    4. 文档 URI 列中,选择包含指向信息所在位置的链接或引用的列。 代理将在引文中使用它。
    5. “文本列” 字段中,指定包含希望代理检索的原始文本的列。
    6. “描述内容”下,描述知识源包含的内容,以帮助代理了解何时使用此数据源。
  4. (可选)如果要添加更多知识源,请单击“ 添加知识源”。 最多可以提供 10 个知识源。

  5. (可选)在 “说明” 字段中,指定代理响应方式的准则。

  6. 单击“ 创建代理”。

创建代理并同步你提供的知识源最多可能需要几个小时。 代理准备就绪后,右侧面板会显示同步的知识源。

Important

如果更新或添加文件到知识源,您需要单击同步图标。 同步以便代理处理更改。 同步以增量方式完成。 例如,如果将新文件添加到以前同步的 Unity 目录卷,同步将仅处理新添加的文件。

只有知识助手的创建者才能同步知识源。

步骤 2:测试代理

代理构建完成后,通过聊天对其进行测试。 代理应使用引文回答与其知识来源相关的问题。

  1. 直接在 “生成 ”选项卡中开始与代理聊天。
  2. (可选)还可以单击 “在 AI Playground 中打开”,在 AI Playground 中与之聊天。 如果启用了 AI 辅助功能,则可以启用 AI 法官合成问题生成 来帮助评估代理。
  3. 为你的代理输入一个问题。
  4. 评估其响应:
    1. 单击“ 查看想法 ”以查看代理如何回答问题。
    2. 单击“ 查看跟踪 ”以查看完整跟踪。 可以在 UI 中将 标签添加到追踪,以便在开发过程中跟踪质量评估。
    3. 单击“ 查看源” 以查看代理引用的文件。 这将打开一个侧面板,其中包含供你查看的源列表。

如果对代理的性能感到满意,请继续使用代理 as-is。

步骤 3:提高质量

代理砖块:知识助手可以根据自然语言反馈来调整代理的行为。 通过配置页面收集专家的反馈,以提高代理的质量。 收集标记数据可以提高您的代理的质量和表现。

在“ 示例 ”选项卡中,添加用户将提出的问题或代理以前出错的问题。 或者,也可以直接从 Unity 目录表导入标记的数据。

  1. 向标签添加问题:

    1. 单击“ + 添加” 以添加问题。
    2. “添加问题 模式”中,输入问题。
    3. 单击 添加。 问题应显示在 UI 中。
    4. 重复操作,直到添加你想要评估的所有问题。
    5. 若要删除问题,请单击“烤肉串”菜单,然后单击 “删除”。
  2. 添加问题后,可以共享代理模型以供他人审查,从而帮助你构建高质量的标记数据集。 在右上角,单击烤肉串 菜单 Kebab 菜单图标。 若要 管理权限

    若要让专家访问并提供反馈,需要向他们授予以下权限:

    • 代理配置页面的CAN_MANAGE权限
  3. 请分享您的代理砖块:知识助手配置页面的链接,以收集专家反馈。

  4. 若要标记数据,请单击问题并在显示的窗格中添加 “指南 ”。 指南在保存后立即适用。

  5. 在配置页或 AI Playground 中再次测试代理,以查看其性能的改进。 如果需要,请添加更多问题和指南,以继续改进行为。

(可选)导入和导出标记的数据

直接从 Unity 目录表导入新问题和反馈:

  1. 单击“导入” 。

  2. “源 ”字段中,选择包含已标记数据的 Unity 目录表。

    该表必须具有以下架构:

    • eval_id: string
    • request: string
    • guidelines: array
      • items: string
    • metadata: string
    • tags: string
  3. 单击“导入” 。

新的问题和指南将合并到右侧标记的数据表中。

若要将标记的数据导出为 Unity Catalog 表,请执行以下步骤:

  1. 单击“ 导出”。
  2. “架构 ”字段中,选择要将数据保存到的 Unity 目录架构位置。
  3. “表名 ”字段中,输入表的名称。
  4. 单击“导出”。

使用标记的数据创建新表。

管理权限

默认情况下,只有 Agent Bricks 作者和工作区管理员有权访问代理。 若要允许其他用户编辑或查询代理,需要显式授予他们权限。

若要管理代理的权限,请执行以下步骤:

  1. 在“Agent Bricks”中打开代理。
  2. 在顶部,单击 “Kebab”菜单图标。 烤肉串菜单。
  3. 单击“ 管理权限”。
  4. “权限设置” 窗口中,选择用户、组或服务主体。
  5. 选择要授予的权限:
    • 可以管理:允许管理代理砖块,包括设置权限、编辑代理配置以及提高其质量。
    • 可以查询:允许通过 API 查询 AI Playground 中的代理砖头终结点。 仅具有此权限的用户无法在 Agent Bricks 中查看或编辑代理。
  6. 单击 添加
  7. 单击“ 保存”。

Important

只有知识助手的创建者才能同步知识源。

查询代理端点

在代理页上,单击 “模型服务”图标。 请参阅右上角的代理状态 以获取已部署的代理终结点,并查看终结点详细信息。

可通过多种方式查询创建的知识助理终结点。 使用 AI Playground 中提供的代码示例作为起点:

  1. 构建选项卡上,单击打开在 playground 中
  2. 在 Playground 中,单击“ 获取代码”。
  3. 选择如何使用终结点:
    • 选择 Curl API 作为代码示例,以使用 curl 查询终结点。
    • 选择 Python API 作为代码示例,以使用 Python 与终结点交互。

评估知识助手

此笔记本展示如何使用精心挑选的评估数据集和定制评分器来评估 Databricks 知识助手。

获取笔记本

Limitations