update_doc_meta 用于更新知识库上文档信息,文档 meta 信息更新会自动触发索引数据更新。
| 参数 | 子参数 | 类型 | 是否必选 | 默认值 | 参数说明 |
|---|---|---|---|---|---|
| collection_name | -- | string | 否 | -- | 知识库名称 |
project_name | -- | string | 否 | default | 知识库所属项目,获取方式参见文档 API 接入与技术支持 |
resource_id | -- | string | 否 | -- | 知识库唯一 ID |
doc_id | -- | string | 是 | -- | 待更新文档的 ID |
| meta | List[MetaItem] | 否 | -- | meta 信息 | |
| field_name | Optional[str] | 否 | -- | 要更新的字段名 | |
field_type | Optional[str] | 否 | -- | 要更新的字段类型
| |
field_value | Optional[Any] | 否 | -- | 要更新的字段值 |
| 字段 | 类型 | 参数说明 |
|---|---|---|
| code | Optional[int] | 状态码 |
| message | Optional[str] | 返回信息 |
| request_id | Optional[str] | 标识每个请求的唯一标识符 |
| data | Optional[Any] | 返回数据(通常为空) |
| 状态码 | HTTP 状态码 | 返回信息 | 状态码说明 |
|---|---|---|---|
| 0 | 200 | success | 成功 |
| 1000001 | 401 | unauthorized | 鉴权失败 |
| 1000002 | 403 | no permission | 权限不足 |
| 1000003 | 400 | invalid request:%s | 非法参数 |
| 1000005 | 400 | collection not exist | collection 不存在 |
| 1001001 | 400 | doc not exist | doc 不存在 |
首次使用知识库 SDK,可参考 使用说明
本示例演示了知识库 Python SDK 中 UpdateDocMeta 函数的基础使用方法,通过指定知识库名称、文档 ID 和元数据信息(字段名、类型、值)修改文档元数据,使用前需配置 API Key 鉴权参数。
import os from vikingdb.knowledge import VikingKnowledge from vikingdb.auth import APIKey from vikingdb.knowledge.models.doc import 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", ) doc_id = "<YOUR_DOC_ID>" meta = [ MetaItem(field_name="category", field_type="string", field_value="new_value") ] try: collection.update_doc_meta(doc_id=doc_id, meta=meta) print("UpdateDocMeta success") except Exception as e: print(f"UpdateDocMeta failed, err: {e}") if __name__ == "__main__": main()