程序员轻松入门:手把手教你本地搭建运行大模型
本文针对想学习大模型但受限于电脑配置的同学,介绍了如何使用MacBook Pro本地搭建大模型。主要内容包括模型量化的概念和作用,推荐使用Ollama大模型管理工具一键部署量化后的LLM模型(以Llama3.1为例),并详细阐述了通过Docker和Open WebUI实现本地Web UI管理调试大模型的步骤。教程旨在降低AI学习门槛,帮助读者迈出AI技术学习第一步。
本文针对想学习大模型但受限于电脑配置的同学,介绍了如何使用MacBook Pro本地搭建大模型。主要内容包括模型量化的概念和作用,推荐使用Ollama大模型管理工具一键部署量化后的LLM模型(以Llama3.1为例),并详细阐述了通过Docker和Open WebUI实现本地Web UI管理调试大模型的步骤。教程旨在降低AI学习门槛,帮助读者迈出AI技术学习第一步。
前排提示,文末有大模型AGI-CSDN独家资料包哦!
背景
随着行业内越来越多的AI产品落地,很多同学都对AI技术产生浓厚的兴趣,但苦于目前动作几十G上百G的大模型,并且手上的消费级电脑也无法满足各种模型部署运行要求,本文就是基于此背景,介绍如何使用Mac Book Pro本地搭建大模型的入门教程,希望能帮助到对AI有兴趣的同学。毕竟不管什么岗位,如果能自己搭个Demo进行AI相关的学习,也不失为一种AI入门方式。
纸上谈兵终觉浅,绝知此事要躬行,正好借着9月OpenAI最新发布的o1大模型,写一个本地模型部署指南,本人电脑是Mac Book Pro M3 18G机器搭建,M1、M2的机器也是可以的。
方案选择
首先解释一下什么是模型量化
- 模型量化是做什么的:
模型量化是将浮点数值转化为定点数值,同时尽可能减少计算精度损失的方法。 - 为什么要做模型量化:
模型量化既能减少资源消耗,也能提高运行速度,使大规模推理服务的性能提升。 - 对哪些数值做量化:
可以对模型参数(weight)、激活值(activation)或者梯度(gradient)做量化。 - 常见的量化精度有哪些:
通常可以将模型量化为 int4、int8 等整型数据格式。
目前部署大模型的方式,基本分为两种方案:
- 下载原始大模型,然后通过相应的模型量化脚本,将量化后的模型进行本地环境部署,此种方式,下载原始模型费时费力,量化后的模型也不见电脑能带的动,需要不断调整量化参数quantization types,对新人不太友好
- 通过Ollama大模型管理工具,一键式部署量化后的LLM模型,本文也是主要介绍此种部署方式,直接通过的Ollama拉取的llama3.1模型信息如下,通过Open WebUI部署运行非常轻松,开着IDE+几十个Chrome页面毫无压力
量化后的模型信息
运行效果

Llama3.1
Llama3.1是Meta公司在7月最新发布的LLM模型,分为三个版本8B、70B、405B,有兴趣的同学可以直接去官网了解。
llama.meta.com/
github.com/meta-llama/…

Ollama
Ollama是一个开源的大模型管理工具,它提供了丰富的功能,包括模型的训练、部署、监控等。 通过Ollama,你可以轻松地管理本地的大模型,提高模型的训练速度和部署效率。 此外,Ollama还支持多种机器学习框架,如TensorFlow、PyTorch等,使得你可以根据自己的需求选择合适的框架进行模型的训练
官网:ollama.com/

下载安装Ollama
下载安装后,在终端运行ollama -v
能正常显示版本号即为安装成功
下载安装量化后的Llama3.1
确定Ollama已安装成功后,在终端运行如下代码,Ollama首次会将模型远程下载,并在下载完成后启动ollama run llama3.1
下载过程还比较顺利,下载完成后,终端会启动大模型,可以直接在终端进行对话问答了,是不是很简单?
但在终端里面进行AI问答,看起来没那么方便,所以我们可以通过Docker+Open WebUI的方案来实现本地Web UI管理调试大模型

Docker
Docker Desktop 是 Docker 提供的一个方便的工具,适用于 Windows 和 macOS 平台。它包含了 Docker Engine、Docker CLI 客户端、Docker Compose、Kubernetes 和其他工具,使开发人员可以在本地计算机上使用 Docker 容器进行开发和测试。
官网:www.docker.com/products/do…

Open-WebUI
Open WebUI是一个可扩展、功能丰富、用户友好的自托管WebUI,旨在完全离线操作。 它支持各种LLM运行程序,包括Ollama和OpenAI兼容的API。
官网:www.openwebui.com/

具体特性可以查看
github:github.com/open-webui/…
当Docker安装完成后,可以通过命令在线安装open-webui,但安装之前,需要注意的是,最好在docker设置中配置镜像地址,否则下载速度非常感人,无法预计什么时候能下载成功
配置registry-mirrors

直接覆盖即可,我也没测试其中的镜像速度,如果自己有稳定的镜像地址,可以自行替换{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "experimental": false, "registry-mirrors": [ "https://hub-mirror.c.163.com", "https://docker.m.daocloud.io", "https://ghcr.nju.edu.cn", "https://mirror.baidubce.com", "http://dockerhub.azk8s.cn", "https://mirror.ccs.tencentyun.com", "https://docker.mirrors.ustc.edu.cn", "https://docker.nju.edu.cn", "https://2h3po24q.mirror.aliyuncs.com" ] }
安装命令
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
在经过了漫长的等待后,是的,你没看错,用了镜像也不怎么快,没用镜像之前基本就是失败。。。

启动

- 安装完成后,即可在Docker中启动WebUI了,等待片刻后,浏览器输入http://localhost:3000/即可进入 ,如果需要提供给其他局域网中的小伙伴访问,可以找到自己的局域网IP地址,如 30.7.229.xx:3000/
- 首次进入的时候,需要注册账户,因为注册逻辑是在本地,只需要记住自己的账户密码即可,无需要验证码,首次注册的账号是管理员账号
- 进行后选择之前下载的Llama3.1模型后,即可开始模型的测试了

最后附几道测试题结果,目前看起来,Llama3.1的中文理解推理能力还是有待提升的

读者福利:倘若大家对大模型感兴趣,那么这套大模型学习资料一定对你有用。
针对0基础小白:
如果你是零基础小白,快速入门大模型是可行的。
大模型学习流程较短,学习内容全面,需要理论与实践结合
学习计划和方向能根据资料进行归纳总结
包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓


👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

👉大模型视频和PDF合集👈
这里我们能提供零基础学习书籍和视频。作为最快捷也是最有效的方式之一,跟着老师的思路,由浅入深,从理论到实操,其实大模型并不难。

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
更多推荐

所有评论(0)