数据存储区

数据存储区可供数据存储区工具从您的数据中查找最终用户问题的解答。数据存储区是一组网站、文档或第三方系统中的数据,每个网站、文档或数据都将作为您的数据来源。

当最终用户向代理提出问题时,代理会从给定的源内容中搜索答案,并将结果汇总为连贯的代理回答。它还提供指向回答来源的支持链接,供最终用户了解详情。智能体最多可针对指定问题提供 5 个回答摘要。

数据存储区来源

您可以使用不同的数据源:

受限访问数据存储区来源

Google 还提供了许多其他第一方和第三方数据存储区来源,但这些来源属于受限访问功能。如需查看可用的数据源并申请访问权限,请参阅其他数据存储区来源

网站内容

添加网站内容作为来源时,您可以添加和排除多个网站。 指定网站时,您可以使用单个网页或 * 作为模式的通配符。系统将处理所有 HTML 和 PDF 内容。

使用网站内容作为来源时,您必须验证域名

限制:

  • 来自公共网址的文件必须已被 Google 搜索索引器抓取,才能存在于搜索索引中。您可以使用 Google Search Console 检查是否满足此项要求。
  • 最多可将 20 万个网页编入索引。如果数据存储区包含更多网页,则索引编制会在此时失败,但已编入索引的任何内容都会保留。

导入数据

您可以从 BigQuery 或 Cloud Storage 导入数据。 这些数据可以是 FAQ 形式非结构化,并且可以包含元数据不包含元数据

您可以使用以下数据导入选项

  • 添加/更新数据:将提供的文档添加到数据存储区。如果新文档与现有文档具有相同的 ID,则新文档会替换旧文档。
  • 覆盖现有数据:删除所有现有数据并上传新数据。 此操作无法撤消。

常见问题解答数据存储区

数据存储区可以包含常见问题的解答。如果用户问题与上传的问题高度匹配,代理会返回该问题的答案,而不进行修改。您可以为智能体显示的每个问题和回答对提供标题和网址。

以 CSV 格式将数据上传到数据存储区。每个文件都必须包含一个描述列的标题行。

例如:

"question","answer","title","url"
"Why is the sky blue?","The sky is blue because of Rayleigh scattering.","Rayleigh scattering","https://en.wikipedia.org/wiki/Rayleigh_scattering"
"What is the meaning of life?","42","",""

您可以省略 titleurl 列:

"answer","question"
"42","What is the meaning of life?"

在上传过程中,您可以选择一个文件夹,其中每个文件都将作为 CSV 文件进行处理,无论文件扩展名是什么。

限制:

  • , 之后添加多余的空格字符会导致错误。
  • 空白行(即使位于文件末尾)也会导致错误。

非结构化数据存储区

非结构化数据存储区可以包含以下格式的内容:

  • HTML
  • PDF
  • TXT
  • CSV

您可以从其他项目的 Cloud Storage 存储桶导入文件。为此,请向导入流程授予明确的访问权限。按照错误消息中的说明操作,其中会包含需要对相应存储桶具有读取权限才能执行导入的用户名称。

限制:

  • 文本格式的文件大小上限为 2.5 MB,其他格式为 100 MB。

包含元数据的数据存储区

您可以提供标题和 URL 作为元数据。在对话期间,代理可以提供此信息,帮助用户快速链接到 Google 搜索索引器无法访问的内部网页。

如需导入包含元数据的内容,您必须提供一个或多个 JSON 行文件。此文件的每一行都描述一个文档。您不会直接上传实际文档;URIsJSON 行文件中会提供指向 Cloud Storage 路径的链接。

如需提供 JSON 行文件,请提供包含这些文件的 Cloud Storage 文件夹。请勿将任何其他文件放入此文件夹中。

字段说明:

字段 类型 说明
id 字符串 文档的唯一标识符。
content.mimeType 字符串 文档的 MIME 类型。支持“application/pdf”和“text/html”。
content.uri 字符串 Cloud Storage 中相应文档的 URI。
structData 字符串 单行 JSON 对象,包含可选的 titleurl 字段。

例如:

{ "id": "d001", "content": {"mimeType": "application/pdf", "uri": "gs://example-import/unstructured/first_doc.pdf"}, "structData": {"title": "First Document", "url": "https://internal.example.com/documents/first_doc.pdf"} }
{ "id": "d002", "content": {"mimeType": "application/pdf", "uri": "gs://example-import/unstructured/second_doc.pdf"}, "structData": {"title": "Second Document", "url": "https://internal.example.com/documents/second_doc.pdf"} }
{ "id": "d003", "content": {"mimeType": "text/html", "uri": "gs://example-import/unstructured/mypage.html"}, "structData": {"title": "My Page", "url": "https://internal.example.com/mypage.html"} }

不含元数据的数据存储区

此类内容没有元数据。而是提供指向各个文档的 URI 链接。内容类型由文件扩展名决定。

解析和分块配置

您可以根据数据源配置 parse and chunk 设置,具体取决于 Agent Search 的定义。

将 Cloud Storage 用于数据存储区文档

如果您的内容不是公开的,建议您将内容存储在 Cloud Storage 中。创建数据存储区文档时,您需要以 gs://bucket-name/folder-name 的形式提供 Cloud Storage 对象的网址。文件夹中的每个文档都会添加到数据存储区。

创建 Cloud Storage 存储桶时,请注意以下几点:

按照 Cloud Storage 快速入门中的说明创建存储桶并上传文件。

语言

如需了解支持的语言,请参阅语言参考中的数据存储区列。

为获得最佳性能,请以单一语言创建数据存储区。

创建数据存储区后,您可以选择指定数据存储区语言。如果您设置了数据存储区语言,则可以将数据存储区关联到配置为其他语言的代理。例如,您可以创建一个与英语代理相关联的法语数据存储区。

支持的区域

如需了解支持的区域,请参阅区域参考

(访问受限)其他数据存储区来源

下表列出了其他数据存储区类型。这些功能以受限访问功能的形式提供。您可以填写访问权限申请表单来申请访问权限。获得批准后,您在 Vertex AI Agent Builder 中创建数据存储区时,便会看到这些选项。

第三方数据存储区来源

数据存储区来源 说明
Box 从组织的 Box 网站导入数据。
Confluence Cloud 从 Confluence Cloud 工作区导入数据。
Dropbox 从 Dropbox 存储空间导入数据。
EntraID 从组织的 EntraID 系统导入数据。
Jira Cloud 从 Jira 任务管理系统导入数据。
OneDrive 从组织的 OneDrive 存储空间导入数据。
Microsoft Outlook 从 Microsoft Outlook 导入数据。
Salesforce 从 Salesforce 导入数据。
ServiceNow 从 ServiceNow 导入数据。
SharePoint 从组织的 SharePoint 系统导入数据。
Slack 从 Slack 导入数据。
Microsoft Teams 从 Microsoft Teams 导入数据。

使用连接器设置第三方数据存储区

本部分概述了使用第三方数据设置数据存储区的流程。如需了解特定于每个第三方数据源的说明,请参阅 Vertex AI Agent Builder 文档

身份提供方

身份提供方可让您管理用户、群组和身份验证。设置第三方数据存储区时,您可以使用 Google 身份提供方或第三方身份提供方。

Google 身份提供方

  • 代理的用户使用其 Google 凭据登录。可以是任何 @gmail.com 电子邮件地址,也可以是使用 Google 作为身份提供方(例如 Google Workspace)的任何账号。如果用户直接使用 Google Cloud 与代理对话,则会跳过此步骤,因为 Google 身份会自动内置到系统中。
  • 您可以使用 Identity and Access Management (IAM) 为 Google 账号分配访问权限。

第三方身份提供商

  • 代理的用户使用非 Google 凭据(例如 Microsoft 电子邮件地址)登录。
  • 您必须使用 Google Cloud 创建包含非 Google 身份提供方的员工池。然后,您可以使用 IAM 授予对整个池或该池中个别用户的访问权限。
  • 此方法无法用于在 @google.com 组织下设置的任何 Google Cloud 项目。

连接器

第三方数据存储区通过连接器实现。每个连接器可以包含多个数据存储区,这些数据存储区在 Dialogflow CX 系统中存储为实体。

  • 在创建数据存储区之前,您必须在 Google Cloud > Agent Builder >“设置”中为每个区域设置单个身份提供方。相应区域中的所有数据存储区都使用相同的身份提供方。您可以选择员工身份池中的 Google 身份或第三方身份。如果同一 Google 凭据位于员工身份池中,则会被视为不同的身份。例如,test@gmail.com 被视为与 workforcePools/test-pool/subject/test@gmail.com 不同的身份。
    • 创建员工池(如果需要)。
    • 前往 Agent Builder 设置,然后选择 Google Identity第三方身份。 点击保存以将身份保存到相应地区。
    • 现在,您可以在该区域中创建数据存储区。
  • 每个数据存储区都会随每个文档保存访问控制列表 (ACL) 数据。此记录用于跟踪哪些用户或群组对哪些实体具有读取权限。在运行时,用户或群组成员只有在代理的回答来自他们具有读取权限的实体时,才会收到回答。如果用户对数据存储区中的任何实体都没有读取权限,代理会返回空响应。
  • 由于数据存储区中的数据是第三方实例的副本,因此需要定期刷新。您可以按小时或天为时间单位配置刷新间隔。
  • 配置数据存储区并点击创建后,数据存储区可能需要长达一小时才能显示在数据存储区列表中。

数据存储区跟踪

此功能包含两部分:

  1. 在代理模拟器中显示数据存储区内部执行轨迹和步骤延迟时间。
  2. 将数据存储区内部执行轨迹和步进延迟时间导出到 Cloud Logging 和 BigQuery。

在模拟器中查看数据

如需在代理模拟器中显示跟踪和执行数据,请点击代理回答右侧的展开箭头,展开有关对话轮次的详细信息。

执行标签页会显示内部数据存储区的执行轨迹,包括:

  • 原始用户输入。
  • 由数据存储区引擎重写的查询。
  • 执行步骤中的质量信号,例如安全检查状态、稳定性检查状态、接地检查结果和安全检查状态。
  • 数据存储区搜索中的搜索摘要。
  • 摘要的支持文档列表。

延迟时间标签页会显示各种数据存储区执行步骤的时间图。步骤列表因数据存储区的配置方式和执行流程而异。显示的数据可能包括以下内容:

  • 常见问题解答匹配:执行常见问题解答匹配步骤。
  • 查询重写:重写原始用户查询。
  • 搜索:执行摘要搜索。
  • 总结:总结回答。
  • 安全检查:执行安全检查步骤。

查看其他位置的轨迹数据

  • 如果您为对话代理配置了对话历史记录日志记录,则可以在对话历史记录中查看数据存储区跟踪信息。
  • 如果您为对话式代理配置了日志记录,则可以在云端Logs Explorer中查看跟踪记录和延迟时间。
  • 如果您为对话型代理配置了 BigQuery 导出,则可以在导出的 BigQuery 表中查看跟踪记录和延迟时间。

后续步骤

如需了解如何创建和使用代理的数据存储区,请参阅数据存储区工具文档