更新时间:2025-07-22 GMT+08:00
分享

修改知识库配置

功能介绍

修改知识库配置。

包括:

  • 解析设置:是否使用OCR增强、是否需要解析图片、是否需要解析页眉页脚、是否需要解析目录页

  • 文档拆分设置:自动分段、长度分段(按文本长度分段)、层级分段(按小标题分段,可自定义小标题解析规则)

  • 搜索模型设置:rerank模型配置

  • NLP模型设置:生成模型选择

  • 其他设置:召回数量、精排开关、参考文档数量、意图分类、Query改写开关。

URI

PUT /v1/{project_id}/applications/{application_id}/uni-search/knowledge-repo/{repo_id}

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目ID,获取方法请参见获取项目ID

约束限制:

不涉及

取值范围:

1~64个字符,只能包含数字、字母、中划线和下划线,且必须以字母开头。

默认取值:

不涉及

application_id

String

参数解释:

应用ID,获取方法请参见获取应用ID

约束限制:

字符串

取值范围:

1~64个字符,只能包含数字、字母、中划线和下划线,且必须以字母开头。

默认取值:

不涉及

repo_id

String

参数解释:

知识库ID。

获取方式:

账号登录KooSearch体验平台,在左侧导航栏选择:"知识库管理" ,在此界面获取"知识库ID"字段的值,表示该知识库在向量数据库中存储的ID,具有唯一性。

约束限制:

不涉及

取值范围:

1~64个字符,只能包含数字、字母、中划线和下划线。

默认取值:

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

接口鉴权使用的Token,Token获取方式参考:获取IAM用户Token

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

id

String

参数解释:

知识库id。

约束限制:

不涉及

取值范围:

1-64个字符。

默认取值:

不涉及

name

String

参数解释:

知识库名称。

约束限制:

不涉及

取值范围:

只允许输入的字符串以字母、数字或中文字符开头,后续可以是字母、数字、中文字符或下划线,长度不超过64个字符。

默认取值:

不涉及

top_k

Integer

参数解释:

top_k配置。top_k指召回前k条与query相关的片段。

约束限制:

不涉及

取值范围:

10-500

默认取值:

不涉及

reference_count

Integer

参数解释:

参考文档数量。参考文档指最终和query一起输入给NLP模型,用于生成最终答案的文档。

约束限制:

不涉及

取值范围:

1-50

默认取值:

不涉及

rerank_enabled

Boolean

参数解释:

rerank开关,包含【打开、关闭】两个状态

“打开”状态下,召回的top_k结果会使用rerank模型进行重排序

“关闭”状态下,召回的top_k结果不会进行重排序。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

query_rewrite_enabled

Boolean

参数解释:

是否使用改写结果搜索。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

search_plan_category_ids

Array of strings

参数解释:

搜索规划category类型配置, 列表的最大长度为10, 列表中的元素是长度不超过64的字符串

约束限制:

不涉及

取值范围:

列表长度限制10,

可选值如下:

  • professional_knowledge-medical - 行业知识类-医疗,

  • weather - 天气类,

  • professional_knowledge - 行业知识类,

  • professional_knowledge-manufacturing - 行业知识类-制造,

  • chitchat -闲聊类,

  • language_tasks - 语言任务类,

  • professional_knowledge-finance -行业知识类-金融,

  • general_knowledge -通用知识类,

  • professional_knowledge-government - 行业知识类-政务,

  • identity - 人设类。

默认取值:

不涉及

file_extract

FileExtract object

参数解释:

文档解析整体配置,包含文档解析使用哪些组件、文档拆分规则。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

rerank_model

String

参数解释:

rerank模型名称。

约束限制:

不涉及

取值范围:

只能包含1到32位英文字母、中文、数字、中划线或者下划线,并且以字母、数字或者中文开头。

默认取值:

不涉及

search_plan_model

String

参数解释:

search_plan模型名称。

约束限制:

不涉及

取值范围:

只能包含1到32位英文字母、中文、数字、中划线或者下划线,并且以字母、数字或者中文开头。

默认取值:

不涉及

pangu_nlp_model

String

参数解释:

nlp大模型名称。

约束限制:

不涉及

取值范围:

只能包含1到32位英文字母、中文、数字、中划线或者下划线,并且以字母、数字或者中文开头。

默认取值:

不涉及

mllm_model

String

参数解释:

多模态大模型名称。

约束限制:

不涉及

取值范围:

只能包含1到32位英文字母、中文、数字、中划线或者下划线,并且以字母、数字或者中文开头。

默认取值:

不涉及

search_threshold

Float

参数解释:

搜索接口过滤的阈值。

约束限制:

精排关闭时,阈值为0-200

精排打开时,阈值为0-1。

取值范围:

0-200

默认取值:

不涉及

chat_ref_threshold

Float

参数解释:

参考文档过滤的阈值。

约束限制:

精排关闭时,阈值为0-200,

精排打开时,阈值为0-1。

取值范围:

0-200

默认取值:

不涉及

faq_threshold

Float

参数解释:

FAQ直出阈值:超过阈值的FAQ会作为答案直接输出,不需要经过大模型总结。

约束限制:

1.参数值小于等于0时,表示FAQ不直出

2.旧版本query2doc,精排关闭时,阈值为0-200,精排打开时,阈值为0-1

3.新版本query2query,阈值为0-1。

取值范围:

0-200

默认取值:

不涉及

cache_enabled

Boolean

参数解释:

是否开启缓存。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

session_config

SessionConfig object

参数解释:

缓存策略。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

answer_reference_enabled

Boolean

参数解释:

是否开启引用。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

answer_image_reference_enabled

Boolean

参数解释:

是否开启图文并茂。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

refs

String

参数解释:

引用知识库标识列表,以逗号分隔。

约束限制:

不涉及

取值范围:

长度限制1024字符

默认取值:

不涉及

tags

Array of TagInfo objects

参数解释:

标签列表。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

extend_config

KnowledgeRepoExtendConfig object

参数解释:

知识库扩展配置。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

prompt_info

KnowledgeRepoPromptInfo object

参数解释:

知识库关联的提示词信息。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

table_rag_enabled

Boolean

参数解释:

是否开启tableRAG功能。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表4 FileExtract

参数

是否必选

参数类型

描述

parse_conf

ParseConf object

参数解释:

文档解析配置,包含是否使用OCR增强、是否解析图片、解析图片是否需要提取文字、是否解析页眉页脚、是否解析目录页。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

split_conf

SplitConf object

参数解释:

拆分配置,包括分段方式设置、层级解析模式设置、标题层级深度设置、标题保存方式设置、分段长度配置、标题匹配pattern配置等。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表5 ParseConf

参数

是否必选

参数类型

描述

ocr_enabled

Boolean

参数解释:

ocr增强。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

mllm_model

String

参数解释:

多模态模型名称。

约束限制:

必须是平台上配置的mllm_plan模型。平台上配置的模型可以通过ListModels接口查看。

取值范围:

只能包含1到32位英文字母、中文、数字、中划线或者下划线,并且以字母、数字或者中文开头。

默认值:

不涉及

image_enabled

Boolean

参数解释:

图片解析。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

header_footer_enabled

Boolean

参数解释:

解析页眉页脚。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

catalog_enabled

Boolean

参数解释:

解析目录页。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

image_conf

String

参数解释:

图片解析开启(image_enable为True)时,使用的图片解析方式。

约束限制:

当需要使用图文并茂返回答案时,必须使用IMAGE模式,保留原图。

取值范围:

  • TEXT 提取图片文本

  • IMAGE 保留原图

  • IMAGE_TEXT,解析文本和保留原图

默认取值:

TEXT

footnote_enabled

Boolean

参数解释:

解析脚注尾注。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

表6 SplitConf

参数

是否必选

参数类型

描述

split_mode

String

参数解释:

文档切分的模式选择。

取值范围:

枚举值:

  • AUTO- 自动拆分,自动识别文档格式匹配适合的拆分解析方式。

  • LENGTH-按长度拆分,例如每500字分一段。

  • CATALOG-层级分段下-自动解析。自动识别文章的层级结构,按照文章的层级结构分片。例如1.1.2章节为一个分片,1.1.3章节为一个分片。

  • RULE- 层级分段下-规则解析。自定义层级标题的匹配规则,并依据自定义的规则进行章节匹配、切分。

约束限制:

不涉及

默认取值:

AUTO

separator_ids

Array of strings

参数解释:

自动分段和长度分段模式下的,分段标识符ID列表。

分段标识符:用于决定分片切片时的结束符。

约束条件:

不涉及

取值范围:

取值映射:

  • period_zh: "中文句号 。",

  • period_en: "英文句号 .",

  • exclamation_mark_zh: "中文叹号 !",

  • exclamation_mark_en: "英文叹号 !",

  • question_mark_zh: "中文问号 ?",

  • question_mark_en: "英文问号 ?",

  • question_mark_ar: "阿语问号 ؟",

  • comma_zh: "中文逗号 ,",

  • comma_en: "英文逗号 ,",

  • space_en: "空格"

默认取值:

{"period_zh", "period_en", "exclamation_mark_zh", "exclamation_mark_en", "question_mark_zh", "question_mark_en"}

rule_regex_id

String

参数解释:

用户定义解析规则ID。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

chunk_size

Integer

参数解释:

文档分段切片的最大长度。文档切片时根据该最大长度进行切片。

约束限制:

不涉及

取值范围:

0-6000

默认取值:

500

title_level

Integer

参数解释:

分片保留的标题层级深度。

例如:

深度为3时:当前段落为1.1.3,父标题1.1 和 父标题1 均会保留。

深度为2时:当前段落为1.1.3,父标题1.1 保留,父标题1 舍弃。

约束限制:

不涉及

取值范围:

1-10

默认取值:

3

combine_title

Boolean

参数解释:

是否保留层级标题组合。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

merge_titles

Boolean

参数解释:

是否跨标题合并,不同标题段落文字较少时,会自动合并到指定的分段长度,有助于生成更全面的结果。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

rule_regexs

Array of strings

参数解释:

用户定义解析规则。

约束限制:

不涉及

取值范围:

列表长度限制1-100。

默认取值:

不涉及

merge_last_chunk

Boolean

参数解释:

是否合并最近修改的分段。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表7 SessionConfig

参数

是否必选

参数类型

描述

similarity_threshold

Float

参数解释:

命中缓存问题的query2query相似度阈值。阈值设置的越高,query和缓存问题的相似程度要求就越高。

约束限制:

不涉及

取值范围:

0.1 ~ 1.0

默认取值:

0.9

answer_select_policy

String

参数解释:

缓存命中选择策略。

约束限制:

不涉及

取值范围:

枚举值:

  • FIRST:在匹配到的结果中选择分数最高的作为答案。

  • RANDOM:在匹配到的结果中随机选择一个作为答案。

默认取值:

不涉及

eviction

Eviction object

参数解释:

缓存过期策略。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

model_name

String

参数解释:

缓存命中时,使用的query2query模型名称,用于计算新query和缓存query的相似度。

约束限制:

不涉及

取值范围:

1-64个字符。

默认取值:

不涉及

表8 Eviction

参数

是否必选

参数类型

描述

policy

String

参数解释:

缓存过期策略。

约束限制:

不涉及

取值范围:

枚举值:

  • LRU:(Least Recently Used) now - accessTime > ttl 清除

  • FIFO:(First In First Out) now - createTime > ttl 清除

  • LFU:(Least Frequency Used)hit_count < 阈值清除。

默认取值:

不涉及

ttl

Long

参数解释:

缓存过期时间 毫秒。

约束限制:

不涉及

取值范围:

0-31536000000

默认取值:

不涉及

hit_count_threshold

Long

参数解释:

缓存命中次数阈值。

约束限制:

不涉及

取值范围:

1-10000

默认取值:

不涉及

表9 TagInfo

参数

是否必选

参数类型

描述

tag_key

String

参数解释:

知识库标签关键字。

约束限制:

不涉及

取值范围:

1-128个字符。

默认取值:

不涉及

tag_value

String

参数解释:

知识库标签信息。

约束限制:

不涉及

取值范围:

1-128个字符。

默认取值:

不涉及

表10 KnowledgeRepoExtendConfig

参数

是否必选

参数类型

描述

extend_context

Boolean

参数解释:

扩展长上下文以生成更全面的响应,比如:

1.表格small-to-big

2.文本(1)(2)(3)的关联

3.文档摘要。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

effective_input_length

Integer

参数解释:

效果最好的上下文长度,与模型相关,确保输入令牌的有效长度以保证最佳输出

考虑到多轮对话,建议控制在模型上下文长度的60%(向上取整)。

约束限制:

不涉及

取值范围:

2-256

默认取值:

32

top_p

Float

参数解释:

一种替代温度采样的方法,称为nucleus sampling,其中模型考虑具有top_p 概率质量的标记的结果。

约束限制:

不涉及

取值范围:

0.1-1

默认取值:

0.1

max_tokens

Integer

参数解释:

生成文本的最大token数量。

输入的文本加上生成的文本总量不能超过模型所能处理的最大长度。

约束限制:

不涉及

取值范围:

1-262144

默认取值:

2048

chat_temperature

Float

参数解释:

非搜索增强模型生成多样性。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

0-1

search_temperature

Float

参数解释:

搜索增强模型生成多样性。

约束限制:

不涉及

取值范围:

0-1

默认取值:

0.6

presence_penalty

Float

参数解释:

文本重复度。

约束限制:

不涉及

取值范围:

-2 - 2

默认取值:

0

use_system_prompt

Boolean

参数解释:

是否使用系统Prompt,与盘古RAG场景Prompt标准拼接方案保持一致。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

system_prompt

String

参数解释:

系统Prompt,注意:

1.当 use_system_prompt为true时必填

2.不需要拼接query。

约束限制:

不涉及

取值范围:

0-8192

默认取值:

不涉及

qa_question_prompt

String

参数解释:

QA生成,问题生成prompt。

约束限制:

不涉及

取值范围:

0-8192

默认取值:

不涉及

qa_answer_prompt

String

参数解释:

QA生成,答案生成prompt。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

0-8192

refuse_enable

Boolean

参数解释:

拒答开关。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

refuse_answer

String

参数解释:

拒答内容设置。

约束限制:

不涉及

取值范围:

1-8192

默认取值:

不涉及

image_match_type

String

参数解释:

配图参数,context_match和reference_match、model_match可选,默认context_match。

约束限制:

不涉及

取值范围:

  • context_match

  • reference_match

  • model_match

默认取值:

context_match

custom_types

Map<String,Map<String,String>>

参数解释:

自定义结构类型。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

directory_enable

Boolean

参数解释:

目录管理开关。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

embedding_search_enable

Boolean

参数解释:

向量检索开关。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

true

keyword_search_enable

Boolean

参数解释:

关键词检索开关。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

keyword_top_k

Integer

参数解释:

关键词检索topK,取值范围0到100,默认10。

约束限制:

不涉及

取值范围:

0-100

默认取值:

10

search_engine_type

String

参数解释:

搜索引擎类型。

约束限制:

不涉及

取值范围:

枚举值:

  • search_engine:web搜索引擎。

  • ai_engine:联网增强服务。

默认取值:

不涉及

search_engine_name

String

参数解释:

搜索引擎名称。

约束限制:

不涉及

取值范围:

0-64个字符。

默认取值:

不涉及

think_model_name

String

参数解释:

深度思考模型名称。

约束限制:

不涉及

取值范围:

0-64个字符。

默认取值:

不涉及

faq_top_k

Integer

参数解释:

问答、搜索混合检索非直出FAQ topK。

约束限制:

不涉及

取值范围:

0-50

默认取值:

2

faq_similarity_threshold

Float

参数解释:

问答、搜索混合检索非直出FAQ 阈值。

约束限制:

不涉及

取值范围:

0-1

默认取值:

0.8

extract_model_name

String

参数解释:

图谱抽取模型名称。

约束限制:

不涉及

取值范围:

0-64个字符。

默认取值:

不涉及

optimize_model_name

String

参数解释:

图谱优化模型名称

约束限制:

不涉及

取值范围:

不超过64个字符。

默认取值:

不涉及

graph_search_enable

Boolean

参数解释:

是否打开图谱检索。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

graph_reference_count

Integer

参数解释:

图谱参考文档数量,打开图谱开关,问答时生效

约束限制:

不涉及

取值范围:

1-50

默认取值:

10

graph_top_k

Integer

参数解释:

图谱向量召回TopK。

约束限制:

不涉及

取值范围:

1-500

默认取值:

50

graph_keyword_top_k

Integer

参数解释:

图谱关键词召回TopK。

约束限制:

不涉及

取值范围:

1-100

默认取值:

20

graph_threshold

Float

参数解释:

图谱精排阈值。

约束限制:

不涉及

取值范围:

0-200

默认取值:

0.3

表11 KnowledgeRepoPromptInfo

参数

是否必选

参数类型

描述

prompt_id

String

参数解释:

提示词ID。

约束限制:

不涉及

取值范围:

只能包含1到64位数字、字母、中划线和下划线。

默认取值:

不涉及

qa_question_prompt_id

String

参数解释:

qa问题生成提示词ID。

约束限制:

不涉及

取值范围:

只能包含1到64位数字、字母、中划线和下划线。

默认取值:

不涉及

qa_answer_prompt_id

String

参数解释:

qa答案生成提示词ID

约束限制:

不涉及

取值范围:

只能包含1到64位数字、字母、中划线和下划线。

默认取值:

不涉及

mllm_prompt_id

String

参数解释:

mllm提示词ID。

约束限制:

不涉及

取值范围:

只能包含1到64位数字、字母、中划线和下划线。

默认取值:

不涉及

table_rag_config

String

参数解释:

表格增强相关的提示词。

包括:

chat_prompt_with_sqlresults_id:带有表格增强的问答提示词

nl2sql_prompt_id:生成sql的提示词

table_rag_prompt_id:表格问答提示词

约束限制:

不涉及

取值范围:

1-512个字符。

默认取值:

不涉及

响应参数

状态码:200

表12 响应Body参数

参数

参数类型

描述

repo_id

String

参数解释:

知识库id。

取值范围:

不涉及

状态码:400

表13 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

取值范围:

不涉及

error_msg

String

参数解释:

错误描述。

取值范围:

不涉及

状态码:500

表14 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

取值范围:

不涉及

error_msg

String

参数解释:

错误描述。

取值范围:

不涉及

请求示例

修改知识库配置。

/v1/1ed40ceefc8d40f8b884edb6a84e7768/applications/fb9731ab-7085-474f-b6c7-64473586f0f3/uni-search/knowledge-repo/5bb86225-e2ea-4404-8125-aaa3b79419ad

{
  "id" : "5bb86225-e2ea-4404-8125-aaa3b79419ad",
  "name" : "test_20250425",
  "tags" : [ ],
  "top_k" : 50,
  "rerank_enabled" : true,
  "query_rewrite_enabled" : true,
  "reference_count" : 3,
  "search_threshold" : 0,
  "rerank_model" : "rerank-zh",
  "pangu_nlp_model" : "dp-r1",
  "search_plan_model" : "search_ai_plan",
  "file_extract" : {
    "parse_conf" : {
      "ocr_enabled" : true,
      "image_enabled" : true,
      "header_footer_enabled" : false,
      "catalog_enabled" : false,
      "image_conf" : "TEXT"
    },
    "split_conf" : {
      "split_mode" : "LENGTH",
      "separator_ids" : [ "period_zh", "period_en", "exclamation_mark_zh", "exclamation_mark_en", "question_mark_zh", "question_mark_en" ],
      "chunk_size" : 500
    }
  },
  "search_plan_category_ids" : [ ],
  "cache_enabled" : true,
  "session_config" : {
    "model_name" : "embedding-zh_faq",
    "similarity_threshold" : 0.9,
    "answer_select_policy" : "first",
    "eviction" : {
      "policy" : "lru",
      "hit_count_threshold" : 1,
      "ttl" : 86400000
    }
  },
  "answer_reference_enabled" : false,
  "answer_image_reference_enabled" : false,
  "chat_ref_threshold" : 0,
  "faq_threshold" : 0.95,
  "extend_config" : {
    "extend_context" : false,
    "effective_input_length" : 3,
    "top_p" : 0.1,
    "max_tokens" : 2048,
    "chat_temperature" : 0.6,
    "search_temperature" : 0.6,
    "presence_penalty" : 0,
    "search_engine_name" : "bocha",
    "think_model_name" : "dp-r1",
    "refuse_enable" : false,
    "image_match_type" : "context_match",
    "directory_enable" : false,
    "embedding_search_enable" : true,
    "keyword_search_enable" : false,
    "keyword_top_k" : 10,
    "faq_top_k" : 2,
    "faq_similarity_threshold" : 0.8,
    "refuse_answer" : ""
  },
  "prompt_info" : {
    "prompt_id" : "default_chat_prompt",
    "qa_answer_prompt_id" : "default_qa_answer_prompt",
    "qa_question_prompt_id" : "default_qa_question_prompt"
  }
}

响应示例

状态码:200

修改知识库配置响应。

{
  "repo_id" : "1235abc"
}

状态码

状态码

描述

200

修改知识库配置响应。

400

请求体参数错误。

500

内部异常。

错误码

请参见错误码

相关文档