使用 Fastchat 部署推理服务
FastChat 是一个专为训练、服务和评估大型语言模型(LLM)聊天机器人而设计的开源平台。AIStudio 为推理服务提供了集成 FastChat 和 vLLM 的推理镜像。
注意
本文仅用平台预置的 Fastchat 镜像。预置的 Fastchat 镜像较旧,且依赖自定义启动脚本,建议酌情参考。
基本流程
使用 AIStudio 预置推理镜像部署服务,主要遵循以下步骤:
准备模型文件:将需要部署的模型文件上传至共享高性能存储。建议通过 AICoder 上传或下载模型。
选择合适的算力资源与实例规格。如需帮助,详见推理服务标准部署流程。
从预置镜像列表中选择以下 FastChat 预置镜像:
cr.infini-ai.com/infini-ai/inference-base:v1-vllm0.4.0-torch2.1-cuda12.3-ubuntu22.04cr.infini-ai.com/infini-ai/inference-base:v2-vllm0.6.2-torch2.2-cuda12.3-ubuntu22.04(推荐,更新的 vLLM 版本)
注意
可尝试搜索「推理基础镜像」,镜像标签通常会注明关键组件的版本信息。
配置启动命令:预置 Fastchat 推理镜像中包含一个入口脚本(如
/app/entrypoint.sh),该脚本会根据环境变量来启动必要的服务(Controller, OpenAI API Server, vLLM Worker)。您需要在启动命令中:- 设置环境变量:配置模型、并行度、资源限制等。
- 准备模型路径:使用
ln -s命令将共享存储中的模型目录链接到镜像内脚本期望的位置。 - 调用入口脚本。
以下是使用
inference-base:v2镜像时常用的环境变量必需:
MODEL: 您为模型指定的名称标识符。此名称必须与ln -s命令的目标路径中的名称一致。例如:qwen2.5-0.5b-instruct。TP(Tensor Parallelism): Tensor 并行大小,通常设置为实例规格中的 GPU 数量。例如:1(单卡),2(双卡)。
常用可选 (带默认值):
GPU_MEMORY_UTILIZATION: GPU 显存使用率上限(0.0 到 1.0)。默认通常为0.90。MAX_MODEL_LEN: 模型支持的最大序列长度。根据模型能力调整。MAX_NUM_SEQS: vLLM Worker 能处理的最大并发请求数。默认通常为256。LOG: 是否启用详细日志。1为启用 (默认),0为禁用。
其他可选 (可能需要显式设置):
ENABLE_LORA=True: 启用 LoRA 支持。LORA_MODELS=...: 配置 LoRA 模型。- (更多高级 vLLM 参数,如
BLOCK_SIZE,PREFIX_CACHING等)
以下是使用
inference-base:v2预置镜像的典型启动命令模板:bash#!/bin/bash # --- 1. 设置环境变量 --- # (必需) export MODEL=qwen2.5-0.5b-instruct # 模型标识符 (与下方 ln 命令目标一致) export TP=1 # Tensor 并行大小 (根据实例 GPU 数量设置) # (常用可选,按需修改) # export GPU_MEMORY_UTILIZATION=0.90 # export MAX_MODEL_LEN=4096 # 根据您的模型调整 # export MAX_NUM_SEQS=256 # --- 2. 准备模型路径 --- # 假设您的模型存放在共享存储的 /mnt/public/models/Qwen2.5-0.5B-Instruct # 将其软链接到镜像内脚本期望的 /app/model/${MODEL} 路径 # 请确保源路径 (/mnt/public/...) 是您实际存放模型的路径且已在 Step 2 中挂载 ln -s /mnt/public/models/Qwen2.5-0.5B-Instruct /app/model/${MODEL} # --- 3. 执行镜像内置的启动脚本 --- # 此脚本会读取环境变量并启动 FastChat + vLLM 服务 /app/entrypoint.sh提示
- 请务必将
/mnt/public/models/Qwen2.5-0.5B-Instruct替换为您实际存放模型文件的路径(该路径必须是在服务配置的 "Step 2 配置存储" 中挂载的共享存储路径)。 - 请确保
export MODEL的值与ln -s命令的目标目录名/app/model/${MODEL}中的${MODEL}部分完全一致。 - 如需了解预置镜像支持的所有环境变量和高级用法,请参考相关文档或镜像说明。
配置存储时,请务必挂载包含模型文件的共享高性能存储,确保启动命令可访问该模型文件。如需帮助,详见推理服务标准部署流程。
填写外网配置和内网配置。内网监听端口号必须于 vllm
--port参数值一致。如需帮助,详见推理服务标准部署流程。
确认创建好,平台根据配置拉取镜像、启动实例并运行启动命令。部署成功后,即可通过配置的网络地址访问服务。
查看日志与排错
如果服务部署失败或运行异常:
- 查看部署进度:在服务列表或详情页,检查部署状态和子步骤是否有错误信息。
- 查看实例日志:进入服务详情页,找到运行实例,点击查看实时日志或历史日志。如果容器过快退出,导致无法抓取日志,可在启动命令最后添加
sleep inf保留现场。常见问题包括:- 模型路径不存在或权限问题。
- 模型文件损坏或不兼容所选镜像的框架版本。
- 资源不足(如 GPU 显存)。
- 访问服务:服务部署成功后,使用内网或外网地址进行访问测试。
📖 推理服务:使用 FastChat 和vLLM 部署大语言模型