玩转 AIGC:仅需三步,在 Mac 电脑部署本地大模型,打造私人 ChatGPT
使用 Docker 容器部署大模型
第三种方式是通过 Docker 容器直接运行本地大模型。
以下是具体步骤:
1. 安装 Docker 容器。如果您还没有安装,可以在终端中执行以下命令来安装它:
```bash
brew install docker
```
2. 配置 Docker,确保其可以与您的系统相互通信。打开 Docker 的配置文件(通常位于 `~/.docker/config.json`),并添加以下内容:
```json
{
"InsecureRegistries": ["
}
```
3. 启动 Docker 容器,使用以下命令:
```bash
sudo docker run -it --gpus all --shm-size=2gb \
-e OLLAMA_MODEL_PATH=
--name ollama-container
```
将上述命令中的 `
4. 检查容器是否运行成功。进入容器后,可以通过以下命令查看:
```bash
docker exec -it ollama-container bash
```
如果您看到一个提示信息表示本地大模型已经加载并运行,则说明 Docker 容器部署成功了。
通过这三步操作,您可以在Mac电脑上轻松部署和管理本地大模型。
在Mac上运行Ollama
1. 打开终端工具,输入以下命令安装Ollama:
```bash
brew install ollama --cask
```
2. 安装完成后,会在启动台中添加一个Ollama应用程序的图标。点击该图标即可启动Ollama。
3. 下载本地大模型
目前关注热度较高的开源大模型包括Llama 3、Phi-3、Gemma、Mistral、qwen等。Ollama官方列出了支持的部分大模型列表,完整的可以去Ollama Models列表查找。
Qwen 是阿里开源的大规模语言模型。在中文支持和理解上理论上应更为出色。因此,本文将以 Qwen:14B 为例进行演示。大家可以自行对比其他模型,选择最适合自己的。
由于我的电脑配备了 16GB 的内存,理论上可以拥有 16GB 显存,并且能够驾驭量化后的 GGUF 格式大小为 1.4GB 的 Qwen 模型。您可以根据您电脑的内存容量来选择合适的模型。B 的数值越大越好,对显存、内存容量的要求也就越高。
### 启动 Ollama
#### 启动命令
```sh
ollama serve
```
#### 正确的结果如下
```sh
$ 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 大模型
#### 启动命令
```sh
ollama run qwen:14b
```
下载过程(前期速度杠杠滴,最后的时候会慢下来)
```sh
$ 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
```
### 查看已下载的大模型
#### MacBook-Pro at ~ ❯ ollama list
```sh
NAME ID SIZE MODIFIED
qwen:14b 80362ced6553 8.2 GB 2 hours ago
```
### 第三步: 安装前端 ChatBox
本地大模型的前端管理工具包括各种 LLMOps平台,可选择性太多太多了,真的是让人眼花缭乱。Ollama 官方也列出了很多适配的 Web 或是 Desktop 形式的前端工具。
### 结论
启动成功后会有一个命令行对话窗口,可以在其中体验 Qwen 的响应。
默认模型下载存放路径为 ~/.ollama/models,可以配置环境变量,改变模型的存储路径。
为了快速体验本地大模型的对话效果,本文选择了一个上手相对简单的工具——Chatbox。其他工具将在后续文档中逐步介绍。
首先,在终端中执行以下命令进行安装:
```bash
brew install chatbox --cask
```
此命令会下载并安装 ChatBox,并将其移动到“/Applications/chatbox.app”。完成安装后,Mac的启动台将会出现一个ChatBox应用图标。用户可以通过点击该图标来启动ChatBox。
安装过程完成后,Mac的启动台也会添加一个ChatBox应用图标,方便用户随时使用。
在启动ChatBox时,首先需要开启图形界面来体验Qwen大模型的对话和推理能力。
初次使用ChatBox时,请按提示进行以下配置:
1. 点击“开始设置”按钮。在此过程中,您将看到一系列引导步骤。
2. 按照指示完成各项初始化任务,确保您的设备和环境符合系统要求。
3. 在完成所有必要设置后,再次点击“启动ChatBox”。
这样,您就可以与Qwen大模型进行对话了。
设置模型
您选择了 Ollama API,并设置了域名 http://localhost:11434。现在在模型下拉列表中,将列出您当前可选的所有模型。
对于 AI 模型设置,我们选择了一个名为 qwen:14b 的模型。确保您的 API 域名正确无误后,模型列表将会显示所有可用的模型。
为了保持一致性与灵活性,在输入温度参数时建议使用默认值。
设置「显示」
首先,在完成所有设置后,请点击“保存”按钮。
然后,我们使用几个测试题目来考验 Qwen:14B 的推理能力和理解能力。在 Chatbox 的 Just chat 对话窗口中提问。
问题 1:
鲁迅为什么被称为周树人?
这个问题确实让人为难,因为每个人的家庭情况都不相同。有些家庭可能觉得你的存在对他们没有特别的意义,或者他们认为你已经长大成人,不需要他们的关注。
不过,这并不意味着你的父母对你是不了解的。他们很可能会在某种程度上对你有所了解,并且即使不邀请你参加婚礼,也还是会关心和照顾你。
所以,尽管这个问题让人感到困惑,但请相信,你的家人一定也在乎着你。
问题3(弱智吧):
网吧能够上网,但弱智吧为何不能?
答:或许还可以。
这个问题似乎是在讨论网络环境中的不平等现象。在正常的互联网环境中,所有用户都有平等的使用权限和机会。然而,在某些特殊场合或群体中,如“弱智吧”,可能因为各种原因受到限制或不公平对待。这反映了现实生活中的一些社会不公和社会歧视问题。对于这些问题,我们需要更多的关注、理解和解决方案。
更多的能力测试,可以结合 chatbox 预置的提示词和自定义的 AI 搭档来体验。这将是一个学习和探索的过程。
以下是今天分享的内容:
1. **大模型与 ChatBox**:大模型是当前人工智能领域的前沿技术,而 ChatBox 则提供了预置的提示词和丰富的功能供用户尝试。通过结合这两个工具,我们可以更加深入地了解它们的工作原理和应用场景。
2. **Ollama 和 ChatBox**:Ollama 是一个非常强大的 AI 模型,它可以处理多种任务,包括对话生成、情感分析等。与 ChatBox 结合使用,可以使我们更好地理解和应用这些模型的能力。
**后续内容**:
我还会分享关于大模型和 Ollama 的更多内容,敬请期待。
免责声明:
- 笔者水平有限,尽管经过多次验证和检查,尽力确保内容的准确性,但仍可能存在疏漏之处。敬请业界专家大佬不吝指教。
- 本文所述内容仅通过实战环境验证测试,读者可学习、借鉴,但严禁直接用于生产环境。由此引发的任何问题,作者概不负责。
Get 本文实战视频(请注意,文档视频异步发行,请先关注)
B 站|运维有术
如果你喜欢本文,请分享、收藏、点赞、评论!持续关注 @运维有术,及时收看更多好文!
欢迎加入 「知识星球|运维有术」 ,获取更多的 Kubernetes、云原生运维等实战技能。未来运维生涯始终有我坐在你的副驾。
版权声明:
- 所有内容均属于原创,感谢阅读、收藏,转载请联系授权,未经授权不得转载。