推理服务 - 大模型(LLM)推理
除了传统的 ml-server / tfserving / torch-server / triton-server 之外,CubeStudio 推理服务还内置了一批
大模型(LLM)推理框架。它们都对外提供 OpenAI 兼容接口(健康检查与模型列表均为 /v1/models),
在「服务化 → 推理服务 → 新建」时通过 service_type 选择即可,平台会自动生成启动命令、端口、健康检查与配置文件。
当前支持的
service_type完整枚举见myapp/views/view_inferenceserving.py:214:ml-server / tfserving / torch-server / triton-server / vllm / vllm-distributed / triton-llm / ollama / mindie / mindie-distributed。 可用类型还受配置项ENABLE_INFERENCE约束(空表示全开放,见myapp/config.py:1323)。 各类型的镜像、默认启动命令、端口、健康检查、环境变量集中定义在myapp/views/view_inferenceserving.py:58-134与镜像清单myapp/config.py:1324-1339。具体细节以源码为准。
各 LLM 推理类型一览
| service_type | 适用 | 默认端口 | 默认镜像(示例) | 接口 |
|---|---|---|---|---|
vllm |
单机 GPU 大模型推理(最常用) | 8000 | vllm/vllm-openai:v0.8.5.post1 |
OpenAI /v1/... |
vllm-distributed |
多副本/多机分布式 vllm | 8000 | vllm/vllm-openai:v0.8.5.post1 |
OpenAI /v1/... |
ollama |
轻量本地大模型 | 11434 | ollama/ollama:latest |
OpenAI /v1/... |
triton-llm |
NVIDIA TensorRT-LLM 高性能推理 | 8000 | nvcr.io/nvidia/tensorrt-llm/release:1.3.0rc1 |
OpenAI /v1/... |
mindie |
华为昇腾 NPU 大模型推理 | 1025,1026 | swr.cn-south-1.myhuaweicloud.com/ascendhub/mindie:2.3.0-* |
OpenAI /v1/... |
mindie-distributed |
昇腾 NPU 多机分布式 | 1025,1026 | 同上 | OpenAI /v1/... |
各类型关键说明
vllm(单机)
- 默认启动命令(节选):
python3 -m vllm.entrypoints.openai.api_server --trust-remote-code --max-model-len 8192 --model $KUBEFLOW_MODEL_PATH --host 0.0.0.0 --port 8000 --dtype float16 --tensor-parallel-size $RESOURCE_GPU --served-model-name $KUBEFLOW_MODEL_NAME ... - 张量并行:
--tensor-parallel-size自动取容器申请的 GPU 卡数$RESOURCE_GPU,即填几张卡就几路张量并行。 - 模型路径用
$KUBEFLOW_MODEL_PATH(推理服务表单里填的模型地址),服务名用$KUBEFLOW_MODEL_NAME。 - 默认环境变量含
HF_ENDPOINT=https://hf-mirror.com(HuggingFace 国内镜像)。
vllm-distributed(分布式)
- 在 vllm 基础上增加
--pipeline-parallel-size $RESOURCE_MIN_REPLICAS(流水并行规模取最小副本数), 用于多副本/多机分布式部署;额外注入NCCL_IB_HCA=mlx5、NCCL_DEBUG等用于 RoCE/IB 通信。
ollama
- 启动逻辑:
ollama serve后台拉起,再ollama pull $model_name拉取模型;端口11434。 - 环境变量
OLLAMA_HOST=0.0.0.0、OLLAMA_MODELS=$model_path。
triton-llm(TensorRT-LLM)
- 启动命令:
trtllm-serve serve $KUBEFLOW_MODEL_PATH --host 0.0.0.0 --port 8000 --tp_size $RESOURCE_GPU --max_batch_size 4 --max_seq_len 4096 ...,--tp_size同样取 GPU 卡数。
mindie / mindie-distributed(昇腾 NPU)
- 面向华为昇腾 NPU 的大模型推理,端口
1025/1026。平台会下发一份config.json(含ModelConfig/ScheduleConfig,worldSize自动取 NPU 卡数$RESOURCE_GPU),由start.sh渲染后启动mindieservice_daemon。多机分布式版本走generate_config.py/generate_rank_table.py生成 rank 表。 - 镜像区分 800I-A2 / 800I-A3 / 300I-Duo 等昇腾机型,见
myapp/config.py:1336-1337。
国产硬件镜像:
myapp/config.py:1330-1333注释中还给出了 NPU / 沐曦 / 海光 DCU / 寒武纪 等平台的 vllm/llama-factory 镜像地址,按硬件替换service_type对应镜像即可。
使用步骤(界面)
- 进入「服务化 → 推理服务 → 新建」。
service_type选择对应的 LLM 类型(如vllm)。- 填写模型名称、版本、模型地址(HF 名或挂载路径),按需设置 GPU 卡数(= 张量并行路数)、副本数、资源。
- 保存后平台自动生成启动命令、端口、健康检查与(如 mindie 的)配置文件并拉起 Pod。
- 部署成功后通过自动分配的域名/IP 以 OpenAI 兼容协议 调用(如
POST /v1/chat/completions,model填服务的$KUBEFLOW_MODEL_NAME)。
通用能力(灰度/影子流量/限流/HPA 弹性伸缩/优先级等)对 LLM 推理同样适用,见 模型服务.md 与 平台架构-推理服务.md。