ナレッジベースを更新
ナレッジベースを更新します。リクエストボディに含まれるフィールドのみが変更されます。
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": "langgenius/openai/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
すべてのリクエストは API キーで認証します:Authorization: Bearer {API_KEY}。アプリのエンドポイントにはアプリの API キーを、ナレッジのエンドポイントにはナレッジベースの API キーを使用します(Dify API クイックスタート)。
キーはサーバーサイドで保管し、クライアントコードには決して埋め込まないでください。キーが欠落または無効なリクエストは HTTP 401(unauthorized)で失敗します。
Path Parameters
ナレッジベース ID です。ナレッジベースリストを取得 から取得します。
Body
ナレッジベース名。
1 - 40ナレッジベースの説明です。
400high_quality は埋め込みモデルを使用した精密検索、economy はキーワードベースのインデキシングです。
high_quality, economy このナレッジベースにアクセスできるユーザーを制御します。only_me は作成者のみに制限、all_team_members はワークスペース全体にアクセスを許可、partial_members は指定されたメンバーにアクセスを許可します。
only_me, all_team_members, partial_members 埋め込みモデル名です。利用可能なモデルを取得 で model_type=text-embedding を指定した際の model フィールドの値を使用します。
埋め込みモデルプロバイダーの識別子です。organization/plugin_name/provider_name の形式です(例:langgenius/openai/openai)。openai のような短縮名は langgenius/<name>/<name> に展開され、langgenius が公開したプラグインでのみ機能します。
有効な値は 利用可能なモデルを取得 で model_type=text-embedding を指定した際の provider フィールドから取得します。
検索モデルの設定です。このナレッジベースをクエリする際のチャンクの検索方法とランキング方法を制御します。
Show child attributes
Show child attributes
permission が partial_members の場合にアクセス権を持つチームメンバーのリストです。
Show child attributes
Show child attributes
外部ナレッジベースの検索設定です。
Show child attributes
Show child attributes
外部ナレッジベースの ID です。
外部ナレッジ API 接続の ID です。
Response
ナレッジベースが正常に更新されました。
ナレッジベースの一意識別子です。
ナレッジベースの表示名です。ワークスペース内で一意です。
ナレッジベースの目的または内容を説明するオプションのテキストです。
プロバイダータイプです。内部管理の場合は vendor、外部ナレッジベース接続の場合は external です。
このナレッジベースにアクセスできるユーザーを制御します。指定可能な値:only_me、all_team_members、partial_members。
ドキュメントのデータソースタイプです。まだ設定されていない場合は null です。
high_quality は埋め込みモデルを使用した精密検索、economy はキーワードベースのインデキシングです。
現在このナレッジベースを使用しているアプリケーションの数です。
ナレッジベース内のドキュメント総数です。
全ドキュメントの合計単語数です。
ナレッジベースを作成したユーザーの ID です。
作成者の表示名です。
作成タイムスタンプ(Unix エポック、秒単位)です。
ナレッジベースを最後に更新したユーザーの ID です。
最終更新タイムスタンプ(Unix エポック、秒単位)です。
インデックス作成に使用される埋め込みモデルの名前です。
埋め込みモデルプロバイダーの識別子です。organization/plugin_name/provider_name の形式です(例:langgenius/openai/openai)。以前のナレッジベースでは短縮形(例:openai)が返される場合があります。
設定された埋め込みモデルが現在利用可能かどうかです。
ナレッジベースの検索設定です。
Show child attributes
Show child attributes
サマリーインデックスの設定です。
Show child attributes
Show child attributes
このナレッジベースに関連付けられたタグです。
Show child attributes
Show child attributes
ドキュメントのチャンキングモードです。text_model は標準テキストチャンキング、hierarchical_model は親子構造、qa_model は QA ペア抽出を示します。
外部ナレッジベースの接続詳細です。provider が external の場合に存在します。
Show child attributes
Show child attributes
外部ナレッジベースの検索設定です。内部ナレッジベースの場合は null です。
Show child attributes
Show child attributes
ナレッジベースのメタデータフィールド定義です。
Show child attributes
Show child attributes
組み込みメタデータフィールド(例:document_name、uploader)が有効かどうかです。
カスタム処理パイプラインが設定されている場合のパイプライン ID です。
ランタイム処理モードです。
チャンク構造の設定です。
ナレッジベースのアイコン表示設定です。
Show child attributes
Show child attributes
ナレッジベースが公開済みかどうかです。
ドキュメントの合計数です。
有効で利用可能なドキュメントの数です。
このナレッジベースで API アクセスが有効かどうかです。
マルチモーダルコンテンツ処理が有効かどうかです。
ナレッジベースのメンテナーの表示名です。設定されていない場合は null です。
permission が partial_members の場合にアクセスを許可されたメンバーのアカウント ID です。更新レスポンスでは常に含まれ、詳細レスポンスでは permission が partial_members の場合にのみ含まれます。
Was this page helpful?
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": "langgenius/openai/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": []
}