当前,人工智能技术发展迅猛,无疑成为新质生产力中最为夺目的黑马。特别是OpenAI推出ChatGPT以来,人工智能在大数据、大算力和大算法方面实现了完美结合,真正让普通人感受到人工智能的“神奇”。
随着越来越多的通用大语言模型(LLM)的出现和发展,如何利用LLM能力实现人工智能应用的落地成为业界努力的方向。
高校的信息化建设有着大量的应用建设需求,基于 LLM的能力和学校信息化建设的结合也是高校智慧校园建设的探索。
本文主要介绍利用RAG(Retrieval Augmented Generation)基于LLM通用大语言模型开发信息化应用的探索。为了既利用LLM的能力,又能够把一些最新的或者内部的知识作用于LLM,使用 Retrieval Augmented Generation(检索增项的生成模型简称RAG)是解决办法之一。
顾名思义,RAG就是通过检索的方式来增强LLM模型的能力。用一个形象的比喻就是RAG相当于是LLM在做一次开卷考试,当遇到不会做的题目的时候就查看已有的答案,然后根据答案再来回答问题。那么这里已有的答案就是提前准备好的最新或者内部的知识文件。
总结来说,RAG就是一种基于深度学习和自然语言处理的技术手段。它可以将检索和生成两个任务有机结合起来,实现了更加智能的信息检索。与传统的检索技术相比,RAG能够更加准确和个性化地搜索结果,同时生成与问题相关的回答或解释,提高了信息检索的效率和准确性。
LLM简介
大模型,全称“大语言模型”,英文“Large Language Model”,缩写LLM。大语言模型具备对自然语言进行理解、生成和处理的能力,并在各类自然语言处理任务中发挥作用,如文本摘要、机器翻译、问答系统等。本文并不对 LLM做过多的介绍,解释一下对话产品和大模型的区别,大模型前面做了简单介绍,而对话产品则是利用大模型能力开发出来提供给用户使用的服务或软件。表1列出了中国和美国部分对话产品和大语言模型。
在LLM应用过程存在的一些局限性问题。
一是LLM知识的实时性问题。目前很多大语言模型训练学习的知识不是实时的,典型的案例就是ChatGPT等。那么如果涉及到一些较新的知识点和事件,LLM将无法准确做出回应。
二是LLM无法知道相关行业或单位内部的知识。例如学校或者行业内部的一些管理规定,LLM是不知道的。那么在使用LLM的时候,相关问题也是无法回答的。
表1 主要的大模型和对话产品
利用RAG搭建智能问答系统
在高校的信息化建设中,智能问答系统是常见的应用系统,用于解答师生提出相关的问题,传统的做法是通过关键字匹配知识库的方式来实现。当师生提出的问题刚好有关键字能匹配上则系统能够正确回答问题;如果师生提出的问题换了个意思相近的词语导致无法匹配关键字,系统则可能无法做出正确的回答。造成该问题的原因是智能问答系统没有真正理解师生提出的问题语义,利用LLM和RAG则可以很好地解决这个问题。
搭建基于LLM的RAG系统主要有四个步骤。
第一步,文档加载及切片。首先我们需要对知识库文档进行切片处理,按照一定的大小进行切片,因为无论是关键字检索还是向量检索都是对文档切片进行的。目前通过很多成熟的软件可以非常方便地完成此项工作。
第二步,文本向量化。文本向量(Text Embeddings)就是将文本转化成一组浮点数组,整个数组则可以对应多维空间的点,即文本向量。在这里做文本向量化的目的是向量化后的文本可以通过相应的数学工具来计算文本之间的关系即向量相似度计算。文本向量化这个工作一般直接使用LLM提供的向量工具来完成。在实际开发过程中使用的就是OpenAI公司的“text-embedding-ada-002”这个工具。
第三步,文档导入检索引擎或向量数据库。我们将切片后的文档导入到相应的检索引擎中用于文档检索。如果导入的检索引擎为elasticsearch则实现的是关键字检索,如果导入的是向量数据库则可以实现向量检索。在这里我们实现RAG功能就是使用的向量数据库检索。在这里我们需要注意的是使用向量数据库是为了对向量数据进行快速检索,向量数据库并不能取代传统数据库的功能;向量数据库本身并不会产生向量数据,向量数据是由向量化工具生成的。
第四步,封装检索接口。 完成前面的工作后,就可以利用LLM接口和Prompt模板完成最终问题回答的工作了。在实际工作中,使用的是ChatGPT3.5提供的API接口。实际的调用流程如图1所示。
图1 RAG工作流程
关键技术点
文本向量的计算。 如图2所示,通过向量化工具可以得到文本的向量,那么如何计算文本的相似度及向量之间的距离。构建相关(正例)与不相关(负例)的句子对比样本和通过训练双塔式模型,让正例间的距离小,负例间的距离大,这里用到的是欧式距离和余弦距离的计算方式。
图2 文本向量化
向量数据库的选择。实现智能问答系统的效率好坏的关键是向量数据库的检索能力,目前业界有着非常多的向量数据库的选择,具体见表2。
表2 主流向量数据库功能对比
RAG的不足
RAG模型结合了检索模型和生成模型的优势,能基于更广泛的知识库进行生成文档,从而提高生成结果的准确性和信息丰富程度,但依然存在着一些不足。
首先,依赖外部数据库:RAG的运行性能高度依赖于外部知识库的质量和覆盖范围。如果知识库的信息不全或过时,则很有可能影响生成结果的准确性。
其次,技术实施难度:在具体运用RAG模型开发应用的时候,需要整合检索和生成模型特别是向量数据库的部署,这可能需要较高的技术水平和计算资源。
最后,向量检索的不足:有时候会存在最适合的答案在向量检索的结果中不是排名最前,这时可以采用通过召回和重排打分的方式解决;当遇到文档中有很长的专有名词的时候,向量检索可能会不准确,这时可以采用混合检索即关键字检索和向量检索混合使用的方式来解决。
随着计算能力和AI技术的不断提高,LLM的规模和性能将继续增强,未来的应用也将更加广泛,将来会为人类提供更加智能化和个性化的服务,进一步改善人们的生活和生产方式。2024年全国将会有一批基于LLM的应用在相关行业中实现落地,那么如何将LLM与高校信息化建设相结合,也需要我们不断去发展和探索。
来源:《中国教育网络》2024年9月刊
作者:李俊峰(江西中医药大学网络与信息技术中心)
责编:陈荣
投稿或合作,请联系:eduinfo@cernet.com
更多资讯