You need to enable JavaScript to run this app.
文档中心
向量数据库VikingDB

向量数据库VikingDB

复制全文
下载 pdf
文档(Doc)
add_doc_v2
复制全文
下载 pdf
add_doc_v2
概述

add_doc_v2 用于向已创建的知识库添加文档。

请求参数
参数类型是否必传默认值参数说明
collection_nameOptional[str]否--知识库名称

project_name

Optional[str]

否

default

知识库所属项目,获取方式参考文档 API 接入与技术支持
若需要操作指定项目下的知识库,需正确配置该字段

resource_id

Optional[str]

否

--

知识库唯一 ID
可通过创建知识库接口的返回值或知识库列表接口获取
可选择直接传 resource_id,或同时传 collection_name 和 project_name 作为知识库的唯一标识

doc_id

Optional[str]

是

--

知识库下的文档唯一标识

  • 只能使用英文字母、数字、下划线_,并以英文字母或下划线开头,不能为空
  • 长度要求:[1, 128]

doc_name

Optional[str]

否

--

文档名称

  • 对于 tos 导入的方式,未传入时直接使用 tos path 下面的文档名
  • 对于 url 导入的方式,先通过 url 提取带后缀的文档名,如果没有则返回错误码 400,要求用户再传 doc_name
    格式要求:
  • 不能包含有特殊用途的字符 < > : ' " / \ | ? * 及空格
  • 长度要求:[1, 255]

doc_type

Optional[str]

否

--

上传文档的类型

  • 非结构化文档支持类型:txt, doc, docx, pdf, markdown, pptx, ppt, jpeg, png, webp, bmp, mp4, mp3, wav, aac, flac, ogg
  • .jpg 和 .jpeg 文件 doc_type 均为 jpeg
  • .markdown 和 .md 文件 doc_type 均为 markdown
  • 结构化文档支持类型:xlsx, csv, jsonl
    优先使用传入的值;若未传入,将尝试自动提取;若自动提取失败,则接口返回错误

description

Optional[str]

否

--

文档描述
描述会参与对图片的检索,如电商场景下,描述可以用于存放图片对应的详细商品说明,售卖亮点,价格等
注:

  • 暂只在 doc_type 为图片类型文档时支持,其他类型文档设置无效。
  • 长度 [0,4000]

tag_list

Optional[List[MetaItem]]

否

--

Tag 为结构体,包含:

  • field_name:标签名,类型为 string
  • 不能为 "doc_id"
  • 需对齐创建知识库时的 field_name
  • 在创建知识库时先初始化标签索引,再在上传文档时打标,以用于检索时实现标签过滤能力
  • 若需新增过滤标签,请先编辑知识库新增标签后,再进行文档打标
  • field_type:标签类型
  • 支持 "int64"、"float32"、"string"、"bool"、"list"、"date_time"、"geo_point" 类型
  • 需对齐创建知识库时的 field_type
  • field_value:标签值
  • 与 field_type 指定类型一致

uri

Optional[str]

是

--

待上传的文件 uri 链接,示例:

  • http://a/b/c.pdf
  • tos://a/b/c.pdf
path_segmentsOptional[List[str]]否--文档所在的目录路径,列表元素按目录层级顺序填写。例如:["产品文档", "V2.0", "使用手册"]
响应消息
参数类型参数说明备注
codeOptional[int]状态码
messageOptional[str]返回信息
request_idOptional[str]标识每个请求的唯一标识符
dataOptional[AddDocResponseData]AddDocResponseData

AddDocResponseData

字段类型参数说明
collection_nameOptional[str]知识库的名字
resource_idOptional[str]知识库唯一标识
projectOptional[str]项目名
doc_idOptional[str]文档唯一标识
dedup_infoOptional[DedupInfo]DedupInfo
more_infoOptional[str]更多信息

DedupInfo

字段类型参数说明
skipOptional[bool]是否跳过(去重命中)
same_doc_idsOptional[List[str]]重复的文档 id 列表
状态码说明
状态码http状态码返回信息状态码说明
0200success成功
1000001401unauthorized鉴权失败
1000002403no permission权限不足
1000003400invalid request: %s非法参数
1000005400collection not existcollection 不存在
1001002400invalid request: doc_id:xxx is duplicated with doc_ids:xxx文档内容与现有文档重复
1001010400doc num is exceed 3000000doc 数量已达限额,点击详情查看知识库配额限制
请求示例

首次使用知识库 SDK ,可参考 使用说明
本示例演示了知识库 Python SDK 中 AddDocV2 函数的基础使用方法,使用前需配置 API Key 鉴权参数。

import os

from vikingdb.knowledge import VikingKnowledge
from vikingdb.auth import APIKey
from vikingdb.knowledge.models.doc import AddDocV2Request, MetaItem

def main():
    api_key = os.getenv("VIKINGDB_API_KEY") or ""
    endpoint = "api-knowledgebase.mlp.cn-beijing.volces.com"
    region = "cn-beijing"
    
    client = VikingKnowledge(
        host=endpoint,
        region=region,
        auth=APIKey(api_key=api_key),
        scheme="https"
    )
    
    collection = client.collection(
        collection_name="<YOUR_COLLECTION_NAME>",
        project_name="default",
    )
    
    try:
        resp = collection.add_doc_v2(AddDocV2Request(
            doc_id="<YOUR_DOC_ID>",
            doc_name="Your new doc name",
            doc_type="doc",
            uri="<YOUR_DOC_LINK_URL>",
            path_prefix=["产品文档", "V2.0", "使用手册"],
            tag_list=[
                MetaItem(field_name="tag key", field_type="string", field_value="tag value")
            ]
        ))
        print(f"Response: {resp}")
    except Exception as e:
        print(f"AddDocV2 failed, err: {e}")

if __name__ == "__main__":
    main()
最近更新时间:2026.09.08 21:07:10
这个页面对您有帮助吗?
有用
有用
无用
无用