课程由datawhale组织成员编纂,发布在github上,通过组队学习方式进行学习。主要目的在于给部分开发者介绍大语言模型的开发背景并提供相关的实操过程。
课程的地址:https://datawhalechina.github.io/llm-universe/
一、大语言模型的概念
1.大语言模型(LLM,Large Language Model),也称大型语言模型,是一种旨在理解和生成人类语言的人工智能模型。
2.LLM通常是指数百亿(或更多)参数的语言模型,它们在海量的文本数据上进行训练,从而获得对语言深层次的理解。
二、LLM的能力和特点
能力:1.涌现能力
2.作为基座模型支持多元应用的能力
3.支持对话作为统一入口的能力
特点:巨大的规模、预训练和微调、上下文感知、多语言支持、多模态支持、伦理和风险问题、高计算资源需求
三、RAG检索增强生成
RAG这个架构整合了从庞大知识库中检索到的相关信息,并以此为基础,指导大型语言模型生成更为精确的答案。
1.为什么要用到RAG
因为LLM面临的主要问题:幻觉、知识更新滞后性、内容不可追溯、对于专业领域知识能力欠缺、推理能力限制、应用场景适应性受限和长文本处理能力较弱。对于上述问题而言,RAG都能够较好的改善问题。
2.RAG的工作流程(四个阶段)
(1).数据处理阶段、(2).检索阶段、(3).增强阶段、(4)生成阶段。
四、LangChain介绍
LangChain框架是一个开源工具,充分利用了大型语言模型的强大能力,以便开发各种下游应用。它的目标是为各种大模型应用提供通用接口,从而简化应用程序的开发流程。
LangChain的核心组件:模型的输入/输出(Model I/O)、数据连接(Data connection)、链(Chains)、记忆(Memory)、代理(Agents)、回调(Callbacks)
五、开发LLM应用的流程
1.确定目标、2.设计功能、3.搭建整体架构、4.搭建数据库、5.Prompt Engineering、6.验证迭代、7.前后端搭建、8.体验优化