分享
InternLM+LlamaIndex(Google CoLab 版本)
输入“/”快速插入内容
InternLM+LlamaIndex(Google CoLab 版本)
用户1672
用户9803
2024年6月5日修改
本文将分为以下几个部分来介绍,如何使用 LlamaIndex 来部署 InternLM2 1.8B(以 InternStudio 的环境为例)
•
前置知识
•
环境配置
•
LlamaIndex HuggingFaceLLM
•
LlamaIndex RAG
1.
前置知识
正式介绍检索增强生成(Retrieval Augmented Generation,RAG)技术以前,大家不妨想想为什么会出现这样一个技术。
给模型注入新知识的方式,可以简单分为两种方式,一种是内部的,即更新模型的权重,另一个就是外部的方式,给模型注入格外的上下文或者说外部信息,不改变它的的权重。
第一种方式,改变了模型的权重即进行模型训练,这是一件代价比较大的事情,大语言模型具体的训练过程,可以参考
InternLM2
技术报告。第二种方式,并不改变模型的权重,只是给模型引入格外的信息。类比人类编程的过程,第一种方式相当于你记住了某个函数的用法,第二种方式相当于你阅读函数文档然后短暂的记住了某个函数的用法。
对比两种注入知识方式,第二种更容易实现。RAG正是这种方式。它能够让基础模型实现非参数知识更新,无需训练就可以掌握新领域的知识。本次课程选用了LlamaIndex框架。LlamaIndex 是一个上下文增强的 LLM 框架,旨在通过将其与特定上下文数据集集成,增强大型语言模型(LLMs)的能力。它允许您构建应用程序,既利用 LLMs 的优势,又融入您的私有或领域特定信息。
RAG 效果比对
如图所示,由于
xtuner
是一款比较新的框架,
InternLM2-Chat-1.8B
训练数据库中并没有收录到它的相关信息。上图中问答均未给出准确的答案。下图未对
InternLM2-Chat-1.8B
进行任何增训的情况下,通过 RAG 技术实现的新增知识问答。
2.
环境配置
谷歌里面搜索
colab
或者点击
https://colab.google/
选择+
New Notebook
点击右上角的倒三角符号:
更改运行时类型