用户不知道"它到底查了什么"
检索范围(哪些资料、什么时间、哪个库 ✔)如果不透明 ✗,
用户就无法解释"为什么没查到我想要的那份文档" ✔,只能怀疑系统不行 ✗。
把检索范围"交给用户" ✔:既透明,又可调 ✔。
一、三个层次的范围控制
| 层次 | 形式 | 适合 |
|---|---|---|
| 显示(只读 ✔) | "本次检索了:产品手册、FAQ(近 1 年)" ✔ | 默认,必须有 ✔ |
| 筛选(可调 ✔) | 时间范围、来源、类型(见可筛选检索 ✔) | 高频需求 ✔ |
| 指定(显式选择 ✔) | "只查这份文档 / 这个库" ✔ | 高级用户与调试 ✔ |
第一层不能省 ✗ → 没有它,用户连"它在查什么"都不知道 ✔。
二、显示该怎么写(三要三不要)
要 ✔:
- 说清范围(哪些资料源、时间窗 ✔);
- 说清数量(命中多少条、用了哪几条 ✔ —— 见证据表那篇 ✔);
- 说清未命中("另有 3 条较早的资料未展示" ✔)。
不要 ✗:
- 只写"已检索知识库" ✔(等于没说 ✔);
- 暴露内部实现(索引名、向量维度 ✔);
- 把范围写成免责声明("结果仅供参考" ✔)。
三、筛选与冲突处理
- 筛选后无结果 → 明确提示"当前筛选下没有资料",并给清除筛选入口 ✔(不要静默返回空 ✗);
- 指定范围后仍无答案 → 说明"在该范围内未找到" ✔(而不是偷偷扩大范围 ✗);
- 范围与权限冲突 → 权限优先 ✔,并说明"部分资料因权限未纳入" ✔(见权限模型 ✔)。
四、该观测什么
- 范围调整率(多少用户会去调筛选 ✔ —— 高说明默认范围不合适 ✔);
- "没查到"投诉(多来自范围不透明 ✔);
- 指定范围使用率(高级用户的真实需求 ✔);
- 筛选后零结果率(高说明默认值或筛选项设计有问题 ✔)。
五、一条判据
用户问"为什么没查到我上传的那份文档" ✔,他能否自己从界面上看出原因 ✔(如"该文档未在检索范围内" ✔)?
不能,说明范围还没有交给用户 ✗。