vLLM + Ertas

    在 Ertas Studio 中微调模型并使用 vLLM 部署,实现具备连续批处理、PagedAttention 和兼容 OpenAI API 端点的生产级服务。

    Overview

    vLLM 是为生产 LLM 服务设计的高吞吐量、内存高效的推理引擎。其核心创新 PagedAttention 像虚拟内存页一样管理 KV 缓存,大幅减少内存浪费,与传统推理框架相比实现显著更高的并发请求吞吐量。vLLM 支持连续批处理、多 GPU 张量并行、推测解码以及 AWQ 和 GPTQ 等量化格式,使其成为需要以可预测延迟大规模服务模型的团队的首选。

    与面向桌面的工具不同,vLLM 是为服务器环境构建的,在这些环境中吞吐量、延迟百分位和资源利用率至关重要。它开箱即用地提供兼容 OpenAI 的 API 服务器,支持流式响应,并与可观测性工具集成以监控请求队列、token 生成速率和 GPU 利用率。对于使用 Ertas 微调面向客户应用模型的组织,vLLM 弥合了训练模型和生产就绪推理服务之间的差距。

    How Ertas Integrates

    在 Ertas Studio 中微调后,您可以以与 vLLM 支持架构兼容的格式导出模型。对于 Hugging Face 格式的模型,Ertas 将微调权重直接推送到 Hub 仓库(公共或私有),vLLM 可以在启动时从中拉取。对于基于 LoRA 的微调,Ertas 单独导出适配器权重,允许 vLLM 使用其内置的 LoRA 服务支持在基础模型之上动态加载——使多个微调变体共享相同的基础模型内存。

    此集成专为模型需要处理数百或数千并发请求的生产工作负载而设计。典型工作流涉及在 Ertas Studio 中微调客服模型、导出适配器,并在负载均衡器后面的 vLLM 上部署。vLLM 的连续批处理确保即使在可变流量模式下也能高效利用 GPU,而其兼容 OpenAI 的 API 意味着从云 AI 提供商迁移到自托管推理时您的应用代码无需更改。

    Getting Started

    1. 1

      在 Ertas Studio 中微调

      在 Ertas Studio 中使用 LoRA 或全参数微调训练模型。LoRA 推荐用于 vLLM 部署,因为它支持高效的多适配器服务。

    2. 2

      导出模型权重

      从 Ertas Studio 将微调模型或 LoRA 适配器推送到 Hugging Face Hub。对于全微调,导出完整模型;对于 LoRA,单独导出适配器权重。

    3. 3

      安装和配置 vLLM

      在您的 GPU 服务器上安装 vLLM。根据您的硬件和流量需求配置服务参数,包括张量并行、最大模型长度和 GPU 内存利用率。

    4. 4

      启动 vLLM 服务器

      使用您的模型路径或 Hugging Face 仓库 ID 启动 vLLM。对于 LoRA 适配器,指定基础模型和适配器路径。vLLM 立即暴露兼容 OpenAI 的 API。

    5. 5

      负载测试并调优

      针对 vLLM 端点运行负载测试,在预期流量模式下验证吞吐量和延迟。根据需要调整批量大小、最大并发请求数和 GPU 内存分配。

    6. 6

      在负载均衡器后面部署

      将 vLLM 服务器置于反向代理或负载均衡器后面用于生产流量。通过添加更多带有跨 GPU 张量并行的 vLLM 实例进行水平扩展。

    bash
    # After fine-tuning in Ertas Studio and pushing to Hugging Face,
    # serve the model with vLLM
    vllm serve my-org/my-fine-tuned-model \
      --tensor-parallel-size 2 \
      --max-model-len 4096 \
      --gpu-memory-utilization 0.9 \
      --port 8000
    
    # For LoRA adapter serving on a shared base model
    vllm serve meta-llama/Llama-3-8B \
      --enable-lora \
      --lora-modules my-adapter=my-org/my-lora-adapter \
      --port 8000
    
    # Query the endpoint
    curl http://localhost:8000/v1/chat/completions \
      -H "Content-Type: application/json" \
      -d '{
        "model": "my-adapter",
        "messages": [{"role": "user", "content": "Hello"}]
      }'
    使用 vLLM 服务您的 Ertas 微调模型或 LoRA 适配器,实现具有兼容 OpenAI API 的高吞吐量生产推理。

    Benefits

    • PagedAttention 比朴素推理实现提供高达 24 倍的吞吐量提升
    • 连续批处理在可变流量负载下最大化 GPU 利用率
    • 内置 LoRA 服务支持在单个基础模型上运行多个微调变体
    • 兼容 OpenAI 的 API 实现从云提供商零更改迁移
    • 张量并行支持跨多 GPU 服务大型模型
    • 生产就绪,具备流式传输、指标和健康检查端点

    Related Resources

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.