生成 · 2023
Self-RAG
由模型自己决定要不要检索,并判断自己的话有没有依据。
要解决的问题
朴素 RAG 对每个问题都检索固定数量的段落。有的问题不需要资料,有的段落也并不支持正在写的那句话。
相对前一代的变化
它不再在外面套一个永远会检索的流程,而是训练模型生成特殊的反思标记:要不要检索、这段是否相关、这句话是否被资料支持。
做法
Asai 等人用反思标记微调一个语言模型。生成时模型可以跳过检索,也可以取回段落后再继续写,并为句子附上支持与否的判断。推理时可以通过这些标记偏向更忠实的结果。
局限
需要按这套标记训练模型,不能直接套在任意闭源接口上。检索语料、批评标准和任务一旦变了,原来的模型不一定还能用。
在链路中的位置
改的是生成这一步。何时检索、是否忠于资料,都放进模型自己的解码过程。