一、部署目标

在服务器上通过 Docker + vLLM 部署 Qwen3.5-35B-A3B 大语言模型,并提供
OpenAI 兼容 API,供 LangGraph、Agent、Spring Boot 等应用调用。

最终架构:

Agent应用
(LangGraph / Python / Spring Boot)
        |
        |
OpenAI Compatible API
        |
http://服务器IP:18081/v1
        |
        |
vLLM推理服务
        |
        |
Qwen3.5-35B-A3B
        |
        |
GPU 0
GPU规划:

GPU0:
Qwen3.5-35B-A3B + vLLM

GPU1:
保留给其他算法任务
---

 二、服务器环境

## 硬件

- GPU:NVIDIA RTX PRO 6000 Blackwell ×2
- 显存:96GB ×2

## 软件

- Ubuntu
- Docker 29.3.0
- NVIDIA Driver 570.153.02
- CUDA 12.8
- vLLM 0.26.0

---

三、创建部署目录

目录:

/mnt/sda2/wlg/llm
创建:

```bash
cd /mnt/sda2/wlg

mkdir -p llm/models
mkdir -p llm/logs
mkdir -p llm/scripts
```
最终:

llm
├── docker-compose.yml
├── logs
├── models
└── scripts
---

 四、验证 Docker GPU 环境

执行:

```bash
docker run --rm \
--gpus device=0 \
nvidia/cuda:12.8.0-base-ubuntu24.04 \
nvidia-smi
```
确认容器可以识别:

NVIDIA RTX PRO 6000 Blackwell
---

五、部署 vLLM

## 拉取镜像

```bash
docker pull vllm/vllm-openai:latest
```
检查版本:

```bash
docker run --rm \
--gpus device=0 \
--entrypoint python3 \
vllm/vllm-openai:latest \
-c "import vllm;print(vllm.__version__)"
```
输出:

0.26.0
测试 CUDA:

```bash
docker run --rm \
--gpus device=0 \
--entrypoint python3 \
vllm/vllm-openai:latest \
-c "
import torch
print(torch.cuda.is_available())
print(torch.cuda.get_device_name(0))
"
```
---

 六、下载 Qwen3.5-35B-A3B

进入模型目录:

```bash
cd /mnt/sda2/wlg/llm/models
```
安装 ModelScope:

```bash
pip install modelscope
```
下载:

```bash
modelscope download \
--model Qwen/Qwen3.5-35B-A3B \
--local_dir Qwen3.5-35B-A3B
```
模型目录:

models
└── Qwen3.5-35B-A3B
模型大小约:

67GB
---

 七、配置 Docker Compose

文件:

/mnt/sda2/wlg/llm/docker-compose.yml
内容:

```yaml
services:
  qwen35-agent:
    image: vllm/vllm-openai:latest

    container_name: qwen35-agent

    restart: always

    gpus:
      - driver: nvidia
        device_ids: ["0"]
        capabilities:
          - gpu

    ports:
      - "18081:8000"

    volumes:
      - ./models:/models
      - ./logs:/logs

    shm_size: "32gb"

    command:

      - /models/Qwen3.5-35B-A3B

      - --served-model-name
      - qwen3.5-35b

      - --host
      - 0.0.0.0

      - --port
      - "8000"

      - --dtype
      - bfloat16

      - --gpu-memory-utilization
      - "0.85"

      - --max-model-len
      - "16384"

      - --max-num-seqs
      - "32"

      - --trust-remote-code
```
---

八、启动模型服务

进入目录:

```bash
cd /mnt/sda2/wlg/llm
```
启动:

```bash
docker compose up -d
```
查看:

```bash
docker ps
```
查看日志:

```bash
docker logs -f qwen35-agent
```
成功标志:

Loading safetensors checkpoint shards: 100%

Starting vLLM server on http://0.0.0.0:8000

Application startup complete
---

九、验证 GPU 使用情况

执行:

```bash
nvidia-smi
```
正常:

GPU0:
VLLM::EngineCore
约80GB显存

GPU1:
空闲
---

 十、API接口测试

## 查看模型

浏览器:

http://服务器IP:18081/v1/models
返回:

```json
{
  "id":"qwen3.5-35b"
}
```
---

## 测试聊天接口

注意:

聊天接口必须使用 POST。

示例:

```bash
curl -X POST \
http://服务器IP:18081/v1/chat/completions \
-H "Content-Type: application/json" \
-d '
{
 "model":"qwen3.5-35b",
 "messages":[
  {
   "role":"user",
   "content":"你好,请介绍一下自己"
  }
 ]
}'
```
---

十一、Agent调用方式

## Python OpenAI SDK

安装:

```bash
pip install openai
```
代码:

```python
from openai import OpenAI

client = OpenAI(
    base_url="http://服务器IP:18081/v1",
    api_key="EMPTY"
)

response = client.chat.completions.create(
    model="qwen3.5-35b",
    messages=[
        {
            "role":"user",
            "content":"设计一个遥感智能体"
        }
    ]
)

print(response.choices[0].message.content)
```
---

## LangGraph调用

安装:

```bash
pip install langchain-openai
```
示例:

```python
from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="qwen3.5-35b",
    base_url="http://服务器IP:18081/v1",
    api_key="EMPTY"
)

result = llm.invoke(
    "分析遥感数据智能平台"
)

print(result.content)
```
---

十二、常见问题

## 1. 容器无法识别GPU

错误:

Failed to infer device type
原因:

Compose没有正确申请GPU。

解决:

使用:

```yaml
gpus:
  - driver: nvidia
    device_ids: ["0"]
    capabilities:
      - gpu
```
---

## 2. max_num_seqs错误

错误:

max_num_seqs exceeds available Mamba cache blocks
解决:

降低并发:

```yaml
--max-num-seqs
32
```
---

十三、运维命令

查看状态:

```bash
docker ps
```
查看日志:

```bash
docker logs -f qwen35-agent
```
查看GPU:

```bash
nvidia-smi
```
重启:

```bash
docker compose restart
```
停止:

```bash
docker compose down
```
启动:

```bash
docker compose up -d
```
---

十四、最终部署结果

当前部署:

模型:
Qwen3.5-35B-A3B

推理:
vLLM 0.26

GPU:
RTX PRO 6000 Blackwell

运行:
GPU0

API:
http://服务器IP:18081/v1

模型名:
qwen3.5-35b
该服务可以直接作为企业 Agent 的本地大模型底座。

更多推荐