OpenAI 创建向量存储文件接口

2026-11-10 18:23 更新

创建向量存储文件

post /vector_stores/{vector_store_id}/files

通过将File附加到向量存储,创建向量存储文件。

路径参数

  • vector_store_id: string:此请求涉及的向量存储 ID。

请求体参数

媒体类型为 application/json。

  • file_id: string:此请求涉及的文件 ID。

向量存储应使用的File ID,适用于file_search等可访问文件的工具。摄取多个文件时,建议使用file_batches,以尽量减少对每个向量存储的写请求。

  • attributes: optional map[string or number or boolean] or null

可附加到对象的一组16个键值对,可用于以结构化格式保存额外信息,并通过API或控制台查询对象。键为最长64个字符的字符串;值可以是最长512个字符的字符串、布尔值或数字。

  • string(最长 512 个字符)

  • number

  • boolean

  • chunking_strategy: optional FileChunkingStrategyParam

用于对文件分块的策略。未设置时使用auto策略。

  • AutoFileChunkingStrategyParam object { type }

默认策略。目前使用max_chunk_size_tokens为800、chunk_overlap_tokens为400的设置。

  • type: "auto"

固定为auto。

  • "auto"

  • StaticFileChunkingStrategyObjectParam object { static, type }

通过设置块大小和重叠量,自定义分块策略。

  • static: StaticFileChunkingStrategy

  • chunk_overlap_tokens: integer

相邻块之间重叠的词元数,默认值为400。

注意,重叠量不能超过max_chunk_size_tokens的一半。

  • max_chunk_size_tokens: integer(范围为 100 至 4096)

每个块的最大词元数,默认值为800,最小值为100,最大值为4096。

  • type: "static"

固定为static。

  • "static"

返回值

  • VectorStoreFile object { id, created_at, last_error, 6 more }

附加到向量存储的文件列表。

  • id: string

标识符,可在API端点中引用。

  • created_at: integer(Unix 时间戳)

向量存储文件创建时的Unix时间戳,单位为秒。

  • last_error: object { code, message } or null

与此向量存储文件关联的最近一次错误。没有错误时为null。

  • code: "server_error" or "unsupported_file" or "invalid_file"

可为server_error、unsupported_file或invalid_file。

  • "server_error"

  • "unsupported_file"

  • "invalid_file"

  • message: string

供人阅读的错误描述。

  • object: "vector_store.file"

对象类型,固定为vector_store.file。

  • "vector_store.file"

  • status: "in_progress" or "completed" or "cancelled" or "failed"

向量存储文件的状态,可为in_progress、completed、cancelled或failed。completed表示该向量存储文件已可使用。

  • "in_progress"

  • "completed"

  • "cancelled"

  • "failed"

  • usage_bytes: integer

向量存储总用量,单位为字节。注意,此值可能与原始文件大小不同。

  • vector_store_id: string

File所附加到的向量存储的ID。

  • attributes: optional map[string or number or boolean] or null

可附加到对象的一组16个键值对,可用于以结构化格式保存额外信息,并通过API或控制台查询对象。键为最长64个字符的字符串;值可以是最长512个字符的字符串、布尔值或数字。

  • string(最长 512 个字符)

  • number

  • boolean

  • chunking_strategy: optional StaticFileChunkingStrategyObject or OtherFileChunkingStrategyObject

用于对文件分块的策略。

  • StaticFileChunkingStrategyObject object { static, type }

  • static: StaticFileChunkingStrategy

  • chunk_overlap_tokens: integer

相邻块之间重叠的词元数,默认值为400。

注意,重叠量不能超过max_chunk_size_tokens的一半。

  • max_chunk_size_tokens: integer(范围为 100 至 4096)

每个块的最大词元数,默认值为800,最小值为100,最大值为4096。

  • type: "static"

固定为static。

  • "static"

  • OtherFileChunkingStrategyObject object { type }

分块策略未知时返回此类型。通常是因为文件在API引入chunking_strategy概念之前就已建立索引。

  • type: "other"

固定为other。

  • "other"

示例

## [中文] 发送POST请求;将示例API凭证及资源标识替换为应用使用的值。
curl https://api.openai.com/v1/vector_stores/$VECTOR_STORE_ID/files \
    -H 'Content-Type: application/json' \
    -H 'OpenAI-Beta: assistants=v2' \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -d '{
          "file_id": "file_id"
        }'

响应

中文说明:以下为原文配置、命令或事件示例,字段名、枚举、标识符及数值保留。

{
  "id": "id",
  "created_at": 0,
  "last_error": {
    "code": "server_error",
    "message": "message"
  },
  "object": "vector_store.file",
  "status": "in_progress",
  "usage_bytes": 0,
  "vector_store_id": "vector_store_id",
  "attributes": {
    "foo": "string"
  },
  "chunking_strategy": {
    "static": {
      "chunk_overlap_tokens": 0,
      "max_chunk_size_tokens": 100
    },
    "type": "static"
  }
}

示例

## [中文] 发送POST请求;将示例API凭证及资源标识替换为应用使用的值。
curl https://api.openai.com/v1/vector_stores/vs_abc123/files \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -H "Content-Type: application/json" \
    -H "OpenAI-Beta: assistants=v2" \
    -d '{
      "file_id": "file-abc123"
    }'

响应

中文说明:以下为原文配置、命令或事件示例,字段名、枚举、标识符及数值保留。

{
  "id": "file-abc123",
  "object": "vector_store.file",
  "created_at": 1699061776,
  "usage_bytes": 1234,
  "vector_store_id": "vs_abcd",
  "status": "completed",
  "last_error": null
}
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号