什么是 Python 装饰器

如果你能够认识到函数是一等公民(First-class)的话,那么你理解 Python 装饰器应该没有什么困难。函数是一等公民(First-class)就意味着:函数也是值,和其他基本类型(int, str, float, etc)等一样,都可以作为函数的入参和返回值

论文阅读: In-Context Retrieval-Augmented Language Models

In-Context RALM1 是用于 Autoregressive LM 上的 RAG 技术。RAG 说白了就是在模型推理的时候有个 Retriever 检索相关的文档,检索到的文档会和本来的输入拼接在一起

在 In-Context Learning 里面,会把一些例子放在用户输入的前面,再给 LLM。因此不难想象 In-Context RALM 也类似:In-Context RALM 就是将检索到的最相关的文档直接拼在模型输入的前面,优势是不需要再训练 LLM,我用 mermaid 画了一个图,如下所示

论文阅读: REALM: Retrieval-Augmented Language Model Pre-Training

最近打算系统性学习 RAG 技术,开始看起了相关文献,目前的思路是按照 ACL 2023 Tutorial 的 Roadmap 过一遍。本篇是对早期的 RAG 技术的 REALM 的介绍

Info

本文采用的模型是 Masked LM 的 BERT,还不是 LLM。因此本文后续的部分内容需要你对 BERT 有一定的了解,包括 BERT 的预训练过程、BERT 微调等