inference-xpu-pytorch 25.03, inference-xpu-pytorch 25.03

更新时间:
复制 MD 格式

This document provides the release notes for inference-xpu-pytorch 25.03.

Main features and bug fixes

Main features

  • Upgraded the PPU SDK in the base image to v1.4.3-hotfix.

  • Upgraded vLLM to v0.7.3 to improve the inference performance for DeepSeek-V3/R1.

  • Upgraded SGLang to v0.4.3.

  • Upgraded ACCL-P to v1.4.3-8 and EIC to 1.3.7.1-v2503, which includes the features and bug fixes from these versions.

Bug fixes

None.

Image contents

inference-xpu-pytorch

inference-xpu-pytorch

Image tag

25.03-v1.4.3-hotfix-vllm0.7.3-torch2.5-cu123-20250331

25.03-v1.4.3-hotfix-sglang0.4.3-torch2.5-cu123-20250331

Application scenarios

Large language model inference

Large language model inference

Framework

pytorch

pytorch

Requirements

PPU SDK V1.4.3-hotfix

PPU SDK V1.4.3-hotfix

System components

  • Ubuntu 22.04

  • Python 3.10

  • Torch 2.5.1

  • CUDA 12.3

  • ACCL-P 1.4.3-8

  • accelerate 1.5.2

  • vLLM 0.7.3+cu123

  • transformers 4.50.3

  • flash-attn 2.5.6

  • ray 2.10.0

  • xformers 0.0.27

  • triton 3.1.0

  • diffusers 0.32.2

  • Ubuntu 22.04

  • Python 3.10

  • Torch 2.5.1

  • CUDA 12.3

  • ACCL-P 1.4.3-8

  • accelerate 1.5.2

  • vLLM 0.7.2+cu123

  • sglang 0.4.3

  • sgl-kernel 0.0.3.post6

  • flashinfer-python 0.2.1.post1

  • transformers 4.50.3

  • flash-attn 2.5.6

  • ray 2.10.0

  • xformers 0.0.27

  • triton 3.1.0

Image assets

Public images

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.03-v1.4.3-hotfix-vllm0.7.3-torch2.5-cu123-20250331

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.03-v1.4.3-hotfix-sglang0.4.3-torch2.5-cu123-20250331

VPC images

  • acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}

    {region-id} is the ID of the region where your Container Service for Kubernetes (ACK) cluster is located, such as cn-beijing or cn-wulanchabu.
    {image:tag} is the actual image name and tag.

Quick start

The following example shows how to pull the inference-xpu-pytorch image using Docker and test the inference service with the Qwen2.5-7B-Instruct model.

Note

To use the inference-xpu-pytorch image in Container Service for Kubernetes (ACK), you can select it from the artifact center page when you create a workload in the Console, or specify the image reference in a YAML file.

  1. Pull the inference image.

    docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:[tag]
  2. Download the open-source model in ModelScope format.

    pip install modelscope
    cd /mnt
    modelscope download --model Qwen/Qwen2.5-7B-Instruct --local_dir ./Qwen2.5-7B-Instruct
  3. Run the following command to start and enter the container.

    docker run -d -t --network=host --privileged --init --ipc=host \
    --ulimit memlock=-1 --ulimit stack=67108864  \
    -v /mnt/:/mnt/ \
    egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:[tag]
  4. Run an inference test to verify the conversational inference feature of vLLM.

    1. Start the server.

      python3 -m vllm.entrypoints.openai.api_server \
      --model /mnt/Qwen2.5-7B-Instruct \
      --trust-remote-code --disable-custom-all-reduce \
      --tensor-parallel-size 1
    2. Run a test on the client.

      curl http://localhost:8000/v1/chat/completions \
          -H "Content-Type: application/json" \
          -d '{
          "model": "/mnt/Qwen2.5-7B-Instruct",  
          "messages": [
          {"role": "system", "content": "You are a friendly AI assistant."},
          {"role": "user", "content": "Tell me about deep learning."}
          ]}'

      The following output is returned:

      image.png

      For more information about using vLLM, see the vLLM documentation.

Known issues

  • DeepSeek issues

    • When testing the DeepSeek model, the --max-model-len setting must be < 80k. Otherwise, an Out of Memory (OOM) error may occur during runtime.

    • SGLang does not support running INT8 quantized models.

    • vllm 0.7.3 requires you to set the --max-num-batched-tokens parameter to avoid the framework's default limit of 2048. For more information, see the open-source community issue [Usage]:Input prompt (2501 tokens) is too long and exceeds limit of 2048 #13370.

  • Performance issues

    • You can use the Autotune tool to improve the performance of Mixture-of-Experts (MoE) models. vLLM can launch a hardware-specific fused_moe kernel through a configuration file to boost performance.

  • Quantization issues

    • vLLM uses the Marlin Kernel by default to accelerate quantized inference for GPTQ, AWQ, W8A8, and WOQ. You can explicitly specify a quantization method to use vLLM's original quantized inference kernels, such as Marlin, W8A8, awq, or gptq. For example, you can specify gptq_acext or awq_acext to perform quantized inference. However, acext currently does not support quantization with act_order=True or GPTQ-Int8 quantized weights. This will be optimized in the next version.

    • vLLM uses vllm-flash-attn, xformers, or flashinfer as its attention backend. By default, the performance of the vllm-flash-attn backend is not yet on par with the native GPU version. This will be addressed in a future release.

    • The A8W8 quantization in vLLM is implemented through integration with the acext library. Its performance needs further optimization.

    • Currently, FP8 quantization is very slow and has not been adapted or optimized for PPU. The support timeline is to be determined.

  • Stability issues