赞
踩
LLM大模型类型介绍
Base模型和Chat模型
我们通常会看到某模型研发机构开源了base模型和chat模型,那base模型和chat模型有什么区别呢?
首先,所有的大语言模型(LLM)的工作方式都是接收一些文本,然后预测最有可能出现在其后面的文本。
base模型,也就是基础模型,是在海量不同文本上训练出来的预测后续文本的模型。后续文本未必是对指令和对话的响应。
chat模型,也就是对话模型,是在base基础上通过对话记录(指令-响应)继续做微调和强化学习,让它接受指令和用户对话时,续写出来的是遵循指令的,人类预期的assistant的响应内容。
图片来源:RAG vs Finetuning — Which Is the Best Tool to Boost Your LLM Application?
多模态LLM将文本和其他模态的信息结合起来,比如图像、视频、音频和其他感官数据,多模态LLM接受了多种类型的数据训练,有助于transformer找到不同模态之间的关系,完成一些新的LLM不能完成的任务,比如图片描述,音乐解读,视频理解等。
图片来源:ONELLM
LLM具备agent大脑的能力,与若干关键组件协作,包括,
规划(planning):子目标拆解,纠错,反思和完善。
记忆(Memory):短期记忆(上下文,长窗口),长期记忆(通过搜索或者向量引擎实现)
工具使用(tool use):模型学习调用外部API获取额外的能力。
Code模型在模型的预训练和SFT中加入了更多的代码数据占比,在代码的一系列任务,比如代码补齐,代码纠错,以及零样本完成编程任务指令。同时,根据不同的代码语言,也会有python,java等更多的专业语言代码模型。
大语言模型是根据跨学科的海量的文本数据训练而成的,这也让大语言模型被大家认为最接近“AGI”的人工智能。然而,针对大语言模型,我们希望更好的使用LLM,让LLM更好的遵循我们的指令,按照我们可控的方式和特定行业的知识输出答案。
如下的两种方式可以用来参考:
模型推理指利用训练好的模型进行运算,利用输入的新数据来一次性获得正确结论的过程。
来源:"understanding-how-llm-inference-works-with-llama-cpp"
参照图,流程如下:
分词器将提示拆分为标记列表。根据模型的词汇表,某些单词可能会被拆分为多个标记。每个令牌都由一个唯一的数字表示。
每个数字标记都会转换为embedding向量。embedding向量是固定大小的向量,以 LLM 更有效处理的方式表示标记。所有embedding一起形成embedding矩阵。
嵌入矩阵用作Transformer的输入。Transformer 是一个神经网络,是LLM的核心。Transformer 由多层layer组成。每层都采用输入矩阵并使用模型参数对其执行各种数学运算,最值得注意的是self-attention机制。该层的输出用作下一层的输入。
最终的神经网络将 Transformer 的输出转换为logits。每个可能的下一个标记都有一个相应的 logit,它表示该标记是句子“正确”延续的概率。
使用多种采样技术之一从 logits 列表中选择下一个标记。
所选token作为输出返回。要继续生成token,请将所选令牌附加到步骤 (1) 中的令牌列表,然后重复该过程。这可以继续下去,直到生成所需数量的token,或者 LLM 发出特殊的流结束 (EOS) 令牌。
prompt(提示词)是我们和LLM互动最常用的方式,我们提供给LLM的Prompt作为模型的输入,比如“使用李白的口吻,写一首描述杭州的冬天的诗”,开源大模型引入了system消息和人工prompt的概念,可以根据提示提供更多的控制。
通过在prompt中增加一些输入和首选的优质输出的示例,可以增强LLM的回答效果,更好的遵循我们的指令。但是更多的示例,会收到LLM的上下文窗口的限制,更多的token也会增加算力的消耗,也会影响LLM的响应速度。
大型语言模型 (LLM) 演示显着的能力,但面临诸如此类的挑战:幻觉、过时的知识以及不透明、无法追踪的推理过程。检索增强生成 (RAG)通过整合来自外部数据库的知识成为一个有前途的解决方案,这增强了模型的准确性和可信度,特别是对于知识密集型任务,并且允许知识的不断更新和整合特定领域的信息。RAG协同作用将LLM的内在知识与广泛的、外部数据库的动态存储库。
微调是我们向开源的LLM的CKPT提供更多的数据,使他具备额外的知识,或者改变他的一些原来的生成结果。
微调会改变模型的权重,并可以更好的控制模型的生成结果。对比few-shot prompting的方式,也可以解决通过few-shot prompting方式带来的token消费高,模型响应速度慢,以及上下文窗口不够的问题。
微调也会产生一些意向不到的结果,并有可能导致模型的通用能力下降,所以需要客观的评估模型微调的结果。
模型量化是使用低精度数据类型(例如 8 位整数 (int8))而不是传统的 32 位浮点 (float32) 表示来表示模型中的权重、偏差和激活的过程。通过这样做,它可以明显减少推理过程中的内存占用和计算需求,从而能够在资源受限的设备上进行部署。模型量化在计算效率和模型精度之间取得微妙的平衡。目前主要使用的LLM开源量化工具主要有:bnb,GPTQ,AWQ
float32到float16的过程-来源:LLM Series - Quantization Overview
LLM评估技术是研究和改进LLM的关键环节。LLM的评估是一项复杂的任务,需要考虑多个方面的评估维度和任务类型,如文本对话、文本生成、多模态场景、安全问题、专业技能(coding/math)、知识推理等。
LM评估通常可以人工评估和自动评估两大类。其中,自动评估(Automatic evaluation)技术又可以分为rule-based和model-based的方式。其中,rule-based主要面向客观题评价,评测题目通常包含标准答案;model-based方法主要用于评价主观题,如复杂知识推理、多轮会话、文本生成等,通过专家模型(Expert model)来评价目标LLM的生成效果。
来点星社区的大语言模型LLM支持将模型托管在服务器或者云上,并创建API接口或者Web应用提供给用户与模型交互。
1.可以通过简单的选择0代码的方式,即可部署来点星社区的模型到云上并生成供应用程序使用的API接口,支持弹性扩缩容和按需调用。
2.华为云的sdk,来点星社区和华为云产品合作,支持通过python SDK在云上部署模型。
Modelscope AgentFabric是一个交互式智能体框架,用于方便地创建针对各种现实应用量身定制智能体。AgentFabric围绕可插拔和可定制的LLM构建,并增强了指令执行、额外知识检索和利用外部工具的能力。AgentFabric提供的交互界面包括:
⚡ 智能体构建器:一个自动指令和工具提供者,通过与用户聊天来定制用户的智能体
⚡ 用户智能体:一个为用户的实际应用定制的智能体,提供构建智能体或用户输入的指令、额外知识和工具
⚡ 配置设置工具:支持用户定制用户智能体的配置,并实时预览用户智能体的性能
作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。
但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的 AI大模型资料
包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
所有资料 ⚡️ ,朋友们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/1004756
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。