知识库优化
调整分块参数、检索模式和重排序配置,提升召回率与回答质量
通过调整分块、检索与重排序策略,显著改善知识库的检索质量与响应准确性。
分块策略
Clouisle 使用基于字符的分块。默认值:chunk_size = 1000 字符,chunk_overlap = 100 字符;UI 支持 100–2000 字符的块大小。
| 内容类型 | 块大小 | 重叠量 |
|---|---|---|
| 通用文本 | 1000 字符 | 100 字符 |
| 短问答 | 400-800 字符 | 50-100 字符 |
| 代码或结构化文本 | 800-1500 字符 | 100-200 字符 |
基于代表性文档和检索质量进行调优;这些值为建议起始点,不是硬性默认值。
检索参数
检索 API 使用 top_k、score_threshold 与(混合搜索时)稠密/词汇权重与 rrf_k。默认值:top_k = 5、score_threshold = 0.0;无知识库搜索 max_tokens 参数。上下文长度由聊天模型的可用 Token 预算决定。
- top_k:从 3-5 开始,召回不足时再增加
- score_threshold:从 0.0 开始,使用代表性评估集后逐步提升
- search_mode:比较
vector、fulltext、hybrid对语料库的效果 - reranking:仅在使用授权的 rerank 模型时启用;使用测量的质量/延迟调整候选数量与阈值
何时重新处理
- 文档内容变更时
- 分块设置或分隔符变更时
- 需要显式重新处理/重新分块时
现有知识库的嵌入模型被拒绝更改,因其维度必须保持兼容。创建替换知识库,或使用显式迁移/重新处理流程;应用不会静默自动重新索引。
评估
保留一组代表性查询,记录召回率、回答质量、延迟和成本后再更改设置。使用相同的查询比较检索模式和重排序效果,而非依赖单一示例。
嵌入模型变更
不要在生产环境直接替换嵌入模型的维度。维度变更会破坏已有向量索引,需要重新创建知识库或执行完整的重新索引流程。
这篇文章对你有帮助吗?