通过检索增强生成构建更强大的LLM

增强生成构建更强大的LLM

如何通过集成知识库来增强您的LLMs的检索增强生成

作者生成的图像:使用Midjourney生成

ChatGPT的限制

ChatGPT在代码生成之外的许多实际业务用例中存在限制。这些限制源于训练数据以及模型的产生幻觉的倾向。在撰写本文时,如果你试图询问Chat-GPT关于2021年9月之后发生的事件的问题,你可能会收到以下回复:

作者的图像

这并没有提供帮助,那么我们该如何纠正它呢?

选项1 – 对现有数据进行训练或微调模型。

对模型进行微调或训练可能是不切实际和昂贵的。抛开成本,准备数据集所需的工作足以放弃这个选项。

选项2 – 使用检索增强生成(RAG)方法。

RAG方法使我们能够使大型语言模型访问最新的知识库。这比从头开始训练模型或微调模型要便宜得多,也更容易实施。在本文中,我将向您展示如何在您的OpenAI模型中利用RAG。我们将通过对来自维基百科知识库的2022年俄罗斯-乌克兰冲突的问题进行简要分析来测试模型的能力。

注意:尽管这个话题比较敏感,但选择它的明显原因是当前的ChatGPT模型对此一无所知。

库和先决条件

您将需要一个OpenAI API密钥,您可以直接从他们的网站获取一个,或者按照本教程操作。RAG所使用的框架是Deepset的Haystack,它是开源的。他们提供API使您能够在大型语言模型上构建应用程序。我们还利用了来自Hugging Face的句子嵌入和transformers库。

句子嵌入帮助模型解释文本