1
什么是大模型
从1950年图灵提出“图灵测试”(主要用来评估机器是否能够表现出与人类相当的智能行为)以来,人类对人工智能的探索从未停止过,其间有高峰也有寒冬,最终发展成人工智能的三个学派。
1. 符号主义学派
符号主义强调逻辑推理和形式化的方法,通过逻辑规则和算法来解决问题,符号主义学派擅长解决那些可以被明确定义和形式化的问题,主要运用于最短路径规划、下棋、定理证明等。
符号主义主要有以下弊端:
-
符号主义依赖于明确的规则和逻辑推理,但在现实世界中,很多情况是模糊不清的,存在不确定性。
-
随着问题复杂度的增加,符号主义系统的规模也会变得非常庞大,这使得维护和更新系统变得困难。
-
符号主义系统通常是静态的,一旦设计完成就很难适应环境的变化。
-
符号主义方法可能涉及复杂的搜索过程,这会导致计算效率低下。
2. 行为主义学派
行为主义学派强调可观察的行为,而不是内部的状态或知识表示。智能行为是在与环境的交互中展现出来的,而不是通过内部的推理或知识处理。行为主义学派借鉴了控制论原理,强调感知-动作型控制系统的重要性,主要用于移动机器人、自动驾驶等领域。
行为主义主要有以下弊端:
-
难以处理复杂任务
-
对环境过度依赖
-
难以模拟人类行为
-
缺乏长期记忆和学习
3. 连接主义学派
连接主义学派的研究重点在于模仿人脑的运行机制,特别是神经网络的结构和功能。连接主义强调信息的分布式存储和处理,这意味着信息不是储存在单个位置,而是分布在神经网络的各个部分。连接主义方法强调通过学习和适应来改进性能,这与人脑通过经验学习的方式类似,主要应用于图像识别、语音识别、自然语言处理。
连接主义主要有如下弊端:
-
解释性差:连接主义方法,尤其是深层神经网络,通常被视为“黑盒”模型,这意味着它们的内部工作机理难以解。
-
数据需求量大:训练高性能的连接主义模型通常需要大量的标注数据。
-
计算资源要求高:深度学习模型的训练和推理通常需要大量的计算资源。
-
训练时间长:训练大型神经网络可能需要很长时间,特别是当数据集很大时,这种长时间的训练周期可能不适合实时或快速迭代的应用场景。
通过以上说明,我根据自己的理解给大模型定义如下:
大模型是属于人工智能连接主义学派下的自然语言分支处理的一类模型,最初受人脑的神经元和神经突触的启发,模拟人类学习的方式(人脑的神经元100亿左右,要模拟这种行为参数就会很大,也是称为大模型的一种原因),通过经验(样本)学习,进而产生智能行为。学习过程可以简单通过下图进行说明:
图 1 大模型学习过程示意图
当然实际的模型是很复杂的,也是有很多层的,运用很多知识:比如通过激活函数使各个层直接产生非线性性,通过反向传播算法优化参数,通过丢弃法消除过拟合等。
知道了大模型的由来、定义和大概原理,下面就根据目前网上公开的ChatGLM3-6B模型进行实操下。6B指的是模型参数的大小,又可以简单理解为人类的大脑的神经元数量级别。B代表billion意思,6B也就是60亿参数。一般模型的参数大点是好的,大点可以通过一些方法消除过拟合,如果模型复杂度达不到学习东西的复杂度就很难调整了。
2
大模型的安装部署
1. Chatglm3安装
ChatGLM3是智谱AI和清华大学KEG实验室联合发布的新一代对话预训练模型。ChatGLM3-6B是ChatGLM3系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:
-
更强大的基础模型: ChatGLM3-6B的基础模型 ChatGLM3-6B-Base采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base具有在10B 以下的基础模型中最强的性能。
-
更完整的功能支持: ChatGLM3-6B采用了全新设计的 Prompt格式,除正常的多轮对话外,同时原生支持工具调用、代码执行和 Agent 任务等复杂场景。
-
更全面的开源序列: 除了对话模型ChatGLM3-6B外,还开源了基础模型 ChatGLM3-6B-Base、长文本对话模型 ChatGLM3-6B.32K。
ChatGLM3-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,60 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。
1.1安装环境
-
NVIDIA GeForce RTX 3090 显卡(安装CUDA Version: 12.3)
-
硬盘1T
-
Cpu16核
-
内存32g
-
Ubuntu 22.04.3
1.2依赖下载
-
在https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 下载Anaconda3-5.0.0-Linux-x86_64.sh
-
从魔塔社区下载chatglm3
https://www.modelscope.cn/models/ZhipuAI/chatglm3-6b/files 模型文件
- 从github 下载chatglm3程序
https://github.com/THUDM/ChatGLM3/
1.3安装步骤
-
执行./Miniconda3-latest-Linux-x86_64.sh 安装conda
-
安装完成后创建chatglm环境:
conda create -n chatglm3 python=3.11
- 进入chatglm3程序目录:
cd /home/secisland/sunzy/chatglm0604/ChatGLM3
- 切换到chatglm3 环境:
conda activate chatglm3
- 安装依赖:
pip install -r requirements.txt
- 到模型执行目录:
cd basic_demo/
- 修改模型参数位置:
vi cli_demo.py
将红圈部分调整为实际在魔塔社区下载的模型位置如下:
图 2 修改模型参数位置
执行python cli_demo.py 测试模型,模型运行成功如下:
图 3 执行测试模型
2. Llama3.1安装
Llama 3.1共发布8B、70B 和 405B 三个尺寸。能力全面提升,原生支持8种语言,最长上下文窗口128k。其中超大杯405B包含4050亿个参数,是首个“前沿级别开源AI模型”,也是近年来规模最大LLM之一。
在通用常识、可引导性、数学、工具使用和多语言翻译等广泛任务中足以对标GPT-4、Claude 3.5 Sonnet等领先闭源模型。
Llama 3.1 8B和70B也在老版本基础上进行了推理能力和安全性升级,除多语言和上下文扩展外,还支持更多诸如长文本总结、多语言对话代理和编程助手等高级用例。
主要亮点包括:
模型架构:延续Llama 3的标准解码器 transformer 架构,以最大化训练稳定性。
巨量数据:405B在15万亿token(相当于7500亿个单词)上训练,结合2500万合成数据微调。包含了更多的非英语资料、 “数学数据”和代码、以及最近的网络数据。
指令微调:后训练中每一轮都使用监督微调和直接偏好优化来迭代,并通过多轮对齐来改进模型的指令跟随能力和安全性,生成最终的聊天模型。
GPU规模:使用超过 1.6 万个 H100 GPU,时长高达惊人的3930万GPU小时。
预训练知识库:更新至2023年12月。
多语言支持:涵盖英语、法语、德语、印地语、意大利语、葡萄牙语、西班牙语和泰语
此外,所有Llama 3.1模型都可以使用第三方工具、应用程序和API来完成任务。支持零样本条件下的工具调用和操作,显著提升任务处理的灵活性和效率。
2.1安装环境
-
NVIDIA GeForce RTX 3090 显卡(安装CUDA Version: 12.3)
-
硬盘1T
-
Cpu16核
-
内存32g
-
Ubuntu 22.04.3
2.2 依赖下载
-
在https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 下载Anaconda3-5.0.0-Linux-x86_64.sh
-
从魔塔社区下载llama3.1模型文件:
https://hf-mirror.com/shenzhi-wang/Llama3.1-8B-Chinese-Chat(中文的模型文件)模型文件或者
- https://www.modelscope.cn/models/LLM-Research/Meta-Llama-3.1-8B-Instruct/(原版开源的模型文件)
2.3 安装测试
-
conda create -n llama3.1new python=3.12
-
conda activate llama3.1new
-
pip install requests
-
pip install tqdm
-
手工编写如下测试代码llamachat.py (一般会通过openapi形式提供服务,所以测试代码比较简单):
图 4 python llamachat.py
图 5 执行结果
实际用openai 形式 利用chatglm3的openai 修改如下两个文件:
3
总结
本期介绍了什么是大模型以及目前主流大模型Chatglm3、Llama3.1的安装部署。
读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费
】🆓
👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉大模型视频和PDF合集👈
观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费
】🆓