首页/AI/RAG 与向量库速查/相似度阈值与 No-Answer 判定
Embedding 与检索50 条

相似度阈值与 No-Answer 判定

用相似度阈值判断“无相关内容”并触发兜底话术:阈值没有通用常数,需要基于标注样本的分数分布选取,并同时观察误拒(漏答)与误收(答错)的比例。

RAG 与向量库速查AI更新于 2026-10-12

阈值判定与兜底

阈值判定与兜底
hits = vector_store.search(q_vec, top_k=10)
best = hits[0].score if hits else 0.0
if best < ANSWER_THRESHOLD:
    return "知识库中未找到相关内容,建议转人工或换个问法。"
answer = generate(q, build_context(hits))
不同 embedding 模型的分数分布不同:换模型、换归一化方式后都要重新定阈值。

易错点

  • 照搬博客里的 0.8 阈值到自家模型,误拒率飙升
  • 阈值算在重排分还是向量分上没统一,改动一处后两处逻辑打架

数据来源与参考

  • Anthropic, Contextual Retrieval 技术说明(相似度过滤)
  • LlamaIndex 官方文档(SimilarityPostprocessor)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌