首页/AI/RAG 与向量库速查/合成评测问题生成

合成评测问题生成

用文档内容合成评测问题扩充电商/客服等问答集:每个片段生成若干问题,再人工抽检修正;注意去重与难度分层(事实型、比较型、条件型),避免全是“原文复读”。

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

合成评测问题怎么用

用文档内容合成评测问题可以快速扩充问答集:给每个片段生成若干问题,覆盖事实型、比较型、条件型等不同难度,再人工抽检修正。它的价值是在真实用户问题积累不足时先把评测框架搭起来。风险也很明确:合成问题与原文措辞高度接近,指标会系统性偏乐观,因此必须保留一部分真实用户问法作为对照组。

基本信息

生成方式按片段生成问题,要求问题不包含答案本身
难度分层事实型、比较型、条件型各占一定比例
去重近似问题要合并,避免重复计入指标
对照要求保留真实用户问法,与合成集分开统计

典型使用场景

  • 冷启动评测:真实问题还很少时先把指标框架跑起来
  • 语料覆盖检查:哪些片段生成不出好问题,往往说明内容本身不合格
  • 切分验证:用同一批合成问题对比不同切分方案的召回
  • 团队协作:把合成集作为公共基线,减少各自造句带来的口径差异
  • 边界构造:人工指定生成「带错别字」「只给型号」这类难例

合成提示词要点

合成提示词要点
给定片段,生成 N 个用户可能提出的问题:
- 覆盖事实型、比较型、条件型各至少 1 个;
- 问题不得包含答案本身,也不要出现「该片段」这类指代;
- 输出 JSON 数组,附片段 id 便于回溯。
# 生成后必须人工抽检,模型产出的问题质量参差不齐

质量抽检

质量抽检
sample = random.sample(synth_questions, 50)     # 随机抽一批人工看
keep = [q for q in sample if human_ok(q)]
print("保留率", len(keep) / len(sample))         # 保留率低说明生成规则要收紧

合成质量抽检项

检查项合格标准不合格原因
问题自洽脱离片段也能读懂大量「它」「该值」这类指代
答案唯一片段内有明确答案问题过于开放,无法判定对错
难度分布三类问题都有覆盖全是原文复读式提问
去重情况近似问题已合并换词重复,虚高指标
合成问题与文档措辞接近,会系统性偏乐观:保留一部分真实用户问法作为对照组,用两组指标的差距衡量评测集的可信度。
合成集要版本化:提示词或模型变了,生成的问题分布也会变,混用不同批次的问题会让历史指标失去可比性。

易错点

  • 合成问题与原句高度重合,评测分虚高
  • 不做去重,近似问题重复计入指标
  • 抽检比例过低,大量不可判定的问题留在评测集里
  • 只用合成集下结论,上线后真实问法的表现差距很大

数据来源与参考

  • RAGAS 官方文档(Testset Generation)
  • Es et al., RAGAS (arXiv:2309.15217)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌