调用本接口基于语义或关键词并行检索多个知识库,并融合返回相关文档片段。接口沿用知识库、文档、标签、权限和过期时间过滤规则。
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
kb_id | Number | 否 | 知识库ID |
kb_ids | Array | 否 | 知识库ID列表 |
doc_ids | Array | 否 | 文档标识符 |
folder_ids | Array | 否 | VeRAG目录标识符 |
question | String | 是 | 查询问题 |
similarity_threshold | Number | 否 | 相似度阈值 |
vector_similarity_weight | Number | 否 | 向量相似度权重 |
top_k | Number | 否 | 每次最多返回多少个 chunk,默认值为 100 |
size | Number | 否 | 最多返回多少个文档,默认值为 30。大部分情况下,上传的一个文件对应一个文档;多 sheet 表格时,一个 sheet 对应一个文档 |
keyword | Array | 否 | 关键词 |
label_value_ids | Array | 否 | 标签值ID |
label_values | Array | 否 | 标签值 |
llm_id | Number | 否 | 大模型ID |
stream | Boolean | 否 | 流式输出 |
enable_filters | Boolean | 否 | 启用权限/标签/过期过滤 |
enable_keyword | Boolean | 否 | 启用关键词抽取。开启后,如果 keyword 为空,则抽取关键词;否则,使用提供的 keyword |
enable_rerank | Boolean | 否 | 启用重排序 |
enable_llm_rerank | Boolean | 否 | 启用LLM重排序 |
rerank_score_threshold | Number | 否 | 重排序分数阈值 |
enable_kb_priority | Boolean | 否 | 启用知识库优先级 |
kb_priority | Object | 否 | 知识库优先级分组,详情请参见下文 kb_priority 表 |
chunk_recall_config | Object | 否 | 切片召回配置:channels + 自动构建开关,详情请参见下文 chunk_recall_config 表 |
doc_meta_recall_config | Object | 否 | 文档元信息召回配置:基于 overview/guide/keywords 做 entry_id 过滤或 chunk 加权,详情请参见下文 doc_meta_recall_config 表 |
extra | Object | 否 | 额外信息 |
rag_setting | Object | 否 | RAG 检索配置,详情请参见下文 rag_setting 表 |
include_personal_kb | Boolean | 否 | 是否同时召回当前用户个人知识库 |
personal_doc_ids | Array | 否 | 个人知识库文档标识符 |
personal_folder_ids | Array | 否 | 个人知识库文件夹标识符 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
p0 | Array | 否 | 高优先级的知识库ID |
p1 | Array | 否 | 中优先级的知识库ID |
p2 | Array | 否 | 低优先级的知识库ID |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
channels | Array | 否 | 多路召回通道;为空时若 enable_summary/enable_keywords/enable_questions 开启则自动补,详情请参见下文 channels 表 |
enable_summary | Boolean | 否 | channels 为空时自动补一路 chunk_summary 通道 |
enable_keywords | Boolean | 否 | channels 为空时控制 main 通道 keyword boost;
|
enable_questions | Boolean | 否 | channels 为空时自动补一路 chunk_questions 通道 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
name | String | 是 | 通道名称 |
keywordField | String | 否 | 关键词召回字段名(如 chunk_summary / chunk_questions / chunk_keywords) |
vectorField | String | 否 | 向量召回字段名(如 embedding / embedding_summary) |
vectorWeight | Number | 否 | 该通道向量权重 |
useChunkKeyword | Boolean | 否 |
|
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
channels | Array | 否 | 多路 doc_meta_recall 配置;为空时若 enable_overview/enable_guide 开启则自动补,详情请参见下文 channels 表 |
strategy | String | 否 | filter / weight,默认 weight |
filter_timing | String | 否 | pre / post,仅 strategy=filter 时生效 |
weight_mode | String | 否 | chunk 与 doc_meta 分数融合方式:multiply(乘法加权,默认) / linear(线性加权),仅 strategy=weight 时生效 |
doc_meta_linear_weight | Number | 否 | doc_meta 在线性融合中的权重:final = chunk_score * (1 - w) + doc_meta_score * w,仅 strategy=weight 且 weight_mode=linear 时生效 |
doc_meta_multiply_weight | Number | 否 | doc_meta 在乘法融合中的权重:final = chunk_score * (1 + doc_meta_score * w),仅 strategy=weight 且 weight_mode=multiply 时生效 |
min_confidence | Number | 否 | doc_meta_recall 最大分数低于此值则全局放弃 |
channel_fusion | String | 否 | 多路 channel 合并策略:max(取最大) / weight(按 channel_weight 加权平均,默认) |
enable_overview | Boolean | 否 | channels 为空时自动补一路 overview 通道 |
enable_guide | Boolean | 否 | channels 为空时自动补一路 guide 通道 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
name | String | 是 | 通道名称 |
fields | Array | 是 | doc_meta_recall 字段名列表:
|
vector_weight | Number | 否 | 该路向量权重,透传给 DocMetaSophonService.recall |
channel_weight | Number | 否 | 该路在多路 channel 融合时的权重,仅 channel_fusion=weight 时生效 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
kb_ids | Array | 否 | 知识库ID列表 |
doc_ids | Array | 否 | 文档ID列表 |
folder_ids | Array | 否 | VeRAG目录ID列表 |
graph_ids | Array | 否 | 图谱ID列表 |
ontology_ids | Array | 否 | 本体ID列表 |
enable_kb_priority | Boolean | 否 | 是否启用知识库优先级 |
kb_priority | Object | 否 | 知识库优先级分组,详情请参见上文 kb_priority 表 |
similarity_threshold | Number | 否 | 召回相似度阈值 |
vector_similarity_weight | Number | 否 | 向量检索权重 |
top_k | Number | 否 | 单个召回通道的候选分片数量上限 |
top_n | Number | 否 | 最终返回召回结果数量上限 |
enable_rerank | Boolean | 否 | 是否启用语义重排 |
enable_llm_rerank | Boolean | 否 | 是否启用 LLM 重排 |
rerank_score_threshold | Number | 否 | 重排分数阈值 |
label_value_ids | Array | 否 | 标签值ID列表 |
enable_agent_enhance_search | Boolean | 否 | 是否启用 Agent 增强检索 |
chunkRecallConfig | Object | 否 | 切片召回配置:channels + 自动构建开关,详情请参见下文 chunkRecallConfig 表 |
doc_meta_recall_config | Object | 否 | 文档元信息召回配置:基于 overview/guide/keywords 做 entry_id 过滤或 chunk 加权,详情请参见下文doc_meta_recall_config 表 |
extra | Object | 否 | 额外检索参数 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
channels | Array | 否 | 多路召回通道;为空时若 enable_summary/enable_keywords/enable_questions 开启则自动补,详情请参见下文 chunkRecallConfig.channels 表 |
enable_summary | Boolean | 否 | channels 为空时自动补一路 chunk_summary 通道 |
enable_keywords | Boolean | 否 | channels 为空时控制 main 通道 keyword boost;true 走 Sophon 默认(boost keywords 字段),false 显式加 main + use_chunk_keyword=false 关闭 boost |
enable_questions | Boolean | 否 | channels 为空时自动补一路 chunk_questions 通道 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
name | String | 是 | 通道名称 |
keywordField | String | 否 | 关键词召回字段名(如 chunk_summary / chunk_questions / chunk_keywords) |
vectorField | String | 否 | 向量召回字段名(如 embedding / embedding_summary) |
vectorWeight | Number | 否 | 该通道向量权重 |
useChunkKeyword | Boolean | 否 | nil/true:BM25 时给 keywords 字段加 boost=2.0;false |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
channels | Array | 否 | 多路 doc_meta_recall 配置;为空时若 enable_overview/enable_guide 开启则自动补,详情请参见下文 doc_meta_recall_config.channels 表 |
strategy | String | 否 | filter / weight,默认 weight |
filter_timing | String | 否 | pre / post,仅 strategy=filter 时生效 |
weight_mode | String | 否 | chunk 与 doc_meta 分数融合方式:multiply(乘法加权,默认) / linear(线性加权),仅 strategy=weight 时生效 |
doc_meta_linear_weight | Number | 否 | doc_meta 在线性融合中的权重:final = chunk_score * (1 - w) + doc_meta_score * w,仅 strategy=weight 且 weight_mode=linear 时生效 |
doc_meta_multiply_weight | Number | 否 | doc_meta 在乘法融合中的权重:final = chunk_score * (1 + doc_meta_score * w),仅 strategy=weight 且 weight_mode=multiply 时生效 |
min_confidence | Number | 否 | doc_meta_recall 最大分数低于此值则全局放弃 |
channel_fusion | String | 否 | 多路 channel 合并策略:max(取最大) / weight(按 channel_weight 加权平均,默认) |
enable_overview | Boolean | 否 | channels 为空时自动补一路 overview 通道 |
enable_guide | Boolean | 否 | channels 为空时自动补一路 guide 通道 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
name | String | 是 | 通道名称 |
fields | Array | 是 | doc_meta_recall 字段名列表:overview / guide / keywords |
vector_weight | Number | 否 | 该路向量权重,透传给 DocMetaSophonService.recall |
channel_weight | Number | 否 | 该路在多路 channel 融合时的权重,仅 channel_fusion=w |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
code | Number | 是 | 响应码:0=成功,非0=失败 |
msg | String | 否 | Code非0时,返回错误信息 |
message | String | 否 | 错误信息 |
data | Object | 是 | 检索,详情请参见下文 data 表 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
total | Number | 是 | 总数 |
chunks | Array | 是 | 检索结果,详情请参见下文 chunks 表 |
doc_aggs | Array | 是 | 文档聚合,详情请参见下文 doc_aggs 表 |
summary | String | 否 | 智能检索基于召回内容生成的总结回答 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
kb_id | Array | 是 | 知识库ID |
kb_name | Array | 否 | 知识库名称 |
chunk_id | String | 是 | 切片ID |
content_with_weight | String | 是 | 带权重的文本内容 |
doc_id | String | 是 | 文档ID |
important_kwd | Array | 是 | 重要关键词 |
image_id | String | 是 | 图片ID |
similarity | Number | 是 | 相似度 |
vector_similarity | Number | 是 | 向量相似度 |
term_similarity | Number | 是 | 关键词相似度 |
docnm_kwd | String | 是 | 文档名关键词 |
display_name | String | 否 | 文档展示名称 |
content_ltks | String | 是 | 切片内容词元 |
highlight | String | 否 | 高亮 |
question | String | 否 | 问题 |
extra | Object | 否 | 额外数据 |
rank_score | Number | 否 | 排序分数 |
source | String | 否 | 来源 |
character_count | Number | 否 | 当前切片的字符数 |
duration | String | 否 | 切片时长或定位信息 |
url | String | 否 | 文档文件URL |
title | Array | 否 | 切片标题 |
channel_score | Object | 否 | 召回链路分项明细,key 为 channel 名;value 为 JSON 解析结果或原始字符串 |
channel_name | String | 否 | 召回链路名 |
orig_similarity | Number | 否 | 原始 chunk 召回相似度(融合前) |
orig_rerank_score | Number | 否 | 原始重排分数(融合前) |
doc_meta_recall_similarity | Number | 否 | doc_meta_recall 召回总分(多路融合后) |
doc_meta_recall_scores | Object | 否 | doc_meta_recall 每路分数,key 为 channel name |
doc_meta_recall_channel_name | String | 否 | 命中的 doc_meta_recall channel 名称;strategy=weight 时为多路名逗号分隔,其他策略为分数最高的那路 |
is_personal_kb | Boolean | 否 | 是否来自个人知识库 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
doc_id | String | 是 | 文档ID |
tenant_id | Number | 否 | 租户ID |
kb_id | Number | 否 | 知识库ID |
doc_name | String | 是 | 文档名称 |
display_name | String | 否 | 文档展示名称 |
count | Number | 是 | 数量 |
create_time | String | 否 | 创建时间 |
labels | Array | 否 | 标签信息,详情请参见下文 labels 表 |
avg_score | Number | 否 | 平均分数 |
semantic_score | Number | 否 | 语义分数 |
text | String | 否 | 文本 |
is_personal_kb | Boolean | 否 | 是否来自个人知识库 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
create_time | Number | 否 | 创建时间戳 |
create_date | String | 否 | 创建时间 |
update_time | Number | 否 | 更新时间戳 |
update_date | String | 否 | 更新时间 |
label_id | Number | 是 | 标签ID |
label_name | String | 否 | 标签名称 |
label_type | String | 是 | 文档标签类型
|
label_values | Array | 否 | 标签值列表,详情请参见下文 label_values 表 |
label_value_builder | String | 否 | 标签值构建器
|
prompt_version | String | 否 | 提示词版本 |
label_usage | Number | 否 | 标签使用次数 |
参数名 | 类型 | 是否必传 | 描述 |
|---|---|---|---|
id | Number | 是 | 标签值ID |
value | String | 否 | 标签值 |
value_usage | Number | 否 | 标签值使用次数 |
label_value_builder | String | 否 | 标签值构建器
|