获取知识库设置
1 min read
get/knowledge-fs/spaces/{knowledge_base_id}/settings
Request example
curl --request GET \
--url https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings"
headers = {
"Authorization": "Bearer <token>",
}
response = requests.request("GET", url, headers=headers)
print(response.text)const response = await fetch('https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings', {
method: 'GET',
headers: {
'Authorization': 'Bearer <token>'
}
});
const data = await response.json();
console.log(data);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer <token>',
],
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;package main
import (
"fmt"
"io"
"net/http"
)
func main() {
url := "https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings"))
.header("Authorization", "Bearer <token>")
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());require 'uri'
require 'net/http'
url = URI('https://api.dify.ai/v1/knowledge-fs/spaces/{knowledge_base_id}/settings')
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = url.scheme == 'https'
request = Net::HTTP::Get.new(url)
request['Authorization'] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyResponse
{
"active_profile_available": false,
"active_profile_revisions": {
"embedding": null,
"retrieval": null
},
"capabilities": {
"deep": false,
"index": false,
"ingest": false,
"query": false,
"research": false,
"source_sync": false
},
"configuration_state": "setup-required",
"embedding": null,
"issues": [
{
"code": "missing",
"field": "embedding",
"retryable": false
},
{
"code": "missing",
"field": "reasoning",
"retryable": false
},
{
"code": "missing",
"field": "rerank",
"retryable": false
}
],
"retrieval": null,
"revision": 1
}{
"active_profile_available": true,
"active_profile_revisions": {
"embedding": 2,
"retrieval": 3
},
"capabilities": {
"deep": true,
"index": true,
"ingest": true,
"query": true,
"research": true,
"source_sync": true
},
"configuration_state": "active",
"embedding": {
"dimension": 1536,
"model": "text-embedding-3-small",
"plugin_id": "langgenius/openai",
"provider": "openai",
"revision": 2,
"vector_space_id": "embedding-space-sha256:4f7c2d9a1b3e5f60718293a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4"
},
"issues": [],
"retrieval": {
"default_mode": "fast",
"reasoning_model": {
"dimension": null,
"model": "gpt-4.1-mini",
"plugin_id": "langgenius/openai",
"provider": "openai",
"revision": null,
"vector_space_id": null
},
"rerank": {
"enabled": true,
"model": {
"model": "rerank-v3.5",
"pluginId": "langgenius/cohere",
"provider": "cohere"
}
},
"revision": 3,
"score_threshold": {
"enabled": false,
"stage": "mode-final",
"value": null
},
"top_k": 10
},
"revision": 7
}{
"code": "knowledge_fs_invalid_credential",
"message": "Invalid Agent Knowledge Base service credential.",
"status": 401
}{
"code": "unauthorized",
"message": "Authorization header must be provided and start with 'Bearer'",
"status": 401
}{
"code": "unauthorized",
"message": "Access token is invalid",
"status": 401
}{
"code": "forbidden",
"message": "Sorry, you have reached the knowledge base request rate limit of your subscription.",
"status": 403
}{
"code": "knowledge_fs_access_denied",
"message": "Agent Knowledge Base operation is not allowed.",
"status": 403
}{
"code": "knowledge_fs_resource_not_found",
"failure": {
"category": "not_found",
"code": "KNOWLEDGE_FS_NOT_FOUND",
"message": "The requested Agent Knowledge Base resource was not found.",
"retryPolicy": "never",
"traceId": "9b7d3e1a-4c2f-4a8e-b6d0-5f1e2c3d4a5b"
},
"message": "The requested Agent Knowledge Base resource was not found.",
"status": 404
}{
"code": "not_found",
"message": "The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.",
"status": 404
}{
"code": "knowledge_fs_upstream_unavailable",
"message": "Agent Knowledge Base is unavailable.",
"status": 502
}{
"code": "knowledge_fs_upstream_unavailable",
"failure": {
"action": "contact_admin",
"category": "internal",
"code": "KNOWLEDGE_FS_INTERNAL_ERROR",
"message": "Agent Knowledge Base could not complete the operation. Try again, or contact an administrator with the error reference.",
"retryPolicy": "manual",
"traceId": "9b7d3e1a-4c2f-4a8e-b6d0-5f1e2c3d4a5b"
},
"message": "Agent Knowledge Base could not complete the operation. Try again, or contact an administrator with the error reference.",
"status": 502
}{
"code": "knowledge_fs_operation_unavailable",
"message": "Agent Knowledge Base operation is not available.",
"status": 503
}{
"code": "knowledge_fs_operation_unavailable",
"failure": {
"action": "retry",
"category": "dependency",
"code": "KNOWLEDGE_FS_UNAVAILABLE",
"message": "A service required by Agent Knowledge Base is temporarily unavailable.",
"retryPolicy": "manual",
"traceId": "5e2a9c17-3b4d-4f60-8a1b-2c3d4e5f6a7b"
},
"message": "A service required by Agent Knowledge Base is temporarily unavailable.",
"status": 503
}get/knowledge-fs/spaces/{knowledge_base_id}/settings
Authorization
Path parameters
知识库 ID:即知识库 API 访问 对话框中所示服务 API 端点的最后一段(
…/knowledge-fs/spaces/<knowledge base ID>),也是地址栏中 /datasets/new/ 之后的那一段。Responses
application/json
知识库的设置。
嵌入模型和检索设置均已生效时为
true,首个文档完成索引后即会如此。已生效模型的修订版本。首个文档完成索引前均为
null。配置生效后,通过 更新知识库设置 进行的更改会作为设置迁移执行。已发布设置的就绪情况。其中三个标志对应检索深度,query 对应 fast。
要检查某一深度是否就绪,显式传入该深度作为 mode,并查看对应的标志。查询未指定 mode 时,不要根据待生效的 retrieval.default_mode 判断其深度。
已存储嵌入模型和完整的检索设置(含已启用的重排序模型)时为
active,缺少任一项时为 setup-required,首个文档索引期间待生效设置未通过校验时为 validation-failed。issues 列出未通过的设置项。嵌入模型。若已存储待生效的选择,返回该选择,否则返回已生效的模型。待生效的选择可能与当前查询所用的模型不同。未设置时为 null。
其中的 dimension、revision 和 vector_space_id 仅供参考,没有任何操作接收这些值。
导致知识库未就绪的问题。没有问题时为空。
Show child attributesHide child attributes
该设置项的问题:
missing:未选择,或未启用重排序。validation_failed、unavailable或incompatible:待生效设置未通过校验。遇到incompatible时,检查模型支持的任务、嵌入维度,以及供应商是否返回了所选模型。binding_missing:已发布的内容尚未准备好使用所配置的模型。可在 Dify 中查看索引进度。publication项为unavailable:已发布的内容尚未对所有深度就绪。
涉及的设置项:
embedding、reasoning、rerank 或 publication(已发布的内容)。是否无需更改设置,只需等待并重试即可解决该问题。
检索设置。若已存储待生效的选择,返回该选择,否则返回已生效的设置。待生效的选择可能与当前查询所用的设置不同。未设置时为
null。Show child attributesHide child attributes
返回的检索设置中的默认深度:
fast、deep 或 research。查询未指定 mode 时使用已发布的默认值;如果返回的是待生效设置,该默认值可能与此值不同。系统推理模型。其
dimension、revision 和 vector_space_id 始终为 null。重排序模型。其
model 对象使用 camelCase 键 pluginId,与此响应的其余部分不同。已生效检索设置的修订版本。设置待生效期间为
null。分数阈值,用于舍弃得分较低的分段。
每次检索最多返回的分段数。