# 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 日志中实际推送成功的镜像地址,然后执行: ```bash 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 ``` ## 启动服务 ```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。 各流水线阶段的显存占用取决于实际层分配,不保证各卡相等。 ## 验证 ```bash 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}' ```