玩转 AIGC:仅需三步,在 Mac 电脑部署本地大模型,打造私人 ChatGPT
。
今天分享的内容是 玩转 AIGC「2024」 系列文档中的 仅需三步,在 Mac 电脑打造个人 ChatGPT。
本文将详细介绍仅用三条命令在 M1 芯片的 Mac Pro 上部署本地大模型,实现私人的 ChatGPT。
1. 前提介绍
1.1 硬件介绍
- 型号: MacBook Pro
- 芯片:Apple M1(M1/M2/M3 任何芯片的都可以,越高端的性能越好)
- 内存: 16 G(内存越大越好,8G 也能体验,但是只能用小模型)
- 硬盘: 256 G(越大越好)
1.2 软件需求
所有软件都需要用 brew
安装,请确保电脑上已经正确安装配置了 brew
。
用 Mac 没有用过 brew
?请在终端执行下面的命令安装吧,你将开启一扇新的大门。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
提示: 上面的命令安装成功是有概率的,如果因网络问题导致安装失败,请参考[Homebrew 镜像使用帮助]
如果不喜欢或是不习惯使用命令行在 Mac 上安装软件,本文介绍的软件都有对应的 App 下载。可自行前往软件官网下载。
1.3 私人 ChatGpt 成员
- Ollama,大模型管理工具,下载运行各种量化后的 GGUF 格式的大模型
- 大模型,本文选择 qwen:14b。
- ChatBox,利用本地大模型实现聊天对话的工具
GGUF 是什么?
- GGUF(GPT-Generated Unified Format)是一种大模型文件格式
- 由著名开源项目 llama.cpp 创始人 Georgi Gerganov 提出并定义
- 是一种针对大规模机器学习模型设计的二进制格式文件规范,主要用于高效存储和交换大模型的预训练结果
GGUF 的主要优势在于,它能够将原始的大模型预训练结果经过特定优化后转换成这种格式,从而可以更快地被载入使用,并消耗更低的资源。
最为关键的一点是,它允许用户使用 CPU 来运行 LLM。 真正做到了,GPU 不够 CPU 来凑,但也不是什么 CPU 都有资格加入的。
2. 第一步:安装本地大模型管理工具
本地大模型的运行、管理工具种类繁多,比较有名且被各种 LLMOps 平台支持的有 Ollama、 LocalAI等。经过体验对比,我暂时选择了 Ollama。
Ollama 在 Mac 上的安装有三种方式:
- 在 Ollama 官网下载 Mac 安装包,手工安装
- 用 Docker 运行 Ollama(在 M1 以上芯片的 Mac 上不要用,体验不到 GPU 的快乐)
- 用 brew 命令行自动安装(简单方便,强烈推荐)
打开终端工具,执行下面的命令,安装 Ollama。
- 安装命令
brew install ollama --cask
- 正确的安装结果如下
MacBook-Pro at ~ ❯ brew install ollama --cask
==> Downloading https://github.com/ollama/ollama/releases/download/v0.1.32/Ollama-darwin.zip
==> Downloading from https://objects.githubusercontent.com/github-production-release-asset-2e65be/658928958/3e980350-d263-484d-83b2-765009b8c2c
######################################################################################################################################## 100.0%
==> Installing Cask ollama
==> Moving App 'Ollama.app' to '/Applications/Ollama.app'
==> Linking Binary 'ollama' to '/opt/homebrew/bin/ollama'
🍺 ollama was successfully installed!
安装成功后,Mac 的启动台里也会有一个 Ollama 应用的图标,可以在应用启动台中点击图标启动 Ollama。
3. 第二步:下载本地大模型
本地大模型的选择太多了,2024 年各种开源大模型真的是如雨后春笋般涌出,各大知名厂商都开源了自己的大模型产品。
目前关注热度比较高的开源大模型有 Llama 3、Phi-3、Gemma、Mistral、qwen。
Ollama 官方列出了支持的部分大模型列表如下,完整的可以去 [Ollama Models 列表]查找。
qwen 是阿里开源的大模型。在中文支持和理解上理论上应该更好。所以,本文以 qwen:14b 为例进行演示。大家可以自己体验对比其他模型,选择更适合自己的。
由于我的电脑是 16G 内存,理论上可以拥有 16G 显存,理论上可以驾驭量化后的 GGUF 格式的 14B 模型。你可以根据自己电脑的内存大小选择合适的模型,B 的数值越大越好,同样对显存、内存容量的要求也就越高。
打开终端工具,执行下面的命令,启动 Ollama
- 启动命令
ollama serve
- 正确的结果如下
$ ollama serve [14:53:09]
time=2024-05-02T14:53:12.883+08:00 level=INFO source=images.go:817 msg="total blobs: 0"
time=2024-05-02T14:53:12.883+08:00 level=INFO source=images.go:824 msg="total unused blobs removed: 0"
time=2024-05-02T14:53:12.883+08:00 level=INFO source=routes.go:1143 msg="Listening on [::]:11434 (version 0.1.32)"
time=2024-05-02T14:53:12.884+08:00 level=INFO source=payload.go:28 msg="extracting embedded files" dir=/var/folders/zf/_67hsc3138917m4jbddhh94h0000gn/T/ollama1535104819/runners
time=2024-05-02T14:53:12.911+08:00 level=INFO source=payload.go:41 msg="Dynamic LLM libraries [metal]"
额外再打开一个终端,执行下面的命令,下载并运行 qwen 大模型
- 启动命令
ollama run qwen:14b
- 下载过程(前期速度杠杠滴,最后的时候会慢下来)
➞ ollama run qwen:14b
pulling manifest
pulling de0334402b97... 48% ▕█████████████████████████████████████ ▏ 3.9 GB/8.2 GB 82 MB/s 51s
- 整个下载过程
➞ ollama run qwen:14b
pulling manifest
pulling de0334402b97... 100% ▕███████████████████████████████████████████████████████████████████████████████▏ 8.2 GB
pulling 7c7b8e244f6a... 100% ▕███████████████████████████████████████████████████████████████████████████████▏ 6.9 KB
pulling 1da0581fd4ce... 100% ▕███████████████████████████████████████████████████████████████████████████████▏ 130 B
pulling f02dd72bb242... 100% ▕███████████████████████████████████████████████████████████████████████████████▏ 59 B
pulling 007d4e6a46af... 100% ▕███████████████████████████████████████████████████████████████████████████████▏ 484 B
verifying sha256 digest
writing manifest
removing any unused layers
success
>>> 你是谁
我是通义千问,由阿里云开发的人工智能助手。我可以回答各种问题、提供信息和与用户进行对话。有什么可以帮到你的吗?
>>> Send a message (/? for help)
说明: 运行成功后会有一个命令行的对话窗口,可以在命令行体验大模型的响应。
默认的模型下载存放路径为 ~/.ollama/models
,可以配置环境变量,改变模型的存储路径。
将下面的内容加入 ~/.zshrc
,然后再启动 Ollama。
export OLLAMA_MODELS="自定义路径"
- 查看已下载的大模型
MacBook-Pro at ~ ❯ ollama list
NAME ID SIZE MODIFIED
qwen:14b 80362ced6553 8.2 GB 2 hours ago
4. 第三步: 安装前端 ChatBox
本地大模型的前端管理工具包括各种 _LLMOps_平台,可选择性太多太多了,真的是让人眼花缭乱。
Ollama 官方也列出了很多适配的 Web 或是 Desktop 形式的前端工具。
本文为了快速体验本地大模型的对话效果,选择了上手比较简单的 Chatbox,其他的工具我们会在后续的系列文档中逐渐介绍。
打开终端工具,执行下面的命令,安装 ChatBox
MacBook-Pro at ~ ❯ brew install chatbox --cask
==> Downloading https://github.com/Bin-Huang/chatbox/releases/download/v1.3.5/Chatbox-1.3.5-arm64.dmg
==> Downloading from https://objects.githubusercontent.com/github-production-release-asset-2e65be/610260322/12174856-6f0b-425a-a294-89c94d011a8
######################################################################################################################################## 100.0%
==> Installing Cask chatbox
==> Moving App 'chatbox.app' to '/Applications/chatbox.app'
🍺 chatbox was successfully installed!
安装成功后,Mac 的启动台里也会有一个 ChatBox 应用的图标,可以在应用启动台中点击图标启动 ChatBox。
接下来我们启动 ChatBox,在图形化窗口体验 qwen 大模型的对话推理能力。
第一次启动 Chatbox 需要按照提示做一些初始化配置。
点击「开始设置」
设置模型
- AI 模型提供方,选择 Ollama
- API 域名,输入
http://localhost:11434
- 模型,选择qwen:14b,API 域名设置正确后,模型下拉列表会显示所有可用的模型。
- 严谨与想象(Temperature)使用默认值
设置「显示」
全部设置完成后点击「保存」按钮。
接下来我们使用几个测试题,考验一下 qwen:14b 的推理能力。
在 Chatbox 的 Just chat 对话窗口中提问。
问题1:鲁迅为什么打周树人。
答:貌似还可以。
问题2(弱智吧):我爸妈结婚为什么不邀请我?
答:胡说八道,唉。据传 qwen:32b 能准确回答该问题,无奈我的丐版设备跑不起来。
问题3(弱智吧):网吧能上网,弱智吧为什么不能上弱智?
答:貌似也还行
如何学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓