公司服务器Ollama本地大模型部署情况

💡 核心亮点

公司阿里云服务器已部署Ollama本地大模型服务,支持离线调用多个主流大模型:


一、服务器环境信息

1.1 服务器基本信息

项目 信息
服务器类型 阿里云ECS
服务器 IP 192.168.2.15
操作系统 Linux (CentOS/Ubuntu)
用户 byp
Docker版本 Docker CE

1.2 Docker容器列表

$ 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(健康运行)


二、已安装大模型列表

2.1 模型总览

$ 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    

2.2 模型详细信息

模型名称 模型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个月前

2.3 模型能力对比

模型 类型 特点 适用场景
Qwen3-VL 视觉语言模型 ✅ 支持图像理解
✅ 多模态能力
图片分析、OCR识别、图表理解
Qwen3 纯文本大模型 ✅ 中文能力强
✅ 推理能力好
文本生成、对话、RAG问答
DeepSeek-R1 推理增强模型 ✅ 逻辑推理强
✅ 代码能力好
数学计算、代码生成、复杂推理
Llama3 通用大模型 ✅ 英文能力强
✅ 生态完善
英文任务、对比测试

三、API调用方式

3.1 查看已安装模型

# 方式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"
      }
    }
  ]
}

3.2 调用模型生成文本

# 调用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
}'

3.3 调用Qwen3-VL分析图片

# Qwen3-VL支持图像输入
curl http://localhost:11434/api/generate -d '{
  "model": "qwen3-vl:latest",
  "prompt": "请描述这张图片的内容",
  "images": ["/path/to/image.jpg"],
  "stream": false
}'

3.4 Python调用示例

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界面

4.1 访问地址

容器名:open-webui
端口映射:3000:8080
访问地址:http://服务器IP:3000

4.2 功能特性


五、硬件资源占用

5.1 模型存储

模型 磁盘占用
Qwen3-VL 6.1 GB
DeepSeek-R1:8b 5.2 GB
Qwen3:latest 5.2 GB
Llama3:8b 4.7 GB
总计 21.2 GB

5.2 内存占用(推理时)

模型 内存占用 推荐配置
8B参数(Q4量化) 约6-8 GB 16GB RAM
并发推理 按需增加 32GB RAM推荐

5.3 推理速度

任务类型 速度
文本生成(无GPU) 约10-20 tokens/秒
图像理解(Qwen3-VL) 约5-10 tokens/秒
复杂推理(DeepSeek-R1) 约8-15 tokens/秒

六、管理与维护

6.1 常用命令

# 查看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

6.2 模型安装

# 安装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

6.3 数据备份

# 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 .

七、应用场景

7.1 本地RAG系统

# 使用本地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管道
# ... 向量化、检索、生成 ...

7.2 图像理解(Qwen3-VL)

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)

7.3 代码生成与调试

# 使用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)

八、优势与限制

8.1 优势

✅ 零API成本:所有模型本地运行,无调用费用
✅ 数据隐私:数据不出服务器,完全本地处理
✅ 离线可用:无需互联网连接
✅ 多模型共存:可同时安装多个模型
✅ 灵活切换:按需切换不同模型
✅ 开源生态:Ollama开源,社区活跃

8.2 限制

⚠️ 硬件要求:需要足够内存(16GB+推荐)
⚠️ 推理速度:无GPU时速度较慢(10-20 tokens/秒)
⚠️ 量化损失:Q4量化相比FP16精度略有下降
⚠️ 并发限制:单容器不支持高并发
⚠️ 模型大小:8B参数模型能力有限


九、与其他服务的关系

9.1 服务器完整架构

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) ← 文件传输

9.2 调用关系

HQX-HD-001 (海启星)
  ↓ 需要AI能力
ollama (Qwen3/DeepSeek-R1)
  ↓ 生成响应
HQX-HD-001返回给用户

open-webui
  ↓ 可视化界面
ollama (任意模型)
  ↓ 对话交互
用户直接使用

十、后续优化建议

10.1 短期优化

  1. 添加Embedding模型 bash # 安装专用Embedding模型 sudo docker exec -it ollama ollama pull nomic-embed-text sudo docker exec -it ollama ollama pull bge-m3

  2. 性能监控 bash # 监控Ollama资源占用 sudo docker stats ollama

  3. 定期更新模型 bash # 每月检查一次模型更新 sudo docker exec -it ollama ollama pull qwen3:latest

10.2 中期优化

  1. GPU加速(如有GPU) bash # 使用GPU版本Ollama sudo docker run -d --gpus=all -p 11434:11434 \ --name ollama-gpu ollama/ollama:latest

  2. 负载均衡

  3. 部署多个Ollama实例
  4. 使用Nginx做负载均衡

  5. 模型优化

  6. 测试不同量化级别(Q5/Q8)
  7. 平衡精度与速度

10.3 长期规划

  1. 更大参数模型
  2. 14B参数模型(需要32GB RAM)
  3. 70B参数模型(需要GPU + 128GB RAM)

  4. 专用Embedding服务

  5. 部署Milvus向量数据库
  6. 构建企业级RAG系统

  7. 多模态扩展

  8. 语音识别(Whisper)
  9. 语音合成(CosyVoice)
  10. 视频理解

十一、故障排查

11.1 常见问题

# 问题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

11.2 日志查看

# 查看实时日志
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 对话界面搭建

13.1 什么是 Gradio

Gradio 是一个开源 Python 库,主要用于快速构建机器学习模型的交互式 Web 界面。无需前端开发经验,只需要几行代码就能为模型(如文本生成、图像分类等)创建一个可操作的网页。

特性 说明
快速开发 几行代码即可搭建可交互界面
组件丰富 支持文本框、下拉框、文件上传、聊天框等
热重载 用 gradio app.py 启动,代码改动自动重启
模型友好 天然适配 LLM、Diffusion、Vision 等模型演示
便于分享 可生成临时公网链接

13.2 本地对话页面

为了更方便地体验和测试公司本地部署的大语言模型,使用 Gradio 开发了一个简单的对话页面,通过 http://192.168.2.15:11434 调用 Ollama 服务。

页面功能: - 下拉选择模型(qwen3:latest、deepseek-r1:8b、llama3:8b、qwen3-vl:latest) - 流式显示 AI 回复 - 右侧实时显示生成 token 数与 tokens/秒 速度统计 - 支持自定义系统提示词 - 支持清空对话

13.3 运行效果与测试

测试时间:2026年8月3日

Ollama 服务状态正常:

Ollama is running

Gradio 对话界面运行效果:

Gradio对话界面

从测试截图可见,使用 qwen3:latest 模型时:

指标 数值
模型 qwen3:latest
生成 token 数 478
生成耗时 116.11s
生成速度 4.1 token/s
总耗时 117.61s

💡 该速度符合 CPU 推理场景下的 8B 量化模型表现,日常对话可用。如需更快响应,可考虑 GPU 加速或切换更小的模型。

13.4 程序位置

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)

相关笔记