更新时间:2024-08-27 GMT+08:00
分享

修改知识库配置

功能介绍

修改知识库配置。

包括:

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

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

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

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

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

URI

PUT /v1/koosearch/repos/{repo_id}

表1 路径参数

参数

是否必选

参数类型

描述

repo_id

String

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

获取方式:

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

最小长度:1

最大长度:64

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

最小长度:1

最大长度:1000000

表3 请求Body参数

参数

是否必选

参数类型

描述

top_k

Integer

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

最小值:10

最大值:500

reference_count

Integer

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

最小值:1

最大值:10

rerank_enabled

Boolean

rerank开关,包含【打开、关闭】两个状态 “打开”状态下,召回的top_k结果会使用rerank模型进行重排序 “关闭”状态下,召回的top_k结果不会进行重排序

query_rewrite_enabled

Boolean

是否使用改写结果搜索

search_plan_category_ids

Array of strings

搜索规划category类型配置 default.category.list[0].id=talk default.category.list[0].category=闲聊类 default.category.list[0].locale=zh

default.category.list[1].id=language_task default.category.list[1].category=语言任务类 default.category.list[1].locale=zh

default.category.list[2].id=human default.category.list[2].category=人设类 default.category.list[2].locale=zh

default.category.list[3].id=common default.category.list[3].category=通用知识类 default.category.list[3].locale=zh

default.category.list[4].id=special_knowledge default.category.list[4].category=行业知识类 default.category.list[4].locale=zh

最小长度:0

最大长度:10

数组长度:0 - 10

file_extract

FileExtract object

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

rerank_model

String

rerank模型名称

最小长度:1

最大长度:32

pangu_nlp_model

String

nlp大模型名称

最小长度: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

是否开启图文并茂

extend_config

KnowledgeRepoExtendConfig object

知识库扩展配置

tags

Array of TagInfo objects

标签列表

数组长度:0 - 10

refs

String

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

最小长度:0

最大长度:1024

name

String

知识库名称

最小长度:1

最大长度:64

search_plan_model

String

search_plan模型名称

最小长度:1

最大长度:32

表4 FileExtract

参数

是否必选

参数类型

描述

parse_conf

ParseConf object

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

split_conf

SplitConf object

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

表5 ParseConf

参数

是否必选

参数类型

描述

ocr_enabled

Boolean

ocr增强

缺省值:false

image_enabled

Boolean

图片解析

缺省值:false

header_footer_enabled

Boolean

解析页眉页脚

缺省值:false

catalog_enabled

Boolean

解析目录页

缺省值:false

image_conf

String

图片解析开启后(TEXT 提取图片文本、IMAGE 保留原图)

缺省值:TEXT

枚举值:

  • TEXT

  • IMAGE

表6 SplitConf

参数

是否必选

参数类型

描述

split_mode

String

分段设置/层级解析模型

  • LENGTH-长度拆分,即为字数拆分

  • CATALOG-层级分段下的自动解析

  • RULE- 层级分段下的规则解析

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

缺省值:AUTO

枚举值:

  • LENGTH

  • CATALOG

  • RULE

  • AUTO

separator_ids

Array of strings

分段标识符ID列表

文件解析分类

default.separator.list[0].id=space_en default.separator.list[0].separator=\u0020 default.separator.list[0].locale=en

default.separator.list[1].id=period_zh default.separator.list[1].separator=。 default.separator.list[1].locale=zh

default.separator.list[2].id=period_en default.separator.list[2].separator=. default.separator.list[2].locale=en

default.separator.list[3].id=exclamation_mark_zh default.separator.list[3].separator=! default.separator.list[3].locale=zh

default.separator.list[4].id=exclamation_mark_en default.separator.list[4].separator=! default.separator.list[4].locale=en

default.separator.list[5].id=question_mark_zh default.separator.list[5].separator=? default.separator.list[5].locale=zh

default.separator.list[6].id=question_mark_en default.separator.list[6].separator=? default.separator.list[6].locale=en

default.separator.list[7].id=comma_zh default.separator.list[7].separator=, default.separator.list[7].locale=zh

default.separator.list[8].id=comma_en default.separator.list[8].separator=, default.separator.list[8].locale=en

最小长度:1

最大长度:128

数组长度:1 - 100

rule_regex_id

String

用户定义解析规则ID

最小长度:1

最大长度:256

chunk_size

Integer

分段预计长度

最小值:0

最大值:6000

缺省值:500

title_level

Integer

标题层级深度

最小值:1

最大值:10

缺省值:3

combine_title

Boolean

false 保留最后一级 true 保存多标题组合

缺省值:false

merge_titles

Boolean

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

表7 SessionConfig

参数

是否必选

参数类型

描述

similarity_threshold

Float

命中相似度阈值

最小值:0.1

最大值:1.0

answer_select_policy

String

缓存命中选择策略 FIRST:选择第一个命中 RANDOM:随机选择

枚举值:

  • FIRST

  • RANDOM

eviction

Eviction object

缓存过期策略

model_name

String

query2query模型名称

最小长度:1

最大长度:32

表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 < 阈值的清除

最小长度:1

最大长度:100

枚举值:

  • LRU

  • FIFO

  • LFU

ttl

Long

缓存过期时间 毫秒

最小值:0

最大值:31536000000

hit_count_threshold

Long

缓存命中次数阈值

最小值:1

最大值:10000

表9 KnowledgeRepoExtendConfig

参数

是否必选

参数类型

描述

extend_context

Boolean

是否扩展长上下文。提供更广泛的上下文,以生成完整回答。

缺省值:false

effective_input_length

Integer

效果最好的上下文长度,与模型相关,确保输入令牌的有效长度以保证最佳输出 考虑到多轮对话,建议控制在模型上下文长度的60%(向上取整)。

最小值:2

最大值:128

top_p

Float

通过限制词汇的选择来控制生成文本的多样性。值越高,候选单词越多,文本多样性越高。

最小值:0.1

最大值:1

缺省值:0.1

max_tokens

Integer

模型生成最大新词数

最小值:1

最大值:131072

缺省值:131072

chat_temperature

Float

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

最小值:0

最大值:1

search_temperature

Float

搜索增强模型生成多样性

最小值:0

最大值:1

缺省值:0.3

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

表10 TagInfo

参数

是否必选

参数类型

描述

tag_key

String

tag key

最小长度:1

最大长度:128

tag_value

String

tag value

最小长度:1

最大长度:128

响应参数

状态码: 200

表11 响应Body参数

参数

参数类型

描述

repo_id

String

知识库ID

最小长度:1

最大长度:64

状态码: 400

表12 响应Body参数

参数

参数类型

描述

error_code

String

错误码

最小长度:8

最大长度:36

error_msg

String

错误描述

最小长度:2

最大长度:512

状态码: 500

表13 响应Body参数

参数

参数类型

描述

error_code

String

错误码

最小长度:8

最大长度:36

error_msg

String

错误描述

最小长度:2

最大长度:512

请求示例

/v1/koosearch/repos/v22cca08-a83b-4518-8abf-0666ab5d635a

{
  "rerank_model" : "string",
  "pangu_nlp_model" : "string",
  "file_extract" : {
    "parse_conf" : {
      "ocr_enabled" : false,
      "image_enabled" : false,
      "header_footer_enabled" : false,
      "catalog_enabled" : false,
      "image_conf" : "TEXT"
    },
    "split_conf" : {
      "split_mode" : "AUTO",
      "separator_ids" : [ ],
      "rule_regex_id" : "string",
      "chunk_size" : 6000,
      "title_level" : 3,
      "combine_title" : true
    }
  },
  "search_plan_category_ids" : [ "string" ],
  "rerank_enabled" : true,
  "top_k" : 500,
  "reference_count" : 10,
  "query_rewrite_enabled" : true
}

响应示例

状态码: 200

知识库ID

{
  "repo_id" : "1235abc"
}

状态码

状态码

描述

200

知识库ID

400

请求体参数错误

500

内部异常

错误码

请参见错误码

相关文档