本地部署 ollma+ qwen 7B大模型
JACIN2 分钟阅读
AI 摘要
这是一份面向本机 Docker 环境的 Ollama 部署记录,目标是在本地启动可调用的 Qwen2.5 大模型服务,并通过接口验证生成能力。正文给出 docker-compose.yml 的核心配置,包括 11434 端口映射、./ollama_data 持久化模型数据、容器自动重启,以及 OLLAMA_KEEP_ALIVE、OLLAMA_NUM_PARALLEL、OLLAMA_MAX_LOADED_MODELS、OLLAMA_ORIGINS 等运行参数。资源部分显式限制容器最多使用 18G 内存,同时用常驻内存、4 路并发和最多加载 2 个模型来平衡响应速度与本机资源占用。模型操作通过 docker exec 进入 ollama 容器执行 ollama run qwen2.5:7b,也补充了 qwen2.5:14b 的可选尝试,并提示 14B 的 4bit 量化大约需要 9GB 内存。文章还区分了模型文件存放在硬盘与按请求 model 参数加载到内存的行为:请求 7B 会加载 7B,请求 14B 时可能卸载 7B 再加载 14B。最后用 curl 调用 http://localhost:11434/api/generate,指定 qwen2.5:7b、prompt 和 stream 参数,作为部署是否可用的最小验证,适合需要快速搭建本地中文大模型 API 的开发者参考。
vim docker-compose.yml
text
version: '3.8'
services:
ollama:
container_name: ollama
image: ollama/ollama:latest
restart: always
ports:
- "11434:11434"
volumes:
- ./ollama_data:/root/.ollama
environment:
- OLLAMA_KEEP_ALIVE=24h # 让模型常驻内存,不要卸载,你内存够
- OLLAMA_NUM_PARALLEL=4 # 🚀 关键:允许同时处理 4 个请求
- OLLAMA_MAX_LOADED_MODELS=2 # 允许同时加载 2 个不同的模型
- OLLAMA_ORIGINS="*"
deploy:
resources:
limits:
memory: 18G # 限制最大使用 18G,留点给系统
下载并运行 Qwen2.5-7B
text
# 拉取千问 7B (目前中文表现最好的 7B 模型)
docker exec -it ollama ollama run qwen2.5:7b
# (可选) 如果想试试更强的,内存甚至跑得起 14B (4bit量化约需 9GB 内存)
docker exec -it ollama ollama run qwen2.5:14b
硬盘层面: 你下载了 7B 和 14B,它们都在硬盘里躺着。
内存层面:
如果你请求里的参数写 "model": "qwen2.5:7b",Ollama 就把 7B 加载进内存。
如果你请求里的参数写 "model": "qwen2.5:14b",Ollama 就会自动把 7B 踢出内存(Unload),然后把 14B 加载进去。
测试代码对吗:
text
curl http://localhost:11434/api/generate -d '{
"model": "qwen2.5:7b",
"prompt": "请用三句话解释一下为什么量子力学很难懂?",
"stream": true
}'
评论
还没有评论,来发第一个吧