学的糊里糊涂,这次通过大模型部署过程来理解大模型开发中的各个概念。
1、整体部署方案

2、整体部署的三条主线

3、几个问题
3.1、问题1:这个项目中只把Dify安装在了Docker中。Ollama、Xinference直接部署在GPU服务器,没有在Docker中。为什么?
答:Ollama、Xinference是可以部署在Docker中的,但是Ollama和Xinference在调用模型的过程中需要消耗大量的GPU资源,而Docker默认使用CPU资源,不能使用GPU。如果将Ollama、Xinference安装到Docker中,则需要安装额外的其它软件,来支持GPU的调用。
3.2、问题2:为什么不在Ollama平台安装嵌入模型(Embedding Models)和重排序模型(ReRank Models)?
答:Ollama专注于简化大语言模型(LLM)的本地部署和管理,其核心优势在于LLM的易用性和快速上手。国内的deepseek、Qwen,国外的clound、chatgpt部署在Ollama上一点问题也没有。但是针对嵌入模型,Ollama平台上比较少,对于重排序模型,Ollama平台上几乎就没有。因此,有必要引入新的平台Xinference,来部署嵌入模型和重排序模型。
3.3、问题3:Xinference不太了解,简单介绍一下?
答:Xinference是一个功能更全面的模型服务框架,它不仅支持部署和管理大语言模型,还对嵌入模型和重排序模型提供了广泛且灵活的支持。
3.4、问题4:为何考虑多服务器部署?
答:好处1:分散计算压力,优化资源利用;好处2:提高可扩展性和灵活性;好处3:演示Dify的分布式模型管理能力。
4、企业级大模型应用场景一:基于RAG架构的开发流程
4.1、大语言模型存在的两个问题
为什么安装大语言模型后,还要安装嵌入模型和重排序模型?这主要是由于大语言模型存在两个问题。
4.1.1、大模型的知识冻结。大模型在训练的时候,对应的语料都有一个截止日期,截止日期之后的信息或数据就没办法融入到大模型的训练当中了,如果问的问题恰好是截止日期之后的,比如这个月热门的电影都有哪些呢,大模型就没有办法给出合理有效的回答。
4.1.2、大模型幻觉。就是常说的大模型不懂装懂,胡说八道。主要原因是问的问题,大模型缺乏足够有效的精确的语料导致的。
RAG就是针对这两个问题提出来的。
举例:LLM在面对考试的时候

大语言模型面对它不太了解的领域,它的答复能力就非常有限,可能正确率有个60%。但是在大语言模型的基础上,给它相关的语料,也就是对应的RAG,这时候大语言模型就可能针对性的找到些思路和提示,进而往一个正确的方向去思考,从而正确率能从60%达到90%。
4.2、什么是RAG?
RAG对应三个单词的缩写,Retrieval(检索)、Augmented(增强)、Generation(生成)。

另一种方式理解:

4.3、RAG开发中的几个难点
4.3.1、文本解析。文本数据没问题,如果是图片、语音、视频呢,如何把word里面的图片上的文字提取出来。
4.3.2、文件切割。按指定的字符数进行切割,按指定的token数进行切割,还可以按照语义切割,或者按递归字符的方式进行切割。
4.3.3、知识检索。多种算法,如相似检索,基于欧式距离的分数检索,最大边际相关性检索等策略。
4.3.4、知识重排序。回答高精度、高相关性的时候需要用到。时间响应要求较高的情况不需要用到。
5、企业级大模型应用场景二:基于Agent架构的开发
Agent开发:充分利用LLM的推理决策能力,通过增加规划、记忆和工具调用的能力,构造一个能够独立思考、逐步完成给定目标的智能体。
5.1、现代AI Agent架构
OpenAI的元老翁丽莲于2023年6月在个人博客首次提出了现代AI Agent架构。

Agent = LLM + Memory + Tools + Planning + Action
5.2、现代AI Agent的核心要素
5.2.1、核心要素1:大模型(LLM)
大模型作为“大脑”:提供推理、规划和知识理解能力,是AI Agent的决策中枢。
为什么前几年大家都在追寻大模型,现在开始落地Agent呢,因为没有大模型,就不会有Agent。
5.2.2、核心要素2:记忆(Memory)
短期记忆:存储单次对话周期的上下文信息,属于临时存储机制。受限于 模型的上下文窗口长度。
长期记忆:可以横跨多个任务或时间周期,可存储并调用核心知识,非即时任务。长期记忆可以通过模型参数微调(固化知识)、知识图谱(结构化语义网络)或向量数据库(相似性检索)方式实现。
5.2.3、核心要素3:工具调用(Tool Use)
工具调用:调用外部工具(如API、数据库)扩展能力边界。
如果跟某个“东西”交互,如何判断交互的“东西”是大模型还是智能体呢?能调用工具,就是智能体,不能调用工具,就是大语言模型。

如图,机器人大脑相当于大模型,只调用大模型,就只能告诉你怎么去做,但是如果能调用眼睛和手臂去完成堆叠的工作,这就是智能体。
5.2.4、核心要素4:规划决策(Planning)
规划决策:通过任务分解、反思与自省框架实现复杂任务处理。例如,利用思维连(Chain of Thought)将目标分解为子任务,并通过反馈优化决策。
5.2.5、核心要素5:行动(Action)
行动:实际执行决策的模块,涵盖软件接口操作(如自动订票)和物理交互(如机器人执行搬运)。比如:检索、推理、编程等。