GenStudio LLM API 部分模型价格调整公告GenStudio LLM API 部分模型价格调整公告 ,新价格 2025 年 11 月 1 日生效调价公告
Skip to content

使用 Fastchat 部署推理服务

FastChat 是一个专为训练、服务和评估大型语言模型(LLM)聊天机器人而设计的开源平台。AIStudio 为推理服务提供了集成 FastChat 和 vLLM 的推理镜像。

注意

本文仅用平台预置的 Fastchat 镜像。预置的 Fastchat 镜像较旧,且依赖自定义启动脚本,建议酌情参考。

基本流程

使用 AIStudio 预置推理镜像部署服务,主要遵循以下步骤:

  1. 准备模型文件:将需要部署的模型文件上传至共享高性能存储。建议通过 AICoder 上传或下载模型。

  2. 选择合适的算力资源实例规格。如需帮助,详见推理服务标准部署流程

  3. 预置镜像列表中选择以下 FastChat 预置镜像:

    • cr.infini-ai.com/infini-ai/inference-base:v1-vllm0.4.0-torch2.1-cuda12.3-ubuntu22.04
    • cr.infini-ai.com/infini-ai/inference-base:v2-vllm0.6.2-torch2.2-cuda12.3-ubuntu22.04 (推荐,更新的 vLLM 版本)

    注意

    可尝试搜索「推理基础镜像」,镜像标签通常会注明关键组件的版本信息。

  4. 配置启动命令:预置 Fastchat 推理镜像中包含一个入口脚本(如 /app/entrypoint.sh),该脚本会根据环境变量来启动必要的服务(Controller, OpenAI API Server, vLLM Worker)。您需要在启动命令中:

    1. 设置环境变量:配置模型、并行度、资源限制等。
    2. 准备模型路径:使用 ln -s 命令将共享存储中的模型目录链接到镜像内脚本期望的位置。
    3. 调用入口脚本

    以下是使用 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} 部分完全一致。
    • 如需了解预置镜像支持的所有环境变量和高级用法,请参考相关文档或镜像说明。
  5. 配置存储时,请务必挂载包含模型文件的共享高性能存储,确保启动命令可访问该模型文件。如需帮助,详见推理服务标准部署流程

  6. 填写外网配置内网配置。内网监听端口号必须于 vllm --port 参数值一致。如需帮助,详见推理服务标准部署流程

确认创建好,平台根据配置拉取镜像、启动实例并运行启动命令。部署成功后,即可通过配置的网络地址访问服务。

查看日志与排错

如果服务部署失败或运行异常:

  • 查看部署进度:在服务列表或详情页,检查部署状态和子步骤是否有错误信息。
  • 查看实例日志:进入服务详情页,找到运行实例,点击查看实时日志或历史日志。如果容器过快退出,导致无法抓取日志,可在启动命令最后添加 sleep inf 保留现场。常见问题包括:
    • 模型路径不存在或权限问题。
    • 模型文件损坏或不兼容所选镜像的框架版本。
    • 资源不足(如 GPU 显存)。
  • 访问服务:服务部署成功后,使用内网或外网地址进行访问测试。