Way To Agent
Prompt Engineering

RAG 问答 Prompt 设计

介绍 RAG Prompt 如何约束模型只基于上下文回答、如何处理不确定性,以及如何输出可追溯引用。

Prompt EngineeringintermediateRAGPrompt引用溯源忠实度

RAG 问答 Prompt 设计

RAG 场景下的 Prompt,重点不是“把话说得更漂亮”,而是让模型尽量别越界。检索把内容找回来之后,Prompt 要继续负责两件事:告诉模型只能在这些材料里答,以及答的时候要把引用关系保留下来。

如果这层没立住,RAG 很容易退化成“检索了一下,但模型还是按自己想法回答”。

RAG Prompt 最重要的不是礼貌,而是边界

在知识库问答里,一个好 Prompt 通常至少要明确:

  • 只能基于给定上下文回答。
  • 上下文不足时要拒答或说明不确定。
  • 输出要保留引用标识或来源位置。

这几个约束写不清,后面再怎么优化召回,结果也可能还是漂。

为什么它和普通问答 Prompt 不一样

普通聊天更重自然性,RAG 问答更重忠实度。两者目标不同,所以 Prompt 关注点也不同:

  • 普通聊天允许自由组织答案。
  • RAG 问答更在意答案和证据的对应关系。
  • 普通聊天可以凭模型已有知识补充。
  • RAG 问答更应避免超出上下文发挥。

这也是为什么 RAG Prompt 经常看起来没那么“聪明”,却更适合上线。

哪些问题不是 Prompt 能补的

也要泼冷水。RAG Prompt 再严格,也补不了这些问题:

  • 检索本身没召回到关键内容。
  • 切片太碎或太乱。
  • 引用元数据没存全。

所以它是约束层,不是修复一切的万能层。

一句话先记住

RAG Prompt 的作用,不是让答案更华丽,而是让答案和证据的关系更可检查。

继续阅读

  • 04-rag/001-what-is-rag.md
  • 04-rag/009-citation-tracing.md