使用 MS-Swift 提供的 swift deploy 命令行工具来部署 Qwen3-0.6B-Base 的 API 服务,这是 MS-Swift 官方推荐的更轻量化、无需编写代码的部署方式,我会详细讲解这个命令的使用方法和全流程配置。

一、swift deploy 命令核心说明

swift deploy 是 MS-Swift 封装的一键部署命令,专门用于快速将大模型部署为 API 服务,支持直接指定 ModelScope 模型 ID、量化策略、服务端口等参数,无需编写启动脚本,适合快速部署和生产环境使用。

二、完整部署步骤

1. 环境准备(确认依赖)

确保已安装最新版 MS-Swift 且环境正常(若未安装,先执行):

# 激活虚拟环境
conda activate ms-swift

# 安装/升级 MS-Swift(必须确保版本≥1.0.0,否则可能无deploy命令)
pip install ms-swift[llm,api] -U

# 验证命令是否可用
swift --version  # 输出版本号即正常
swift deploy --help  # 查看deploy命令帮助
2. 一键部署 Qwen3-0.6B-Base API

直接执行 swift deploy 命令,指定模型、量化、端口等参数,核心命令如下:

# 基础部署(4bit量化,端口8000,开放所有IP访问)
swift deploy \
  --model_id qwen/Qwen3-0.6B-Base \
  --model_type llm \
  --quant_method awq \
  --quant_bits 4 \
  --host 0.0.0.0 \
  --port 8000 \
  --device auto

参数说明(关键)

参数 说明
--model_id 模型ID(ModelScope)或本地模型路径,这里填 qwen/Qwen3-0.6B-Base
--model_type 模型类型,大语言模型固定填 llm
--quant_method 量化算法,推荐 awq(高效低损耗),可选 none(不量化)
--quant_bits 量化位数,4bit/8bit(量化时必填),不量化则省略该参数
--host 服务监听地址,0.0.0.0 允许外网访问,127.0.0.1 仅本地访问
--port 服务端口,默认8000,避免端口冲突可改(如8080)
--device 运行设备,auto(自动选GPU/CPU)、cpucuda
3. 自定义部署参数(可选)

如果需要调整模型生成参数、并发数等,可添加更多参数:

# 进阶部署:8bit量化+端口8080+限制生成长度+仅本地访问
swift deploy \
  --model_id qwen/Qwen3-0.6B-Base \
  --model_type llm \
  --quant_method awq \
  --quant_bits 8 \
  --host 127.0.0.1 \
  --port 8080 \
  --device cpu \
  --max_new_tokens 1024 \
  --temperature 0.7 \
  --workers 2  # 并发工作数,低配设备建议设为1
4. 离线环境部署(本地模型文件)

若无法联网下载模型,先手动从 ModelScope 下载 Qwen3-0.6B-Base 到本地目录(如 ./qwen3-0.6b-base),再指定本地路径:

# 离线部署:使用本地模型文件
swift deploy \
  --model_id ./qwen3-0.6b-base \  # 本地模型路径
  --model_type llm \
  --quant_method awq \
  --quant_bits 4 \
  --host 0.0.0.0 \
  --port 8000
5. 部署成功验证

启动后终端输出如下内容即部署成功:

2025-xx-xx xx:xx:xx | INFO | Loading model qwen/Qwen3-0.6B-Base...
2025-xx-xx xx:xx:xx | INFO | Applying 4bit AWQ quantization...
2025-xx-xx xx:xx:xx | INFO | Model loaded successfully, memory usage: 480MB
2025-xx-xx xx:xx:xx | INFO | Starting API server on http://0.0.0.0:8000
2025-xx-xx xx:xx:xx | INFO | Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

三、API 接口调用(与之前兼容)

swift deploy 启动的服务同样兼容 OpenAI 接口格式,调用方式完全一致:

1. curl 调用
curl -X POST http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen3-0.6B-Base",
    "messages": [{"role": "user", "content": "解释一下什么是大语言模型的量化"}]
  }'
2. 访问 Swagger 调试页面

直接打开 http://localhost:8000/docs,可可视化调试接口,无需编写代码。

四、常见问题解决

  1. 提示 swift: command not found

    • 原因:Python 的 Scripts 目录未加入系统环境变量;
    • 解决:找到虚拟环境的 bin(Linux/Mac)或 Scripts(Windows)目录,将其加入 PATH,或用 python -m swift deploy 替代 swift deploy
  2. 模型下载慢/失败

    • 配置 ModelScope 镜像源:
      export MODEL_SCOPE_ENDPOINT=https://mirror.modelscope.cn
      
    • 或手动下载模型后用本地路径部署。
  3. 量化报错(如 AWQ 量化失败)

    • 降低量化位数(如改用 8bit),或关闭量化(去掉 --quant_method--quant_bits 参数);
    • 升级 MS-Swift 到最新版:pip install ms-swift -U
  4. 端口被占用

    • 更换端口,如 --port 8080,或先杀掉占用端口的进程:
      # Linux/Mac 查看并杀掉占用8000端口的进程
      lsof -i:8000
      kill -9 <进程ID>
      

总结

  1. 核心命令swift deploy 是 MS-Swift 一键部署 API 的命令行工具,无需编写代码,通过参数即可配置模型、量化、端口等;
  2. 关键参数--model_id 指定模型、--quant_bits 4 开启轻量化量化、--host/--port 配置服务访问地址;
  3. 接口兼容:部署后的 API 完全兼容 OpenAI 格式,支持 curl/Python/Swagger 等多种调用方式,适配各类应用集成。
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐