如需创建数据存储区并注入数据以用于一般建议,请转到 部分:
网站网址
控制台
如需使用 Google Cloud 控制台创建数据存储区并对网站中的数据进行编入索引,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Agent Builder 页面。
在导航菜单中,点击数据存储区。
点击新建数据存储区。
在选择数据源页面上,选择网站内容。
选择是否为此数据存储区开启高级网站索引编制。 此选项以后无法关闭。
高级网站索引编制功能提供搜索摘要、搜索跟进和提取式回答等其他功能。高级网站索引编制功能会产生额外费用, 验证您编入索引的任何网站的域名所有权。如需了解详情,请参阅 高级网站索引编制 和价格。
在要包括的网站字段中,指定要编入索引的网站的网址。请在每行输入一个网址,不加英文逗号分隔符。
可选:在要排除的网站字段中,输入您要从应用中排除的网站。
点击继续。
为数据存储区输入名称。
为数据存储区选择一个位置。高级网站索引编制功能必须 选择位置。
点击创建。Vertex AI Agent Builder 会创建您的数据存储区并显示 数据存储区页面上的数据存储区。
如需查看数据存储区相关信息,请点击名称列中的数据存储区名称。系统会显示您的数据存储区页面。
如果您启用了高级网站索引编制功能,系统会显示一条警告消息,提示您 以验证网域所有权。如果您未达到配额(您指定的网站中的网页数量超出了项目的“每个项目的文档数量”配额),系统会显示一条额外的警告,提示您升级配额。通过 以下步骤说明了如何验证域名所有权和升级 配额。
要验证网域所有权,请按以下步骤操作:
- 点击在 Google Search Console 中验证。系统随即会显示欢迎使用 Google Search Console 页面。
- 请按照屏幕上的说明验证域名或网址前缀,具体取决于您要验证的是整个网域还是网域中的网址前缀。如需了解详情,请参阅 Search Console 帮助中的验证网站所有权。
- 完成域名验证工作流程后,请返回 代理构建器页面,然后点击导航菜单中的数据存储区。
- 在名称列中点击数据存储区的名称。您的数据存储区 页面。
- 点击刷新状态以更新状态列中的值。 网站的状态列表示索引编制正在进行中。
- 针对需要验证域名的每个网站重复执行域名验证步骤,直到所有网站都开始编制索引。如果某个网址的状态列显示已编入索引,则表示相应网址或网址格式就可以使用高级网站索引编制功能。
如需升级配额,请按以下步骤操作:
- 点击升级配额。系统随即会显示 Discovery Engine API 窗格,其中包含 已选择配额标签页。
- 请按照 Google Cloud 文档中的申请更高配额限制部分中的说明操作。通过 要增加的配额为文档数量。
- 提交提高配额上限的申请后,返回 Agent Builder 页面,然后点击导航菜单中的数据存储区。
- 在名称列中点击数据存储区的名称。状态列表示系统正在为超出配额的网站编制索引。如果网址的状态列显示为已编入索引,则该网址或网址格式可以使用高级网站索引编制功能。
后续步骤
BigQuery
如需从 BigQuery 提取数据,请按照以下步骤使用 Google Cloud 控制台或 API 创建数据存储区并提取数据。
在导入数据之前,请参阅准备数据以便提取。
控制台
如需使用 Google Cloud 控制台从 BigQuery 提取数据,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Agent Builder 页面。
前往数据存储区页面。
点击新建数据存储区。
在类型页面上,选择 BigQuery。
在 BigQuery 路径字段中,点击浏览,然后选择您要 已为提取做好准备,然后点击 Select。 或者,直接在 BigQuery 路径中输入表位置 字段。
选择要导入的数据类型。
点击继续。
如果您要一次性导入结构化数据,请执行以下操作:
将字段映射到关键属性。
如果架构中缺少重要字段,请使用新增 字段进行添加。
如需了解详情,请参阅自动检测和修改简介。
点击继续。
为您的数据存储区选择一个区域。
为数据存储区输入名称。
点击创建。
如需确认数据存储区是否已创建,请前往数据存储区页面,然后点击数据存储区名称,在其数据页面上查看其详细信息。
如需查看注入的状态,请前往数据存储区页面 ,然后点击您的数据存储区名称,在其数据页面上查看关于该数据存储区的详细信息。 当活动标签页上的状态列从进行中变为状态时 更改为导入完成,则表示注入完成。
提取过程可能需要几分钟到几小时才能完成,具体取决于数据的大小。
REST
如需使用命令行创建数据存储区并从 BigQuery 导入数据,请按以下步骤操作:
创建数据存储区。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:您要创建的推荐数据存储区的 ID。此 ID 只能包含小写 字母、数字、下划线和连字符。DATA_STORE_DISPLAY_NAME
:您要创建的推荐数据存储区的显示名。
可选:如果您要使用自己的架构上传结构化数据,可以执行以下操作: 提供架构提供架构时 来获得更好的广告效果否则,系统会自动检测架构。有关 请参阅 提供或自动检测架构。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/schemas/default_schema" \ -d '{ "structSchema": JSON_SCHEMA_OBJECT }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:推荐数据存储区的 ID。JSON_SCHEMA_OBJECT
:JSON 架构作为 JSON 对象, 示例:{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "title": { "type": "string", "keyPropertyMapping": "title" }, "categories": { "type": "array", "items": { "type": "string", "keyPropertyMapping": "category" } }, "uri": { "type": "string", "keyPropertyMapping": "uri" } } }
从 BigQuery 导入数据。
如果您定义了架构,请确保数据符合该架构。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "bigquerySource": { "projectId": "PROJECT_ID", "datasetId":"DATASET_ID", "tableId": "TABLE_ID", "dataSchema": "DATA_SCHEMA", }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:推荐数据存储区的 ID。DATASET_ID
:BigQuery 的 ID 数据集。TABLE_ID
:BigQuery 表的 ID。- 如果 BigQuery 表不在
PROJECT_ID
下,您需要向服务账号service-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.com
授予 BigQuery 表的“BigQuery Data Viewer”权限。例如,如果您要导入 源项目“123”中的 BigQuery 表更改为 目标项目“456”service-456@gcp-sa-discoveryengine.iam.gserviceaccount.com
BigQuery 表 项目“123”
- 如果 BigQuery 表不在
DATA_SCHEMA
:可选。值为document
和custom
。默认值为document
。document
:您使用的 BigQuery 表必须符合准备数据以供提取中提供的默认 BigQuery 架构。您可以自行定义每个文档的 ID 同时将所有数据封装在 jsonData 字符串中。custom
:任何 BigQuery 表 架构会被接受,系统会自动提供建议 为导入的每个文档生成 ID。
ERROR_DIRECTORY
:可选。存放与导入有关的错误信息的 Cloud Storage 目录,例如gs://<your-gcs-bucket>/directory/import_errors
。Google 建议 如果将此字段留空 系统会自动创建一个临时目录RECONCILIATION_MODE
:可选。值为FULL
和INCREMENTAL
。默认值为INCREMENTAL
。 指定INCREMENTAL
会导致从 BigQuery 到数据存储区的数据增量刷新。这会执行更新/插入操作,该操作会添加新文档,并将现有文档替换为具有相同 ID 的更新文档。指定FULL
会导致数据存储区中的文档完全重新基准。换句话说,系统会将新建和更新的文档添加到您的数据存储区,并将 BigQuery 中不存在的文档从您的数据存储区中移除。如果您想自动删除不再需要的文档,FULL
模式会很有用。AUTO_GENERATE_IDS
:可选。指定是否自动生成文档 ID。如果设置为true
,则文档 ID 是基于载荷的哈希值生成的请注意,在多次导入后,生成的文档 ID 可能不会保持一致。如果您在多次导入时自动生成 ID,Google 强烈建议您将reconciliationMode
设置为FULL
,以保持文档 ID 的一致性。仅当
bigquerySource.dataSchema
设置为custom
时,才指定autoGenerateIds
。否则,系统将返回INVALID_ARGUMENT
错误。如果您未指定autoGenerateIds
或将其设置为false
,您必须指定idField
。否则,文档将无法导入。ID_FIELD
:可选。指定哪些字段是文档 ID。对于 BigQuery 源文件:idField
表示 BigQuery 中列的名称 表。仅当满足以下条件时,才应指定
idField
:(1)bigquerySource.dataSchema
设置为custom
,并且 (2)auto_generate_ids
设置为false
或未指定。否则,系统会返回INVALID_ARGUMENT
错误。BigQuery 列名称的值必须为字符串类型,必须介于 1 到 63 个字符之间,并且必须符合 RFC-1034 的要求。否则, 个文档未能导入。
C#
如需了解详情,请参阅 Vertex AI Agent Builder C# API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Go
如需了解详情,请参阅 Vertex AI Agent Builder Go API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Java
有关详情,请参阅 Vertex AI Agent Builder Java API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Node.js
有关详情,请参阅 Vertex AI Agent Builder Node.js API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例会将 BigQuery 或 Cloud Storage 中的非结构化数据提取到现有数据存储区。
Python
有关详情,请参阅 Vertex AI Agent Builder Python API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Ruby
如需了解详情,请参阅 Vertex AI Agent Builder Ruby API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例会将 BigQuery 或 Cloud Storage 中的非结构化数据提取到现有数据存储区。
后续步骤
Cloud Storage
如需从 Cloud Storage 注入数据,请按照以下步骤创建 数据存储区并使用 Google Cloud 控制台或 API 注入数据。
在导入数据之前,请查看 准备数据以便提取。
控制台
如需使用控制台从 Cloud Storage 存储桶中注入数据,请按以下说明操作 步骤:
在 Google Cloud 控制台中,前往 Agent Builder 页面。
前往数据存储区页面。
点击新建数据存储区。
在类型页面上,选择 Cloud Storage。
在选择要导入的文件夹或文件部分,选择 文件夹或文件。
点击浏览,然后选择您拥有的数据 准备提取,然后点击选择。 或者,直接在
gs://
字段中输入地理位置。选择要导入的数据类型。
点击继续。
如果您要一次性导入结构化数据,请执行以下操作:
将字段映射到关键属性。
如果架构中缺少重要字段,请使用添加新字段进行添加。
如需了解详情,请参阅自动检测和修改简介。
点击继续。
为您的数据存储区选择一个区域。
为数据存储区输入名称。
点击创建。
如需确认数据存储区是否已创建,请前往数据存储区页面,然后点击数据存储区名称,在其数据页面上查看其详细信息。
如需查看注入的状态,请前往数据存储区页面 ,然后点击您的数据存储区名称,在其数据页面上查看关于该数据存储区的详细信息。 当活动标签页上的状态列从进行中变为状态时 更改为导入完成,则表示注入完成。
提取过程可能需要几分钟到几小时才能完成,具体取决于数据的大小。
REST
使用命令行创建数据存储区并从中注入数据 Cloud Storage,请按以下步骤操作:
创建数据存储区。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"], "contentConfig": "CONTENT_REQUIRED" }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:您要创建的推荐数据存储区的 ID。此 ID 只能包含小写 字母、数字、下划线和连字符。DATA_STORE_DISPLAY_NAME
:您要创建的推荐数据存储区的显示名称。
从 Cloud Storage 导入数据。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "gcsSource": { "inputUris": ["INPUT_FILE_PATTERN_1", "INPUT_FILE_PATTERN_2"], "dataSchema": "DATA_SCHEMA", }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:推荐数据存储区的 ID。INPUT_FILE_PATTERN
:Cloud Storage 中的一种文件格式 包含您的文档。结构化数据或包含元数据的非结构化数据 非结构化文档,那么输入文件格式的一个示例是
gs://<your-gcs-bucket>/directory/object.json
,或图案 匹配一个或多个文件,例如gs://<your-gcs-bucket>/directory/*.json
。对于非结构化文档,示例如下:
gs://<your-gcs-bucket>/directory/*.pdf
。与模式匹配的每个文件都会成为一个文档。如果
<your-gcs-bucket>
不属于PROJECT_ID
,您需要向服务账号service-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.com
授予对 Cloud Storage 存储桶的“Storage Object Viewer”权限。例如,如果您要将 Cloud Storage 存储桶从源项目“123”导入目标项目“456”,请向service-456@gcp-sa-discoveryengine.iam.gserviceaccount.com
授予对项目“123”下的 Cloud Storage 存储桶的权限。DATA_SCHEMA
:可选。值为document
、custom
、csv
和content
。默认值为document
。document
:上传带有以下项的元数据的非结构化数据: 非结构化文档。文件的每一行都必须跟在一行之后 以下格式。您可以定义每个文档的 ID:{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
{ "id": "<your-id>", "structData": <JSON object>, "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
custom
:上传结构化文档的 JSON。数据 按架构进行整理您可以指定架构;否则,系统会自动检测架构。您可以将 以一致的格式直接在每行中记录文档, Recommendations 会自动生成 ID。 。content
:上传非结构化文档(PDF、HTML、DOC、TXT、 PPTX)。系统会自动为每个文档生成 ID, 编码为十六进制字符串的 SHA256(GCS_URI) 的前 128 位。您可以指定多个输入文件格式,但匹配的文件不得超过 10 万个文件的限制。csv
:在 CSV 文件中加入标题行, 每个标头映射到一个文档字段使用inputUris
字段指定 CSV 文件的路径。
ERROR_DIRECTORY
:可选。存放与导入有关的错误信息的 Cloud Storage 目录,例如gs://<your-gcs-bucket>/directory/import_errors
。Google 建议 如果将此字段留空 系统会自动创建一个临时目录RECONCILIATION_MODE
:可选。值为FULL
和INCREMENTAL
。默认值为INCREMENTAL
。 指定INCREMENTAL
会导致数据从 Cloud Storage 增量刷新到数据存储区。此操作会执行更新/插入操作 并将现有文档替换为具有相同 ID。如果指定FULL
,则会对 中的文档执行完全 rebase 操作 和数据存储区。换句话说,系统会将新文档和更新后的文档添加到您的数据存储区,并将 Cloud Storage 中不存在的文档从您的数据存储区中移除。如果你需要,FULL
模式会很有帮助 自动删除您不再需要的文档。AUTO_GENERATE_IDS
:可选。指定是否自动生成文档 ID。如果设置为true
,文档 ID 将根据载荷的哈希生成。请注意,在多次导入后,生成的文档 ID 可能不会保持一致。如果您在多次导入时自动生成 ID,Google 强烈建议您将reconciliationMode
设置为FULL
,以保持文档 ID 的一致性。仅当
gcsSource.dataSchema
设置为以下内容时,才指定autoGenerateIds
custom
或csv
。否则,INVALID_ARGUMENT
错误为 返回。如果您未指定autoGenerateIds
或将其设置为false
,您必须指定idField
。否则,文档将无法 导入。ID_FIELD
:可选。指定哪些字段 文档 ID。对于 Cloud Storage 源文档,请使用idField
指定 JSON 字段中作为文档 ID 的名称。对于 例如,如果{"my_id":"some_uuid"}
是某个 指定"idField":"my_id"
。它标识所有 以"my_id"
作为文档 ID 的 JSON 字段。仅当 (1)
gcsSource.dataSchema
设置为custom
或csv
,并且 (2)auto_generate_ids
设置为false
或 未指定参数。否则,系统将返回INVALID_ARGUMENT
错误。请注意,Cloud Storage JSON 字段的值必须为 字符串类型,长度必须介于 1 到 63 个字符之间,并且必须符合 RFC-1034。否则, 个文档未能导入。
请注意,
id_field
指定的 JSON 字段名称必须为字符串类型,长度必须介于 1 到 63 个字符之间,并且必须符合 RFC-1034。否则,文档将无法导入。
C#
有关详情,请参阅 Vertex AI Agent Builder C# API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Go
有关详情,请参阅 Vertex AI Agent Builder Go API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Java
如需了解详情,请参阅 Vertex AI Agent Builder Java API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例会将 BigQuery 或 Cloud Storage 中的非结构化数据提取到现有数据存储区。
Node.js
有关详情,请参阅 Vertex AI Agent Builder Node.js API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例会将 BigQuery 或 Cloud Storage 中的非结构化数据提取到现有数据存储区。
Python
如需了解详情,请参阅 Vertex AI Agent Builder Python API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
Ruby
有关详情,请参阅 Vertex AI Agent Builder Ruby API 参考文档。
如需向 Vertex AI Agent Builder 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
此示例从 BigQuery 或 Cloud Storage 复制到现有数据存储区。
后续步骤
使用 API 上传结构化 JSON 数据
要使用 API 直接上传 JSON 文档或对象,请按以下步骤操作。
在导入数据之前, 准备数据以便提取。
REST
如需使用命令行创建数据存储区并导入结构化 JSON 数据,请执行以下操作: 请按以下步骤操作:
创建数据存储区。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:您要创建的推荐数据存储区的 ID。此 ID 只能包含小写 字母、数字、下划线和连字符。DATA_STORE_DISPLAY_NAME
:您要创建的推荐数据存储区的显示名称。
可选:提供您自己的架构。提供架构后,您通常会获得更好的结果。如需了解详情,请参阅提供或自动检测架构。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/schemas/default_schema" \ -d '{ "structSchema": JSON_SCHEMA_OBJECT }'
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。DATA_STORE_ID
:推荐数据存储区的 ID。JSON_SCHEMA_OBJECT
:您的 JSON 架构(作为 JSON 对象)- 例如:{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "title": { "type": "string", "keyPropertyMapping": "title" }, "categories": { "type": "array", "items": { "type": "string", "keyPropertyMapping": "category" } }, "uri": { "type": "string", "keyPropertyMapping": "uri" } } }
导入符合所定义架构的结构化数据。
您可以通过多种方式上传数据,包括:
上传 JSON 文档。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'
将
JSON_DOCUMENT_STRING
替换为 JSON 文档(作为单个字符串)。该架构必须符合 提供的数据,例如:```none { \"title\": \"test title\", \"categories\": [\"cat_1\", \"cat_2\"], \"uri\": \"test uri\"} ```
上传 JSON 对象。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'
将
JSON_DOCUMENT_OBJECT
替换为 JSON 文档作为 JSON 对象。此值必须符合您在上一步中提供的 JSON 架构,例如:```json { "title": "test title", "categories": [ "cat_1", "cat_2" ], "uri": "test uri" } ```
使用 JSON 文档进行更新。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'
使用 JSON 对象进行更新。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'
后续步骤
使用 Terraform 创建数据存储区
您可以使用 Terraform 创建空数据存储区。创建空数据存储区后,您可以使用 Google Cloud 控制台或 API 命令将数据提取到数据存储区。
如需了解如何应用或移除 Terraform 配置,请参阅基本 Terraform 命令。
如需使用 Terraform 创建空数据存储区,请参阅
google_discovery_engine_data_store
。