高效AI部署实践:Docker + Ollama + qwen2.5-3b,轻松搞定模型部署
在AI应用中,将模型封装到Docker容器中是一种常见的做法,它可以简化部署流程、提高可移植性,并确保环境一致性。本文将详细介绍如何构建一个包含Ollama框架和qwen2.5-3B 模型的Docker镜像,并通过Docker Compose快速移植部署到离线环境!
·
在AI应用中,将模型封装到Docker容器中是一种常见的做法,它可以简化部署流程、提高可移植性,并确保环境一致性。本文将详细介绍如何构建一个包含Ollama框架和qwen2.5-3B 模型的Docker镜像,并通过Docker Compose快速移植部署到离线环境!
1 拉取ollama
# 拉取ollama
docker pull ollama/ollama
2 运行Ollama并下载模型
2.1 运行Ollama
# ollama镜像下载完成后,执行如下命令运行ollama
docker run -d --restart=always -p 11434:11434 --name ollama ollama/ollama
2.2 下载模型
# 进入容器
docker exec -it c81c97a47a52 bash
[root@node3 ~]# docker exec -it c81c97a47a52 bash
root@c81c97a47a52:/#
# 下载模型
ollama pull qwen2.5:3b
root@c81c97a47a52:/# ollama pull qwen2.5:3b
pulling manifest
pulling manifest
pulling 5ee4f07cdb9b... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 1.9 GB
pulling 66b9ea09bd5b... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 68 B
pulling eb4402837c78... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 1.5 KB
pulling b5c0e5cf74cf... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 7.4 KB
pulling 161ddde4c9cd... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 487 B
verifying sha256 digest
writing manifest
success
root@c81c97a47a52:/#
2.3 验证模型是否下载
# 执行如下命令,验证模型是否下载
ollama list
root@c81c97a47a52:/# ollama list
NAME ID SIZE MODIFIED
qwen2.5:3b 357c53fb659c 1.9 GB 22 hours ago
root@c81c97a47a52:/#
3 直接提交修改容器为新镜像
# 提交容器为新镜像
docker commit ollama ollama_qwen2.5-3b:latest
4 打包镜像并分发
4.1 保存镜像为tar文件
docker save -o ollama_qwen2.5-3b.tar ollama_qwen2.5-3b:latest
4.2 分发与加载镜像
# 将生成的tar文件传输到目标服务器,执行以下命令加载
docker load -i ollama_qwen2.5-3b.tar
5 部署与使用
5.1 创建docker-compose.yml文件
# 创建docker-compose.yml文件并添加如下内容
version: '3'
services:
ollama:
image: ollama_qwen2.5-3b:latest
container_name: ollama
ports:
- "11434:11434"
restart: always
5.2 启动服务
# 在包含docker-compose.yml的目录中运行以下命令
docker-compose up -d
5.3 调用模型
curl --location --request POST 'http://127.0.0.1:11434/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen2.5:3b",
"messages": [
{
"role": "user",
"content": "你好"
}
],
"stream": false
}'
[root@node1 ~]# curl --location --request POST 'http://127.0.0.1:11434/v1/chat/completions' \
> --header 'Content-Type: application/json' \
> --data '{
> "model": "qwen2.5:3b",
> "messages": [
> {
> "role": "user",
> "content": "你好"
> }
> ],
> "stream": false
> }'
{"id":"chatcmpl-342","object":"chat.completion","created":1742562710,"model":"qwen2.5:3b","system_fingerprint":"fp_ollama","choices":[{"index":0,"message":{"role":"assistant","content":"您好!很高兴为您服务。有什么我可以帮您的吗?"},"finish_reason":"stop"}],"usage":{"prompt_tokens":30,"completion_tokens":13,"total_tokens":43}}
[root@node1 ~]#
更多推荐
所有评论(0)