REST Resource: projects.locations.dataStores

资源:DataStore

描述 DataStore 对象的消息。DataStore 由项目直接拥有,其中包含一组共享单个不可变 DocumentType 的相关文档,以及用于处理这些文档的配置。导入的文档会被拆分为多个片段,并嵌入和存储在数据存储区的后备集合中(请参阅 collectionName)。

JSON 表示法
{
  "name": string,
  "displayName": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "documentType": enum (DocumentType),
  "processingConfig": {
    object (ProcessingConfig)
  },
  "state": enum (State),
  "collectionName": string,
  "documentMetadataSchema": {
    object (DocumentMetadataSchema)
  }
}
字段
name

string

标识符。DataStore 的完全限定资源名称。

格式:projects/{project}/locations/{location}/dataStores/{dataStoreId}

displayName

string

可选。用户指定的数据存储区显示名称。

description

string

可选。用户指定的数据存储区说明。

createTime

string (Timestamp format)

仅限输出。创建时间戳

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

updateTime

string (Timestamp format)

仅限输出。更新时间戳

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

labels

map (key: string, value: string)

可选。标签作为键值对。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

documentType

enum (DocumentType)

必需。不可变。此数据存储区中所有文档的不可变内容类型。

processingConfig

object (ProcessingConfig)

可选。用于控制如何提取(解析、分块和嵌入)此 DataStore 中的文档的配置。

可通过 dataStores.patch 进行更改。更改仅适用于之后处理的文档:数据存储区中已有的文档会保留其现有片段,重新导入未更改的文件不会重新处理该文件。

state

enum (State)

仅限输出。数据存储区的状态。

collectionName

string

仅限输出。支持此数据存储区的集合的资源名称,格式为 projects/{project}/locations/{location}/collections/{collectionId}。collectionId 为 google-{dataStoreId},或者当长度超过 63 个字符时,为 google- 后跟数据存储区 ID 的哈希。在创建后备集合后填充。

documentMetadataSchema

object (DocumentMetadataSchema)

可选。此数据存储区中文档的用户定义元数据的架构。系统会根据 JSON 架构草稿 7 验证该架构。

稍后,您可以通过添加属性,使用 dataStores.patch 扩展架构;现有属性无法移除或更改。

DocumentType

DataStore 中文档的内容类型。DataStore 中的所有 Document 都共享一个不可变的 DocumentType。

枚举
DOCUMENT_TYPE_UNSPECIFIED 默认值,未指定文档类型。
UNSTRUCTURED 文本文档:PDF、纯文本、Word、PowerPoint 和 Excel 文件,可选择包含元数据。
VIDEO 视频文档,可选择是否包含元数据。

ProcessingConfig

ProcessingConfig 控制如何解析、分块和嵌入 DataStore 中的文档。

JSON 表示法
{
  "videoProcessingConfig": {
    object (VideoProcessingConfig)
  },
  "unstructuredProcessingConfig": {
    object (UnstructuredProcessingConfig)
  }
}
字段
videoProcessingConfig

object (VideoProcessingConfig)

可选。视频提取流水线的配置。在数据存储区的 documentType 为 VIDEO 时适用。

如果未为 VIDEO 数据存储区设置此参数,流水线将默认使用 30 秒固定窗口进行分段,并在生成每个分段的嵌入时停用音频。

unstructuredProcessingConfig

object (UnstructuredProcessingConfig)

可选。非结构化文档提取流水线的配置。在数据存储区的 documentType 为 UNSTRUCTURED 时适用。

如果未为 UNSTRUCTURED 数据存储区设置此字段,流水线将默认采用分块分割(chunkSize为 500)、数字解析和仅文本的每段嵌入生成。

VideoProcessingConfig

配置应用于提取到此数据存储区中的文档的视频提取流水线。细分和嵌入设置可以独立演变,同时仍在此消息中分组。

所有子配置均为可选配置。任何省略的子配置都会回退到该字段中记录的平台默认值。

JSON 表示法
{
  "segmentationConfig": {
    object (VideoSegmentationConfig)
  },
  "embeddingConfig": {
    object (VideoEmbeddingGenerationConfig)
  }
}
字段
segmentationConfig

object (VideoSegmentationConfig)

可选。控制在嵌入之前如何将视频拆分为片段。

如果未设置,则默认为固定窗口分段,窗口时长为 30 秒。如果设置了此字段,则必须设置分割模式(例如 fixedWindowConfig);空配置会被拒绝。

embeddingConfig

object (VideoEmbeddingGenerationConfig)

可选。控制每个片段的多模态嵌入的生成方式。

VideoSegmentationConfig

配置在嵌入之前如何将视频拆分为片段。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "fixedWindowConfig": {
    object (FixedWindowConfig)
  }
  // End of mutually exclusive fields.
}
字段
必需。必须选择一种分割模式。这样可以隔离配置,使用户无法设置不适用于其所选模式的字段。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
fixedWindowConfig

object (FixedWindowConfig)

固定窗口(确定性)分段。

互斥字段结束。

FixedWindowConfig

配置固定窗口分段。这些片段是确定性的、不重叠的窗口,每个窗口时长为 segmentDuration。

JSON 表示法
{
  "segmentDuration": string
}
字段
segmentDuration

string (Duration format)

可选。指定每个发出的片段的固定窗口大小。

如果未设置,则默认为 30 秒。如果明确设置,则必须大于 5 秒且小于或等于 80 秒。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。

VideoEmbeddingGenerationConfig

配置如何为视频模态生成每个片段的多模态嵌入。

JSON 表示法
{
  "audioMode": enum (AudioMode)
}
字段
audioMode

enum (AudioMode)

可选。控制音轨是否对嵌入有贡献。默认值为 DISABLED。

AudioMode

指定在生成每个片段的嵌入时,应如何处理来源视频的音轨。

此枚举已冻结;预计不会有新值。

枚举
AUDIO_MODE_UNSPECIFIED 未指定。视为已停用。
ENABLED 将音轨与视频帧一起多路复用到多模态嵌入中。提高依赖于语音内容或环境声音(例如对话驱动的新闻、体育评论)的查询的召回率,但代价是嵌入请求令牌大小更大。
DISABLED 丢弃音轨,仅根据视觉帧生成嵌入。默认值。

UnstructuredProcessingConfig

应用于提取到此数据存储区中的文档的非结构化文档提取流水线的配置。分段和解析设置可以独立演变,同时仍在此消息中分组。

所有子配置都是可选的;任何省略的子配置都会回退到该字段中记录的平台默认值。

JSON 表示法
{
  "segmentationConfig": {
    object (UnstructuredSegmentationConfig)
  },
  "parsingConfig": {
    object (UnstructuredParsingConfig)
  },
  "embeddingConfig": {
    object (UnstructuredEmbeddingConfig)
  }
}
字段
segmentationConfig

object (UnstructuredSegmentationConfig)

可选。控制在嵌入之前如何将非结构化文档拆分为片段。

如果未设置,则默认采用 chunkSize 为 500 的分块分割。如果设置,则必须且只能设置 chunkSegmentationConfig 或 pageSegmentationConfig 中的一个;空配置会被拒绝。

parsingConfig

object (UnstructuredParsingConfig)

可选。解析配置,应用于所有文件类型的非结构化文档解析。纯文本 (.txt) 文件始终以数字方式解析。

如果未设置,则默认为数字(原生文本提取)解析;如果 embeddingConfig.mode 为 MULTIMODAL,则默认为布局感知解析。如果设置,则必须仅设置 digitalParsingConfig 或 layoutParsingConfig 中的一个;空配置会被拒绝。

embeddingConfig

object (UnstructuredEmbeddingConfig)

可选。控制每个片段的嵌入生成方式。

UnstructuredSegmentationConfig

配置在嵌入之前如何将非结构化文档拆分为片段。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "chunkSegmentationConfig": {
    object (ChunkSegmentationConfig)
  },
  "pageSegmentationConfig": {
    object (PageSegmentationConfig)
  }
  // End of mutually exclusive fields.
}
字段
必需。必须选择一种分割模式。这样可以隔离配置,使用户无法设置不适用于其所选模式的字段。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
chunkSegmentationConfig

object (ChunkSegmentationConfig)

分块级分割。

pageSegmentationConfig

object (PageSegmentationConfig)

页面级细分。

互斥字段结束。

ChunkSegmentationConfig

非结构化文档的分块分割配置。分段会生成为语义块(例如按段落)。

JSON 表示法
{
  "chunkSize": integer,
  "includeAncestorHeadings": boolean
}
字段
chunkSize

integer

可选。每个块的 token 大小限制。

支持的值:100-500(含)。如果未设置,则默认为 500。

includeAncestorHeadings

boolean

可选。指示每个块是否还包含其所属部分的标题,以便从部分中间获取的块保留其上下文。

只有布局解析 (layoutParsingConfig) 才能检测到标题。对于数字解析和纯文本文件,此设置没有任何影响。

如果未设置,则默认为 false。

PageSegmentationConfig

此类型没有字段。

非结构化文档的页面分割配置。细分受众群是在页面级生成的。

与数字解析搭配使用。使用 layoutParsingConfig 时,PDF 文件无法导入,而 Word、PowerPoint 和 Excel 文件则会被拆分为多个块。

UnstructuredParsingConfig

应用于特定类型非结构化文档解析器的相关配置。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "digitalParsingConfig": {
    object (DigitalParsingConfig)
  },
  "layoutParsingConfig": {
    object (LayoutParsingConfig)
  }
  // End of mutually exclusive fields.
}
字段
必需。必须选择一种解析模式。这样可以隔离配置,使用户无法设置不适用于其所选模式的字段。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
digitalParsingConfig

object (DigitalParsingConfig)

数字(原生文本提取)解析。

layoutParsingConfig

object (LayoutParsingConfig)

布局感知型解析。

互斥字段结束。

DigitalParsingConfig

此类型没有字段。

非结构化文档的数字解析配置。提取存储在文件中的文本,不进行 OCR 或布局检测:仅出现在图片中的文本不会被提取,标题和表格也不会被检测到。

LayoutParsingConfig

此类型没有字段。

非结构化文档的布局解析配置。检测文档的结构(例如标题和表格),并对 PDF 文件运行 OCR。includeAncestorHeadings 必须有效果,并且需要 MULTIMODAL 嵌入。

UnstructuredEmbeddingConfig

配置如何为非结构化文档模态生成每个片段的嵌入。

JSON 表示法
{
  "mode": enum (EmbeddingMode)
}
字段
mode

enum (EmbeddingMode)

可选。控制片段嵌入的计算依据。默认值为 TEXT。

EmbeddingMode

片段的嵌入是根据什么计算得出的。

枚举
EMBEDDING_MODE_UNSPECIFIED 未指定。视为 TEXT。
TEXT 仅限文本。从文档中提取的图片不会对嵌入做出贡献。默认值。

州

数据存储区的状态。

枚举
STATE_UNSPECIFIED 默认值。如果省略州/省/自治区/直辖市,则使用此值。
CREATING 正在创建 DataStore。
ACTIVE DataStore 已可供使用。
DELETING 正在删除数据存储区。

DocumentMetadataSchema

DataStore 中文档的用户定义元数据的架构。

JSON 表示法
{
  "schema": {
    object
  }
}
字段
schema

object (Struct format)

可选。文档元数据的 JSON 架构。系统会根据 JSON 架构草稿 7 验证该架构。

属性名称只能包含字母、数字、_ 和 -,并且不得以任何字母大小写的 google 开头;该前缀为预留前缀。properties 中不支持 additionalProperties 关键字。

方法

create

在给定的项目和位置中创建新 DataStore。

delete

删除单个 DataStore。

get

获取单个 DataStore 的详细信息。

importDocuments

启动长时间运行的操作,以将文档导入数据存储区。

list

列出给定项目和位置中的 DataStore。

patch

更新单个 DataStore 的参数。

purgeDocuments

启动一项长时间运行的操作,以从 DataStore 中清除文档。