《开源大模型食用指南》适合中国宝宝的部署教程,基于Linux环境快速部署开源大模型
本项目是一个围绕开源大模型、针对国内初学者、基于 AutoDL 平台的中国宝宝专属大模型教程,针对各类开源大模型提供包括环境配置、本地部署、高效微调等技能在内的全流程指导,简化开源大模型的部署、使用和应用流程,让更多的普通学生、研究者更好地使用开源大模型,帮助开源、自由的大模型更快融入到普通学习者的生活中。
本项目的主要内容包括:
-
基于 Linux 平台的开源 LLM 环境配置指南,针对不同模型要求提供不同的详细环境配置步骤;
-
针对国内外主流开源 LLM 的部署使用教程,包括 LLaMA、ChatGLM、InternLM 等;
-
开源 LLM 的部署应用指导,包括命令行调用、在线 Demo 部署、LangChain 框架集成等;
-
开源 LLM 的全量微调、高效微调方法,包括分布式全量微调、LoRA、ptuning 等。
什么是大模型?
大模型(LLM)狭义上指基于深度学习算法进行训练的自然语言处理(NLP)模型,主要应用于自然语言理解和生成等领域,广义上还包括机器视觉(CV)大模型、多模态大模型和科学计算大模型等。
百模大战正值火热,开源 LLM 层出不穷。如今国内外已经涌现了众多优秀开源 LLM,国外如 LLaMA、Alpaca,国内如 ChatGLM、BaiChuan、InternLM(书生·浦语)等。开源 LLM 支持用户本地部署、私域微调,每一个人都可以在开源 LLM 的基础上打造专属于自己的独特大模型。
然而,当前普通学生和用户想要使用这些大模型,需要具备一定的技术能力,才能完成模型的部署和使用。对于层出不穷又各有特色的开源 LLM,想要快速掌握一个开源 LLM 的应用方法,是一项比较有挑战的任务。
本项目旨在首先基于核心贡献者的经验,实现国内外主流开源 LLM 的部署、使用与微调教程;在实现主流 LLM 的相关部分之后,我们希望充分聚集共创者,一起丰富这个开源 LLM 的世界,打造更多、更全面特色 LLM 的教程。星火点点,汇聚成海。
项目受众
本项目适合以下学习者:
-
想要使用或体验 LLM,但无条件获得或使用相关 API;
-
希望长期、低成本、大量应用 LLM;
-
对开源 LLM 感兴趣,想要亲自上手开源 LLM;
-
NLP 在学,希望进一步学习 LLM;
-
希望结合开源 LLM,打造领域特色的私域 LLM;
-
以及最广大、最普通的学生群体。
项目规划及进展
本项目拟围绕开源 LLM 应用全流程组织,包括环境配置及使用、部署应用、微调等,每个部分覆盖主流及特点开源 LLM:
项目地址
https://github.com/datawhalechina/self-llm?tab=readme-ov-file
已支持模型
-
Llama3_1-8B-Instruct
- Llama3_1-8B-Instruct FastApi 部署调用
- Llama3_1-8B-Instruct langchain 接入
- Llama3_1-8B-Instruct WebDemo 部署
- Llama3_1-8B-Instruct Lora 微调
-
Gemma-2-9b-it
- Gemma-2-9b-it FastApi 部署调用
- Gemma-2-9b-it langchain 接入
- Gemma-2-9b-it WebDemo 部署
- Gemma-2-9b-it Peft Lora 微调
-
Yuan2.0
- Yuan2.0-2B FastApi 部署调用
- Yuan2.0-2B Langchain 接入
- Yuan2.0-2B WebDemo部署
- Yuan2.0-2B vLLM部署调用
- Yuan2.0-2B Lora微调
-
Yuan2.0-M32
- Yuan2.0-M32 FastApi 部署调用
- Yuan2.0-M32 Langchain 接入
- Yuan2.0-M32 WebDemo部署
-
DeepSeek-Coder-V2
- DeepSeek-Coder-V2-Lite-Instruct FastApi 部署调用
- DeepSeek-Coder-V2-Lite-Instruct langchain 接入
- DeepSeek-Coder-V2-Lite-Instruct WebDemo 部署
- DeepSeek-Coder-V2-Lite-Instruct Lora 微调
-
哔哩哔哩 Index-1.9B
- Index-1.9B-Chat FastApi 部署调用
- Index-1.9B-Chat langchain 接入
- Index-1.9B-Chat WebDemo 部署
- Index-1.9B-Chat Lora 微调
-
Qwen2
- Qwen2-7B-Instruct FastApi 部署调用
- Qwen2-7B-Instruct langchain 接入
- Qwen2-7B-Instruct WebDemo 部署
- Qwen2-7B-Instruct vLLM 部署调用
- Qwen2-7B-Instruct Lora 微调
-
GLM-4
- GLM-4-9B-chat FastApi 部署调用
- GLM-4-9B-chat langchain 接入
- GLM-4-9B-chat WebDemo 部署
- GLM-4-9B-chat vLLM 部署
- GLM-4-9B-chat Lora 微调
-
Qwen 1.5
- Qwen1.5-7B-chat FastApi 部署调用
- Qwen1.5-7B-chat langchain 接入
- Qwen1.5-7B-chat WebDemo 部署
- Qwen1.5-7B-chat Lora 微调
- Qwen1.5-72B-chat-GPTQ-Int4 部署环境
- Qwen1.5-MoE-chat Transformers 部署调用
- Qwen1.5-7B-chat vLLM推理部署
- Qwen1.5-7B-chat Lora 微调 接入SwanLab实验管理平台
-
谷歌-Gemma
- gemma-2b-it FastApi 部署调用
- gemma-2b-it langchain 接入
- gemma-2b-it WebDemo 部署
- gemma-2b-it Peft Lora 微调
-
phi-3
- Phi-3-mini-4k-instruct FastApi 部署调用
- Phi-3-mini-4k-instruct langchain 接入
- Phi-3-mini-4k-instruct WebDemo 部署
- Phi-3-mini-4k-instruct Lora 微调
-
CharacterGLM-6B
- CharacterGLM-6B Transformers 部署调用
- CharacterGLM-6B FastApi 部署调用
- CharacterGLM-6B webdemo 部署
- CharacterGLM-6B Lora 微调
-
LLaMA3-8B-Instruct
- LLaMA3-8B-Instruct FastApi 部署调用
- LLaMA3-8B-Instruct langchain 接入
- LLaMA3-8B-Instruct WebDemo 部署
- LLaMA3-8B-Instruct Lora 微调
-
XVERSE-7B-Chat
- XVERSE-7B-Chat transformers 部署调用
- XVERSE-7B-Chat FastApi 部署调用
- XVERSE-7B-Chat langchain 接入
- XVERSE-7B-Chat WebDemo 部署
- XVERSE-7B-Chat Lora 微调
-
TransNormerLLM
- TransNormerLLM-7B-Chat FastApi 部署调用
- TransNormerLLM-7B-Chat langchain 接入
- TransNormerLLM-7B-Chat WebDemo 部署
- TransNormerLLM-7B-Chat Lora 微调
-
BlueLM Vivo 蓝心大模型
- BlueLM-7B-Chat FatApi 部署调用
- BlueLM-7B-Chat langchain 接入
- BlueLM-7B-Chat WebDemo 部署
- BlueLM-7B-Chat Lora 微调
-
InternLM2
- InternLM2-7B-chat FastApi 部署调用
- InternLM2-7B-chat langchain 接入
- InternLM2-7B-chat WebDemo 部署
- InternLM2-7B-chat Xtuner Qlora 微调
-
DeepSeek 深度求索
- DeepSeek-7B-chat FastApi 部署调用
- DeepSeek-7B-chat langchain 接入
- DeepSeek-7B-chat WebDemo
- DeepSeek-7B-chat Lora 微调
- DeepSeek-7B-chat 4bits量化 Qlora 微调
- DeepSeek-MoE-16b-chat Transformers 部署调用
- DeepSeek-MoE-16b-chat FastApi 部署调用
- DeepSeek-coder-6.7b finetune colab
- Deepseek-coder-6.7b webdemo colab
-
MiniCPM
- MiniCPM-2B-chat transformers 部署调用
- MiniCPM-2B-chat FastApi 部署调用
- MiniCPM-2B-chat langchain 接入
- MiniCPM-2B-chat webdemo 部署
- MiniCPM-2B-chat Lora && Full 微调
- 官方友情链接:面壁小钢炮MiniCPM教程
-
Qwen-Audio
- Qwen-Audio FastApi 部署调用
- Qwen-Audio WebDemo
通用环境配置
-
pip、conda 换源
-
AutoDL 开放端口
-
模型下载
- hugging face
- hugging face
- modelscope
- git-lfs
- Openxlab
-
Issue && PR
- Issue 提交
- PR 提交
- fork更新
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉大模型视频和PDF合集👈
观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
文章知识点与官方知识档案匹配,可进一步学习相关知识
相关文章:
《开源大模型食用指南》适合中国宝宝的部署教程,基于Linux环境快速部署开源大模型
本项目是一个围绕开源大模型、针对国内初学者、基于 AutoDL 平台的中国宝宝专属大模型教程,针对各类开源大模型提供包括环境配置、本地部署、高效微调等技能在内的全流程指导,简化开源大模型的部署、使用和应用流程,让更多的普通学生、研究者…...
体验教程:通义灵码陪你备战求职季
本场景将带大家体验在技术面试准备场景下,如何通过使用阿里云通义灵码实现高效的编程算法题练习 、代码优化、技术知识查询等工作,帮助开发者提升实战能力,更加从容地应对面试挑战。主要包括: 1、模拟题练习:精心挑选…...
(070)爬楼梯
思路:一次爬一个或者一次爬两个楼梯,终止条件,即是当n1或n2时,完成操作,当n>2时,总方法就等于一次爬一个楼梯的方法数加上一次爬两个楼梯的方法数。 解法一:递归解法 if(n 1)return 1;if(n 2)return 2…...
el-table 表格序号列前端实现递增,切换分页不从头开始
<el-table-column type"index" width"55" label"序号" :index"hIndex"> </el-table-column> 分页 <el-pagination size-change"handleSizeChange" current-change"handleCurrentChange"> <…...
NSSCTF-Web题目27(Nginx漏洞、php伪协议、php解析绕过)
目录 [HNCTF 2022 WEEK2]easy_include 1、题目 2、知识点 3、思路 [NSSRound#8 Basic]MyDoor 4、题目 5、知识点 6、思路 [HNCTF 2022 WEEK2]easy_include 1、题目 2、知识点 nginx日志漏洞执行系统命令 3、思路 打开题目,出现源码 题目要我们上传一个fi…...
分割损失:Dice vs. IoU
NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包 - 3D模型在线减面 - STL模型在线切割 对于医学影像分割…...
SpringBoot整合Juint,ssm框架
目录 SpringBoot整合Juint 1.导入相关的依赖 2.创建测试类,使用注解SpringBootTest SpringBoot整合ssm框架 1.使用脚手架创建Spring项目 2.修改pom.xml 我先修改了SpringBoot的版本,修改为2.3.10.RELEASE,因为SpringBoot版本太高会出现…...
基于supervisor制作基于环境变量配置的redis
背景: redis 的镜像很多很多,但都需要直接修改配置文件,不符合我们公司当前环境变量解决一切容易配置的思路。 材料: 1、CentOS-Base.repo [base] nameCentOS-$releasever enabled1 failovermethodpriority baseurlhttp://mirr…...
动态规划part01 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
509. 斐波那契数 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1 F(n) F(n - 1) F(n - 2),其中 …...
CSS实现图片边框酷炫效果
一、前言 我们在浏览一些网页时,经常会看到一些好看酷炫的元素边框效果(如下图),那么这些效果是怎么实现的呢?我们知道,一般的边框,要么是实线,要么是虚线(点状…...
遇到 MySQL 死锁问题如何解决?
终于来到死锁检查线程的第三步,可以解决死锁了。 作者:操盛春,爱可生技术专家,公众号『一树一溪』作者,专注于研究 MySQL 和 OceanBase 源码。 爱可生开源社区出品,原创内容未经授权不得随意使用࿰…...
Pyinstaller打包OSError: could not get source code【终极解决】
pyinstaller 打包的时候,发现只要是torch.jit.script装饰的函数,会报以下错误: Traceback (most recent call last):File "torch/_sources.py", line 25, in get_source_lines_and_fileFile "inspect.py", line 1123, i…...
【计算机毕业设计】707高校宿舍管理系统
🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板ÿ…...
从C++看C#托管内存与非托管内存
进程的内存 一个exe文件,在没有运行时,其磁盘存储空间格式为函数代码段全局变量段。加载为内存后,其进程内存模式增加为函数代码段全局变量段函数调用栈堆区。我们重点讨论堆区。 托管堆与非托管堆 C# int a10这种代码申请的内存空间位于函…...
Linux进程间通信--IPC之无名管道
进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams支持不同主机上的两个进程的IPC。...
Oracle19c数据库system密码锁定
一、在oracle 19c数据库中,cdb中system用户被锁定,locked 二、所在的pdb中的system用户状态是正常的,但不可用,连接的时候提示账号已锁定 三、解决 在cdb中将system用户解锁。 alter user system account unlock;...
java之hashCode() 方法和 equals(Object obj) 方法之间的关系
1、 hashCode() 方法和 equals(Object obj) 在Java中,hashCode() 方法和 equals(Object obj) 方法之间的关系是紧密相连的,特别是在使用基于哈希的集合(如 HashSet、HashMap、HashTable 等)时。这两个方法共同决定了对象在哈希表…...
首届「中国可观测日」圆满落幕
首届中国可观测日(Observability Day)在上海圆满落幕,为监控观测领域带来了一场技术盛宴。作为技术交流的重要平台,此次活动不仅促进了观测云与亚马逊云科技之间的深化合作,更标志着双方共同推动行业发展的重要里程碑。…...
[Docker][Docker NetWork][下]详细讲解
目录 1.网络管理命令1.docker network creatre2.docker network inspect3.docker network connect4.docker network disconnect5.docker network prune6.docker network rm7.docker network ls 2.docker bridge 详解0.基本概念1.默认 bridge2.自定义 bridge3.DNS解析4.端口暴露…...
安卓系统在未来如何更好地解决隐私保护与数据安全的问题?
安卓系统可以通过以下方式更好地解决隐私保护与数据安全的问题: 强化权限控制:安卓系统可以进一步加强对应用程序权限的管理,确保用户能够清楚地知道应用程序需要哪些权限,并给予用户更多的控制权,例如允许用户选择性地…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
SQL注入篇-sqlmap的配置和使用
在之前的皮卡丘靶场第五期SQL注入的内容中我们谈到了sqlmap,但是由于很多朋友看不了解命令行格式,所以是纯手动获取数据库信息的 接下来我们就用sqlmap来进行皮卡丘靶场的sql注入学习,链接:https://wwhc.lanzoue.com/ifJY32ybh6vc…...
Yii2项目自动向GitLab上报Bug
Yii2 项目自动上报Bug 原理 yii2在程序报错时, 会执行指定action, 通过重写ErrorAction, 实现Bug自动提交至GitLab的issue 步骤 配置SiteController中的actions方法 public function actions(){return [error > [class > app\helpers\web\ErrorAction,],];}重写Error…...
欢乐熊大话蓝牙知识17:多连接 BLE 怎么设计服务不会乱?分层思维来救场!
多连接 BLE 怎么设计服务不会乱?分层思维来救场! 作者按: 你是不是也遇到过 BLE 多连接时,调试现场像网吧“掉线风暴”? 温度传感器连上了,心率带丢了;一边 OTA 更新,一边通知卡壳。…...
