Step-3.5-Flash 天垓150部署
基于用户已验证的天数镜像:
registry.iluvatar.com.cn:10443/customer/sz/vllm0.17.0-4.4.0-x86:v7。
使用 16 张卡,TP=8、PP=2。镜像不包含模型权重。
ModelHub 发布
CI 配置沿用 https://dev.modelhub.org.cn/4pdadmin/cicd_demo。
推送 v* 标签后自动构建、推送镜像并提交审核。
GPU 分类采用 demo 的 Iluvatar_bi-150,由平台接口校验。
Runner 使用 amd64-ubuntu-24.04,需能访问并拉取上述天数基础镜像。
推送凭据和审核令牌由 runner 提供,不写入仓库。
模型配置准备
模型目录:/mnt/disk0/stepfun-ai/Step-3.5-Flash。
在用户原部署中,num_hidden_layers=45,但以下数组各有48项,
引发层数校验失败:layer_types、rope_theta、
partial_rotary_factors、swiglu_limits、swiglu_limits_shared。
原部署的处理方式是先备份 config.json,再将这些数组保留前45项。 该操作修改宿主机挂载的模型配置,并未修改容器镜像。 本镜像不会自动修改外部模型文件;部署时使用已验证的45项配置。 如果换用其他版本权重,应先核对配置和权重结构,不应盲目截断。
创建容器
将 STEP_IMAGE 设置为 CI 日志中实际推送成功的镜像地址,然后执行:
docker run -dit -v /usr/src:/usr/src -v /lib/modules:/lib/modules -v /dev:/dev \
-v /home:/home -v /mnt/disk0:/mnt/disk0 \
--network=host --name=step3p5-flash --ipc=host --privileged --cap-add=ALL --pid=host \
"${STEP_IMAGE:?请先设置CI产出的镜像地址}" /bin/bash
启动服务
docker exec -it step3p5-flash bash -c '
export CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
vllm serve /mnt/disk0/stepfun-ai/Step-3.5-Flash \
--served-model-name step3p5-flash \
--host 0.0.0.0 --port 1237 \
--tensor-parallel-size 8 \
--pipeline-parallel-size 2 \
--disable-cascade-attn \
--trust-remote-code \
--gpu-memory-utilization 0.92 \
--max-model-len 8192'
原部署中 corex MoE 算子要求切分后的中间维度为32的倍数。 1280/16=80不满足要求,1280/8=160满足要求,因此采用TP=8、PP=2。 各流水线阶段的显存占用取决于实际层分配,不保证各卡相等。
验证
curl -sS http://127.0.0.1:1237/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model":"step3p5-flash","messages":[{"role":"user","content":"请介绍一下人工智能"}],"temperature":0.7,"top_p":0.9,"max_tokens":1024}'