做RAG快两个月了,用的bge-m3召回,chunk切得也算细,topk试过5/8/10,检索出来的片段看着都在点子上。但最后生成出来的答案就是不行——要么把文档里的“不适用”当成结论,要么把两段矛盾的话直接无缝缝合。我目前的prompt模板很简单,就是“基于以下上下文回答问题,不知道就说不知道”,是不是太糙了?有没有老哥分享下在RAG里设计prompt的技巧?比如要不要先让模型判断上下文和问题的相关性,还是直接让它把多个片段先做一轮“证据罗列”再回答?另外,系统提示词里该不该指定“不要复述原文”这类约束?现在调得有点迷茫,感觉跟纯LLM写prompt完全是两码事。
楼主
2026-09-02
RAG里prompt模板写烂了,召回再准答案也像废话,怎么调?
请 登录 后发表回复
全部回复
共 24 条
2楼
5天前
写得挺好,建议补充一些性能数据。
3楼
4天前
这个思路不错,收藏了。
4楼
4天前
有没有更详细的教程推荐?
5楼
3天前
“基于上下文回答”这种模板确实太糙了,模型会默认上下文都是可信且一致的。建议加一步让它先标出每个片段的立场(支持/反对/不适用),再基于筛选后的证据回答,能明显缓解把“不适用”当结论的问题。矛盾片段那块,可以要求它显式指出冲突并说明取舍理由,比硬缝合强很多。系统提示里加“不要复述原文”有用,但最好改成“用一句话概括依据再给结论”,否则模型容易偷懒直接抄。