生成 · 2023

Self-RAG

由模型自己决定要不要检索,并判断自己的话有没有依据。

演进中 · 需要专门训练

要解决的问题

朴素 RAG 对每个问题都检索固定数量的段落。有的问题不需要资料,有的段落也并不支持正在写的那句话。

相对前一代的变化

它不再在外面套一个永远会检索的流程,而是训练模型生成特殊的反思标记:要不要检索、这段是否相关、这句话是否被资料支持。

做法

Asai 等人用反思标记微调一个语言模型。生成时模型可以跳过检索,也可以取回段落后再继续写,并为句子附上支持与否的判断。推理时可以通过这些标记偏向更忠实的结果。

局限

需要按这套标记训练模型,不能直接套在任意闭源接口上。检索语料、批评标准和任务一旦变了,原来的模型不一定还能用。

在链路中的位置

改的是生成这一步。何时检索、是否忠于资料,都放进模型自己的解码过程。