前言
这两天使用Deepseek App的时候,总是提示“服务器繁忙”。那我就想自己本地化部署一下这个模型,看看效果怎么样。
概念介绍
- deepseek 是一家量化公司开发的大模型,特点主要是他们的训练成本降低很多,据说是1/10;然后是深度推理效果比较好。
- ollama 是一个快速部署LLM大模型的工具。
- dify 是开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力,轻松构建和运营生成式 AI 原生应用。比 LangChain 更易用。
我的部署环境
Ubuntu 服务器 + 1块 4090 显卡(24G显存)
部署步骤
1. 安装ollama
在ollama官网,选择操作系统,下载ollama应用程序并安装
选择下载。
选择Linux 平台,拷贝代码。在终端中执行命令。
curl -fsSL https://ollama.com/install.sh | sh
查看ollama 支持的命令
启动ollama
ollama serve
访问 http://localhost:11434 即可使用 Ollama。
如果需要设置为启动服务,可以使用如下方法。
创建服务文件/etc/systemd/system/ollama.service:
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"
[Install]
WantedBy=default.target
其中这两行是确保可以局域网访问,而不是仅限于当前服务器内部访问。
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"
sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama
2. 部署deepseek模型
ollama 官网搜索模型
根据自己的显存大小选择模型。
| 模型名称 | 参数规模(b) | 显存需求(FP16,GB) | 显存需求(4位量化,GB) |
|---|---|---|---|
| 7b模型 | 7 | 16 | 4 |
| 16b模型 | 16 | 37 | 9 |
| 67b模型 | 67 | 154 | 38 |
| 236b模型 | 236 | 543 | 136 |
| 671b模型 | 671 | 1543 | 386 |
拷贝命令执行,默认是7B的。
ollama run deepseek-r1
模型下载完毕之后就进入对话模式了。
可以退出对话界面。
/bye
查看正在运行的模型。
3. 部署dify 提供聊天页面
这里不再介绍这部分内容了,可以参考 Ubuntu部署Dify教程
基本上就是docker + docker-comose 可以算是一键部署了。
安装完毕进入之后,就是下面这个样子。
4. dify 配置 deepseek模型链接
选择右上角的用户名,点击设置。
找到模型供应商 -> ollama
添加模型,配置URL 和模型名称,保存。
工作室 -> 创建应用
选择聊天应用,输入名称,创建。
右上角选择模型。
发布应用
进入聊天页面
可以愉快地聊天了。
5. 查看显存使用情况(非必需)
nvidia-smi
不聊天的时候,32b 模型是21.7G的样子,7B模型是5.5G的样子。考虑到对话的时候,可能需要更多的显存,实际可能大于这个值。