Skip to main content
PATCH
/
datasets
/
{dataset_id}
更新知识库
curl --request PATCH \
  --url https://{api_base_url}/datasets/{dataset_id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "embedding_model": "<string>",
  "embedding_model_provider": "<string>",
  "partial_member_list": [
    {
      "user_id": "<string>"
    }
  ],
  "external_retrieval_model": {
    "top_k": 123,
    "score_threshold": 123,
    "score_threshold_enabled": true
  },
  "external_knowledge_id": "<string>",
  "external_knowledge_api_id": "<string>"
}
'
import requests

url = "https://{api_base_url}/datasets/{dataset_id}"

payload = {
"name": "<string>",
"description": "<string>",
"embedding_model": "<string>",
"embedding_model_provider": "<string>",
"partial_member_list": [{ "user_id": "<string>" }],
"external_retrieval_model": {
"top_k": 123,
"score_threshold": 123,
"score_threshold_enabled": True
},
"external_knowledge_id": "<string>",
"external_knowledge_api_id": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.patch(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
embedding_model: '<string>',
embedding_model_provider: '<string>',
partial_member_list: [{user_id: '<string>'}],
external_retrieval_model: {top_k: 123, score_threshold: 123, score_threshold_enabled: true},
external_knowledge_id: '<string>',
external_knowledge_api_id: '<string>'
})
};

fetch('https://{api_base_url}/datasets/{dataset_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://{api_base_url}/datasets/{dataset_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'embedding_model' => '<string>',
'embedding_model_provider' => '<string>',
'partial_member_list' => [
[
'user_id' => '<string>'
]
],
'external_retrieval_model' => [
'top_k' => 123,
'score_threshold' => 123,
'score_threshold_enabled' => true
],
'external_knowledge_id' => '<string>',
'external_knowledge_api_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://{api_base_url}/datasets/{dataset_id}"

payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"embedding_model\": \"<string>\",\n \"embedding_model_provider\": \"<string>\",\n \"partial_member_list\": [\n {\n \"user_id\": \"<string>\"\n }\n ],\n \"external_retrieval_model\": {\n \"top_k\": 123,\n \"score_threshold\": 123,\n \"score_threshold_enabled\": true\n },\n \"external_knowledge_id\": \"<string>\",\n \"external_knowledge_api_id\": \"<string>\"\n}")

req, _ := http.NewRequest("PATCH", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.patch("https://{api_base_url}/datasets/{dataset_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"embedding_model\": \"<string>\",\n \"embedding_model_provider\": \"<string>\",\n \"partial_member_list\": [\n {\n \"user_id\": \"<string>\"\n }\n ],\n \"external_retrieval_model\": {\n \"top_k\": 123,\n \"score_threshold\": 123,\n \"score_threshold_enabled\": true\n },\n \"external_knowledge_id\": \"<string>\",\n \"external_knowledge_api_id\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://{api_base_url}/datasets/{dataset_id}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"embedding_model\": \"<string>\",\n \"embedding_model_provider\": \"<string>\",\n \"partial_member_list\": [\n {\n \"user_id\": \"<string>\"\n }\n ],\n \"external_retrieval_model\": {\n \"top_k\": 123,\n \"score_threshold\": 123,\n \"score_threshold_enabled\": true\n },\n \"external_knowledge_id\": \"<string>\",\n \"external_knowledge_api_id\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "id": "c42e2a6e-40b3-4330-96f8-f1e4d768e8c9",
  "name": "Product Documentation",
  "description": "产品 API 技术文档",
  "provider": "vendor",
  "permission": "only_me",
  "data_source_type": null,
  "indexing_technique": "high_quality",
  "app_count": 0,
  "document_count": 0,
  "word_count": 0,
  "created_by": "ad313dd6-ef04-4dd1-a5b0-c0f0b9e2e7e4",
  "author_name": "admin",
  "created_at": 1741267200,
  "updated_by": "ad313dd6-ef04-4dd1-a5b0-c0f0b9e2e7e4",
  "updated_at": 1741267200,
  "embedding_model": "text-embedding-3-small",
  "embedding_model_provider": "openai",
  "embedding_available": true,
  "retrieval_model_dict": {
    "search_method": "semantic_search",
    "reranking_enable": false,
    "reranking_mode": null,
    "reranking_model": {
      "reranking_provider_name": "",
      "reranking_model_name": ""
    },
    "weights": null,
    "top_k": 3,
    "score_threshold_enabled": false,
    "score_threshold": null
  },
  "tags": [],
  "doc_form": "text_model",
  "external_knowledge_info": null,
  "external_retrieval_model": null,
  "doc_metadata": [],
  "built_in_field_enabled": true,
  "pipeline_id": null,
  "runtime_mode": null,
  "chunk_structure": null,
  "icon_info": null,
  "summary_index_setting": null,
  "is_published": false,
  "total_documents": 0,
  "total_available_documents": 0,
  "enable_api": true,
  "is_multimodal": false,
  "maintainer": "admin",
  "partial_member_list": []
}

Authorizations

Authorization
string
header
required

API Key 认证。对于所有 API 请求,请在 Authorization HTTP 头中包含您的 API Key,并加上 Bearer 前缀。示例:Authorization: Bearer {API_KEY}强烈建议将 API Key 存储在服务端,不要在客户端共享或存储,以避免 API Key 泄漏导致严重后果。缺少或无效的 API Key 会返回 HTTP 401,错误码为 unauthorized

Path Parameters

dataset_id
string<uuid>
required

知识库 ID。

Body

application/json
name
string

知识库名称。

Required string length: 1 - 40
description
string

知识库描述。

Maximum string length: 400
indexing_technique
enum<string> | null

high_quality 使用嵌入模型进行精确搜索;economy 使用基于关键词的索引。

Available options:
high_quality,
economy
permission
enum<string>

控制谁可以访问此知识库。only_me 仅限创建者,all_team_members 授权整个工作区访问,partial_members 授权指定成员访问。

Available options:
only_me,
all_team_members,
partial_members
embedding_model
string

嵌入模型名称。使用 获取可用模型model_type=text-embedding 返回的 model 字段值。

embedding_model_provider
string

嵌入模型供应商。使用 获取可用模型model_type=text-embedding 返回的 provider 字段值。

retrieval_model
object

检索模型配置。控制查询此知识库时如何搜索和排序分段。

partial_member_list
object[]

permissionpartial_members 时有访问权限的团队成员列表。

external_retrieval_model
object

外部知识库的检索设置。

external_knowledge_id
string

外部知识库的 ID。

external_knowledge_api_id
string

外部知识库 API 连接的 ID。

Response

知识库更新成功。

id
string

知识库的唯一标识符。

name
string

知识库的显示名称。在工作区内唯一。

description
string

描述知识库用途或内容的可选文本。

provider
string

供应商类型。内部管理为 vendor,外部知识库连接为 external

permission
string

控制谁可以访问此知识库。可选值:only_meall_team_memberspartial_members

data_source_type
string

文档的数据源类型,尚未配置时为 null

indexing_technique
string

high_quality 使用嵌入模型进行精确搜索;economy 使用基于关键词的索引。

app_count
integer

当前使用该知识库的应用数量。

document_count
integer

知识库中的文档总数。

word_count
integer

所有文档的总字数。

created_by
string

创建该知识库的用户 ID。

author_name
string

创建者的显示名称。

created_at
number

创建时间戳(Unix 纪元,单位为秒)。

updated_by
string

最后更新该知识库的用户 ID。

updated_at
number

最后更新时间戳(Unix 纪元,单位为秒)。

embedding_model
string

用于索引的嵌入模型名称。

embedding_model_provider
string

嵌入模型供应商。使用 获取可用模型model_type=text-embedding 返回的 provider 字段值。

embedding_available
boolean

配置的嵌入模型当前是否可用。

retrieval_model_dict
object

知识库的检索配置。

summary_index_setting
object | null

摘要索引配置。

tags
object[]

与该知识库关联的标签。

doc_form
string

文档分块模式。text_model 表示标准文本分块,hierarchical_model 表示父子结构,qa_model 表示问答对提取。

external_knowledge_info
object | null

外部知识库的连接详情。当 providerexternal 时存在。

external_retrieval_model
object | null

外部知识库的检索设置。内部知识库时为 null

doc_metadata
object[]

知识库的元数据字段定义。

built_in_field_enabled
boolean

是否启用内置元数据字段(例如 document_nameuploader)。

pipeline_id
string | null

自定义处理流水线的 ID(如果已配置)。

runtime_mode
string | null

运行时处理模式。

chunk_structure
string | null

分段结构配置。

icon_info
object | null

知识库的图标显示配置。

is_published
boolean

知识库是否已发布。

total_documents
integer

文档总数。

total_available_documents
integer

已启用且可用的文档数量。

enable_api
boolean

该知识库是否启用 API 访问。

is_multimodal
boolean

是否启用多模态内容处理。

maintainer
string | null

知识库维护者的显示名称。未设置时为 null

partial_member_list
string[] | null

permissionpartial_members 时被授予访问权限的成员账户 ID。更新响应中始终返回;详情响应中仅当 permissionpartial_members 时返回。

Last modified on July 9, 2026