连续批处理(实验性质)#

连续批处理是诸如 VLLM 这样的推理引擎中提升吞吐的重要技术。Xinference 旨在通过这项技术提升 transformers 推理引擎的吞吐。

使用方式#

当前,此功能在满足以下条件时开启:

  • 首先,启动 Xinference 时需要将环境变量 XINFERENCE_TRANSFORMERS_ENABLE_BATCHING 置为 1

XINFERENCE_TRANSFORMERS_ENABLE_BATCHING=1 xinference-local --log-level debug
  • 然后,启动 LLM 模型时选择 transformers 推理引擎。例如:

xinference launch -e <endpoint> --model-engine transformers -n qwen1.5-chat -s 4 -f pytorch -q none

一旦此功能开启,chat 接口将被此功能接管,别的接口不受影响。chat 接口的使用方式没有任何变化。

注意事项#

  • 当前,此功能仅支持 LLM 模型的 chat 功能。

  • 如果使用 GPU 推理,此功能对显存要求较高。因此请谨慎提高对同一个模型的并发请求量。launch_model 接口提供可选参数 max_num_seqs 用于调整并发度,默认值为 16

  • 此功能仍处于实验阶段,欢迎反馈任何问题。