💡 核心亮点
公司阿里云服务器已部署Ollama本地大模型服务,支持离线调用多个主流大模型:
- 已安装4个模型:Qwen3-VL、Qwen3、DeepSeek-R1、Llama3(均为8B参数级)
- Docker容器化部署:容器名
ollama,端口11434- 本地API调用:
http://localhost:11434/api/tags- 零API成本:所有模型本地运行,无调用费用
| 项目 | 信息 |
|---|---|
| 服务器类型 | 阿里云ECS |
| 服务器 IP | 192.168.2.15 |
| 操作系统 | Linux (CentOS/Ubuntu) |
| 用户 | byp |
| Docker版本 | Docker CE |
$ sudo docker ps
CONTAINER ID IMAGE COMMAND STATUS PORTS NAMES
33c0ff1cb99f hqxbot:v1.0 "tail -f /dev/null" Up 3 weeks 0.0.0.0:7779->5000/tcp HQX-HD-001
d5c3cd63d952 daas:v2.0 "/bin/bash" Up 3 weeks 0.0.0.0:7777->7777/tcp Daas-v2
ac4f012b380c open-webui:latest "bash start.sh" Up 3 weeks 0.0.0.0:3000->8080/tcp open-webui
79cbc3e1ec58 ollama/ollama:latest "/bin/ollama serve" Up 3 weeks 0.0.0.0:11434->11434/tcp ollama
460d78c5713a fauria/vsftpd "/usr/sbin/run-..." Up 3 weeks 0.0.0.0:20-21->20-21/tcp ftp
77662e89ee88 minio/minio:latest "/usr/bin/docker..." Up 3 weeks 0.0.0.0:59000->9000/tcp minio
6bb6828b022a nginx:latest "/docker-entryp..." Up 3 weeks 0.0.0.0:8830->8830/tcp nginx
d040b1b9b3f0 postgis:13 "docker-entryp..." Up 3 weeks 0.0.0.0:55432->5432/tcp postgres
4cf0e0f16dbe redis "docker-entryp..." Up 3 weeks 0.0.0.0:56379->6379/tcp redis-szhd
9d47417721fd rabbitmq:management "docker-entryp..." Up 3 weeks 0.0.0.0:5672->5672/tcp rabbit
65beb1f92fd5 02c7f2054405 "docker-entryp..." Up 3 weeks 0.0.0.0:6378->6379/tcp redis
Ollama容器信息:
- 容器ID:79cbc3e1ec58
- 镜像:ollama/ollama:latest
- 容器名:ollama
- 端口映射:11434:11434
- 运行状态:Up 3 weeks(健康运行)
$ sudo docker exec -it 79cb ollama list
NAME ID SIZE MODIFIED
qwen3-vl:latest 901cae732162 6.1 GB 5 months ago
deepseek-r1:8b 6995872bfe4c 5.2 GB 5 months ago
qwen3:latest 500a1f067a9f 5.2 GB 5 months ago
llama3:8b 365c0bd3c000 4.7 GB 5 months ago
| 模型名称 | 模型ID | 大小 | 参数量 | 量化级别 | 安装时间 |
|---|---|---|---|---|---|
| qwen3-vl:latest | 901cae732162 | 6.1 GB | 8.8B | Q4_K_M | 5个月前 |
| deepseek-r1:8b | 6995872bfe4c | 5.2 GB | 8.2B | Q4_K_M | 5个月前 |
| qwen3:latest | 500a1f067a9f | 5.2 GB | 8.2B | Q4_K_M | 5个月前 |
| llama3:8b | 365c0bd3c000 | 4.7 GB | 8.0B | Q4_0 | 5个月前 |
| 模型 | 类型 | 特点 | 适用场景 |
|---|---|---|---|
| Qwen3-VL | 视觉语言模型 | ✅ 支持图像理解 ✅ 多模态能力 |
图片分析、OCR识别、图表理解 |
| Qwen3 | 纯文本大模型 | ✅ 中文能力强 ✅ 推理能力好 |
文本生成、对话、RAG问答 |
| DeepSeek-R1 | 推理增强模型 | ✅ 逻辑推理强 ✅ 代码能力好 |
数学计算、代码生成、复杂推理 |
| Llama3 | 通用大模型 | ✅ 英文能力强 ✅ 生态完善 |
英文任务、对比测试 |
# 方式1:通过Ollama CLI
sudo docker exec -it ollama ollama list
# 方式2:通过HTTP API
curl http://localhost:11434/api/tags
API返回示例:
{
"models": [
{
"name": "qwen3-vl:latest",
"model": "qwen3-vl:latest",
"size": 6140415879,
"details": {
"family": "qwen3vl",
"parameter_size": "8.8B",
"quantization_level": "Q4_K_M"
}
},
{
"name": "deepseek-r1:8b",
"model": "deepseek-r1:8b",
"size": 5225376047,
"details": {
"family": "qwen3",
"parameter_size": "8.2B",
"quantization_level": "Q4_K_M"
}
}
]
}
# 调用Qwen3生成文本
curl http://localhost:11434/api/generate -d '{
"model": "qwen3:latest",
"prompt": "你好,请介绍一下你自己",
"stream": false
}'
# 调用DeepSeek-R1推理
curl http://localhost:11434/api/generate -d '{
"model": "deepseek-r1:8b",
"prompt": "计算 234 × 567 = ?",
"stream": false
}'
# Qwen3-VL支持图像输入
curl http://localhost:11434/api/generate -d '{
"model": "qwen3-vl:latest",
"prompt": "请描述这张图片的内容",
"images": ["/path/to/image.jpg"],
"stream": false
}'
import requests
# 调用Qwen3
response = requests.post('http://localhost:11434/api/generate', json={
'model': 'qwen3:latest',
'prompt': '请解释什么是大语言模型?',
'stream': False
})
result = response.json()
print(result['response'])
# 调用DeepSeek-R1
response = requests.post('http://localhost:11434/api/generate', json={
'model': 'deepseek-r1:8b',
'prompt': '用Python写一个快速排序算法',
'stream': False
})
print(response.json()['response'])
容器名:open-webui
端口映射:3000:8080
访问地址:http://服务器IP:3000
| 模型 | 磁盘占用 |
|---|---|
| Qwen3-VL | 6.1 GB |
| DeepSeek-R1:8b | 5.2 GB |
| Qwen3:latest | 5.2 GB |
| Llama3:8b | 4.7 GB |
| 总计 | 21.2 GB |
| 模型 | 内存占用 | 推荐配置 |
|---|---|---|
| 8B参数(Q4量化) | 约6-8 GB | 16GB RAM |
| 并发推理 | 按需增加 | 32GB RAM推荐 |
| 任务类型 | 速度 |
|---|---|
| 文本生成(无GPU) | 约10-20 tokens/秒 |
| 图像理解(Qwen3-VL) | 约5-10 tokens/秒 |
| 复杂推理(DeepSeek-R1) | 约8-15 tokens/秒 |
# 查看Ollama容器状态
sudo docker ps | grep ollama
# 进入Ollama容器
sudo docker exec -it ollama bash
# 查看已安装模型
sudo docker exec -it ollama ollama list
# 下载新模型
sudo docker exec -it ollama ollama pull qwen2.5:latest
# 删除模型
sudo docker exec -it ollama ollama rm llama3:8b
# 重启Ollama服务
sudo docker restart ollama
# 查看日志
sudo docker logs -f ollama
# 安装Qwen3(8B参数)
sudo docker exec -it ollama ollama pull qwen3:latest
# 安装Qwen3-VL(视觉语言模型)
sudo docker exec -it ollama ollama pull qwen3-vl:latest
# 安装DeepSeek-R1(推理增强)
sudo docker exec -it ollama ollama pull deepseek-r1:8b
# 安装Llama3
sudo docker exec -it ollama ollama pull llama3:8b
# 安装其他模型(示例)
sudo docker exec -it ollama ollama pull mistral:7b
sudo docker exec -it ollama ollama pull gemma:7b
sudo docker exec -it ollama ollama pull phi3:medium
# Ollama模型存储位置
容器内:/root/.ollama/models/
宿主机映射:docker volume inspect ollama
# 备份模型数据
sudo docker run --rm -v ollama:/data -v $(pwd):/backup \
alpine tar czf /backup/ollama-backup.tar.gz -C /data .
# 使用本地Qwen3构建RAG系统
from langchain_community.llms import Ollama
from langchain_community.embeddings import OllamaEmbeddings
# 使用Ollama的LLM
llm = Ollama(model="qwen3:latest", base_url="http://localhost:11434")
# 使用Ollama的Embedding
embeddings = OllamaEmbeddings(model="qwen3:latest")
# 构建RAG管道
# ... 向量化、检索、生成 ...
import base64
import requests
def analyze_image(image_path, prompt):
"""使用Qwen3-VL分析本地图片"""
# 读取图片并转为base64
with open(image_path, "rb") as f:
image_base64 = base64.b64encode(f.read()).decode()
# 调用API
response = requests.post('http://localhost:11434/api/generate', json={
'model': 'qwen3-vl:latest',
'prompt': prompt,
'images': [image_base64],
'stream': False
})
return response.json()['response']
# 使用示例
result = analyze_image('test.jpg', '请描述这张图片的内容')
print(result)
# 使用DeepSeek-R1辅助编程
def generate_code(prompt):
response = requests.post('http://localhost:11434/api/generate', json={
'model': 'deepseek-r1:8b',
'prompt': f'请用Python实现:{prompt}\n\n代码:',
'stream': False
})
return response.json()['response']
# 示例
code = generate_code('读取CSV文件并统计每列的平均值')
print(code)
✅ 零API成本:所有模型本地运行,无调用费用
✅ 数据隐私:数据不出服务器,完全本地处理
✅ 离线可用:无需互联网连接
✅ 多模型共存:可同时安装多个模型
✅ 灵活切换:按需切换不同模型
✅ 开源生态:Ollama开源,社区活跃
⚠️ 硬件要求:需要足够内存(16GB+推荐)
⚠️ 推理速度:无GPU时速度较慢(10-20 tokens/秒)
⚠️ 量化损失:Q4量化相比FP16精度略有下降
⚠️ 并发限制:单容器不支持高并发
⚠️ 模型大小:8B参数模型能力有限
Docker容器集群:
├── ollama (11434) ← 本地大模型服务
├── open-webui (3000) ← WebUI界面
├── HQX-HD-001 (7779) ← 海启星智能助手
├── Daas-v2 (7777) ← 数据即服务平台
├── nginx (8830) ← 反向代理
├── minio (59000/59001) ← 对象存储
├── postgres (55432) ← 关系数据库
├── redis (56379/6378) ← 缓存服务
├── rabbit (5672/15672) ← 消息队列
└── ftp (20-21/21100-21110) ← 文件传输
HQX-HD-001 (海启星)
↓ 需要AI能力
ollama (Qwen3/DeepSeek-R1)
↓ 生成响应
HQX-HD-001返回给用户
open-webui
↓ 可视化界面
ollama (任意模型)
↓ 对话交互
用户直接使用
添加Embedding模型
bash
# 安装专用Embedding模型
sudo docker exec -it ollama ollama pull nomic-embed-text
sudo docker exec -it ollama ollama pull bge-m3
性能监控
bash
# 监控Ollama资源占用
sudo docker stats ollama
定期更新模型
bash
# 每月检查一次模型更新
sudo docker exec -it ollama ollama pull qwen3:latest
GPU加速(如有GPU)
bash
# 使用GPU版本Ollama
sudo docker run -d --gpus=all -p 11434:11434 \
--name ollama-gpu ollama/ollama:latest
负载均衡
使用Nginx做负载均衡
模型优化
70B参数模型(需要GPU + 128GB RAM)
专用Embedding服务
构建企业级RAG系统
多模态扩展
# 问题1:Ollama容器未运行
sudo docker start ollama
# 问题2:端口被占用
sudo lsof -i :11434
sudo docker stop ollama
sudo docker start ollama
# 问题3:模型加载失败
sudo docker logs ollama | grep error
# 问题4:内存不足
free -h
sudo docker stats
# 问题5:API调用超时
curl -v http://localhost:11434/api/tags
# 查看实时日志
sudo docker logs -f ollama
# 查看最近100行
sudo docker logs --tail 100 ollama
# 导出日志
sudo docker logs ollama > ollama-logs-$(date +%Y%m%d).txt
📂 官方资源: - Ollama官网 - Ollama GitHub - 模型库
📖 模型文档: - Qwen3文档 - DeepSeek文档 - Llama3文档
🔗 相关笔记: - 大语言模型选择指南
Gradio 是一个开源 Python 库,主要用于快速构建机器学习模型的交互式 Web 界面。无需前端开发经验,只需要几行代码就能为模型(如文本生成、图像分类等)创建一个可操作的网页。
| 特性 | 说明 |
|---|---|
| 快速开发 | 几行代码即可搭建可交互界面 |
| 组件丰富 | 支持文本框、下拉框、文件上传、聊天框等 |
| 热重载 | 用 gradio app.py 启动,代码改动自动重启 |
| 模型友好 | 天然适配 LLM、Diffusion、Vision 等模型演示 |
| 便于分享 | 可生成临时公网链接 |
为了更方便地体验和测试公司本地部署的大语言模型,使用 Gradio 开发了一个简单的对话页面,通过 http://192.168.2.15:11434 调用 Ollama 服务。
页面功能:
- 下拉选择模型(qwen3:latest、deepseek-r1:8b、llama3:8b、qwen3-vl:latest)
- 流式显示 AI 回复
- 右侧实时显示生成 token 数与 tokens/秒 速度统计
- 支持自定义系统提示词
- 支持清空对话
测试时间:2026年8月3日
Ollama 服务状态正常:

Gradio 对话界面运行效果:

从测试截图可见,使用 qwen3:latest 模型时:
| 指标 | 数值 |
|---|---|
| 模型 | qwen3:latest |
| 生成 token 数 | 478 |
| 生成耗时 | 116.11s |
| 生成速度 | 4.1 token/s |
| 总耗时 | 117.61s |
💡 该速度符合 CPU 推理场景下的 8B 量化模型表现,日常对话可用。如需更快响应,可考虑 GPU 加速或切换更小的模型。
d:/BYP/Project/BYP/BYPsNotes/extern/attachments/topic/LLMs/Gradio/app.py
启动方式:
conda activate CondaBYP
gradio app.py
📝 创建时间:2026-06-01
🖥️ 服务器:阿里云ECS
🐳 部署方式:Docker容器化
📦 已安装模型:4个(Qwen3-VL、Qwen3、DeepSeek-R1、Llama3)
💰 API成本:¥0(全部本地运行)
⚡ 推理速度:10-20 tokens/秒(CPU)