Ollama 初体验,本地部署大模型利器,小白也能在 M2 芯片的 Mac 上分分钟跑起来
本文发布于 微信公众号 CroWall,这里同步一下。
Ollama 是一个开源的大型语言模型(LLM)服务工具,旨在简化在本地运行大语言模型的过程,降低使用大语言模型的门槛。
有了 Ollama,即使是小白用户,也能分分钟在自己电脑上跑一个大模型玩玩。
我之前一直以为大模型需要强悍的 GPU 才能在本地跑,所以虽然一直在用 ChatGPT 之类的 AI 工具,但从没想过在本地运行一个——因为我只有一个 M2 芯片的 MacBook Air,一直觉得带不动。
前天帮朋友在他的游戏本上安装了一个图片生成的秋叶整合包,顺便了解了一些相关资料,发现现在的大模型只是在本地跑跑推理并不需要太多的资源,跟训练模型不是一个量级,m2芯片也能带得动,看来我还是图样图森破了。
今天就尝试了一下,发现现在的工具是真的太方便了,就记录一下安装体验过程,分享一波。
话不多说,下面正式开始操作,本文以我的 M2 芯片的 Mac 为例。
第一步,到官网下载 Ollama 应用程序。
官网地址 https://ollama.com
解压出 Ollama.app 移动到应用程序目录里,双击运行即可。
注意 Ollama 程序正常运行后其实是看不到界面的。
第二步,打开 终端(Terminal)应用,执行以下命令:
ollama run llama3.2
这个命令的意思就是让 Ollama 运行 llama3.2 模型。
该命令会自动下载并运行 llama3.2 模型,,这个模型大小为 2GB,所以第一次运行时需要等待几分钟(看你的网速快慢),等待模型下载完成后进入(后面再运行的时候,就很快进入了):
当然也可以使用其他模型,官网提供了很多模型,你可以根据你的偏好和硬盘大小选择。
第三步,到这里其实就已经可以认为完成了(快不快?是不是分分钟?),你可以直接在终端里对话了。
实际测试来看,llama3.2 虽然夹杂的英文单词比较多,但对中文的支持还是不错的。
让它以“码农已经是体力劳动了,只是大家当下还不能接受” 为题写一篇 800 字的文章,也是分分钟写完,效果还可以。
我发现它写出的文章中夹杂的英文单词太多,于是又让它“不要使用英文词汇,全部使用中文”,结果 Coding 不见了,其他单词还在。
当然,只是在终端里面跑差点意思,下面我们安装 Web 界面,这样就可以在浏览器里使用了。
这里我们使用的是 open-webui 这个项目,GitHub 上有 48.2k 的 Star(意思就是很火爆)。
我本来以为这个对于小白用户可能稍微有点难度,但发现官方封装了 pip 包,而 macOS 又是自带了 Python,所以也很简单。
Github 地址: https://github.com/open-webui/open-webui
第四步,安装 open-webui,打开一个新终端窗口,执行以下命令:
pip install open-webui
这个命令需要下载一大堆依赖包,所以运行时间也比较长。
如果你的 macOS 比较干净,没有使用 brew 安装过一些基于 Python 的应用,应该会比较顺利。
安装完后,使用下面的命令运行即可:
open-webui serve
运行后,默认是启动在 8080 端口,在浏览器中输入 http://127.0.0.1:8080 即可打开。
如果使用 pip 安装失败,就要考虑使用 docker 安装,否则一堆依赖搞环境要搞半天。
使用 docker 对于小白用户有点难度了,这里就不赘述了,有需要的直接到该项目的 GitHub 主页查看。
我就遇到了问题,所以直接使用 docker 运行了(下面的命令是使用 docker 连接本地的 ollama 跑,已经 pip 安装成功的请忽略):
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
点击开始使用,配置管理员账号:
进入主页:
可以看到已经自动连接到了 Ollama,运行的 llama3.2 模型也已经可以直接使用了。
那么怎么看连接的 Ollama 呢?隐藏得比较深:
可以看到,你也可以在这里填入 OpenAI 的 API 密钥,这样也可以把它当作一个 ChatGPT 客户端了。
open-webui 网页端的使用效果:
最后,如果你想获得更好的中文支持,可以到官网搜索一些中文的大模型,直接搜 Chinese 即可。
目前对阿里的通义千问支持也很好,有多个版本多个尺寸的模型可以选择,搜索 qwen 即可看到:
我看了下,对 qwen2.5-coder 这个模型比较感兴趣,毕竟说它擅长代码生成、代码推理和代码修复,以后没有网也可以开心写代码了。
不过这个就要让我的 JetBrains IDE 以及 Sublime 或 VS Code 直接连接到本地的 Ollama,这个今天就不研究了,下次继续搞。
实际运行中,llama3.2 占用的内存还是蛮低的,1个G左右,跑推理的时候,GPU 几乎能跑满,占用可达 90%,不过毕竟我这是个 M2,可以理解,而且生成的速度也蛮快的。
参考资料
- Ollama 官网 https://ollama.com/
- ollama-webui 项目 GitHub 主页 https://github.com/ollama-webui