大模型推理服务框架Xinference一键部署指南

大模型推理服务框架Xinference一键部署指南


一、引言

  • Xinference核心优势

    • 内置WebUI,交互友好,支持一键部署模型。

    • 支持从Modelscope社区下载模型,无需访问Hugging Face(抱抱脸)。

    • 兼容OpenAI API,便于集成。

    • 支持分布式部署,自动分配多GPU资源。


二、本地部署(单机)

1. Docker命令

docker run -it --name xinference -d \
  -p 9997:9997 \
  -e XINFERENCE_MODEL_SRC=modelscope \
  -e XINFERENCE_HOME=/workspace \
  -v /yourworkspace/Xinference:/workspace \
  --gpus all \
  xprobe/xinference:latest \
  xinference-local -H 0.0.0.0

2. 参数说明

参数说明
-p 9997:9997宿主机与容器端口映射
-e XINFERENCE_MODEL_SRC=modelscope指定模型源为Modelscope(默认Hugging Face)
-v /yourworkspace/Xinference:/workspace宿主机与容器目录映射(模型持久化存储)
--gpus all启用宿主机全部GPU资源


三、分布式部署(集群)

1. Master节点部署

docker run -it --name xinference-master -d \
  -p 9997:9997 \
  -e XINFERENCE_MODEL_SRC=modelscope \
  -e XINFERENCE_HOME=/workspace \
  -v /yourworkspace/Xinference:/workspace \
  --gpus all \
  xprobe/xinference:latest \
  xinference-supervisor -H "${master_host}"

2. Worker节点部署

docker run -it --name xinference-worker -d \
  -p 16500:16500 \
  -e XINFERENCE_MODEL_SRC=modelscope \
  -e XINFERENCE_HOME=/workspace \
  -v /yourworkspace/Xinference:/workspace \
  -e "http://${supervisor_host}:9997" \
  -H "${worker_host}"

四、WebUI使用指南

1. 访问地址

http://{宿主机IP}:9997

2. 功能模块

2.1 启动模型(Launch Model)

  • 操作步骤

    1. 选择模型类型(语言/图片/语音/自定义)。

    2. 搜索模型(如qwen1.5-chat)。

    3. 配置参数:模型格式(PyTorch/GPTQ等)、尺寸、量化位数、GPU数量。

    4. 点击 Launch 自动下载并部署模型。

2.2 运行模型管理(Running Models)

  • 功能

    • 查看已部署模型的ID、名称、GPU分配、端口信息。

    • 点击 Test UI 直接测试模型交互。

2.3 注册自定义模型(Register Model)

  • 配置项

    • 模型名称、格式、上下文长度、路径等。

    • 注册后可在 Custom Models 中启动。

2.4 集群监控(Cluster Information)

  • 显示内容

    • Supervisor和Worker节点的CPU/GPU使用情况。

    • 节点数量与资源分配。


五、API调用示例

1. CURL命令

curl -X 'POST' \
  'http://{宿主机IP}:9997/v1/chat/completions' \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "qwen1.5-chat",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "What is the largest animal?"}
    ]
  }'

2. Python客户端(兼容OpenAI)

from openai import OpenAI
client = OpenAI(
   base_url="http://{宿主机IP}:9997/v1",
   api_key="无需填写"
)

response = client.chat.completions.create(
   model="qwen1.5-chat",
   messages=[
       {"role": "user", "content": "What is the largest animal?"}
   ]
)
print(response.choices[0].message.content)

六、总结

  • 核心优势

    • 一键部署,支持单机和分布式。

    • 友好的WebUI和OpenAI兼容API。

    • 模型下载加速(Modelscope集成)。

  • 使用场景

    • 快速部署大语言模型(如Llama3、Qwen等)。

    • 多GPU集群推理服务。


附录:常用命令

查询模型参数

xinference engine -n deepseek-r1-distill-qwen

说明:  

  • 替换{宿主机IP}为实际服务器IP。

  • 模型默认存储在宿主机目录/yourworkspace/Xinference

  • 分布式部署时,确保master_hostworker_host网络互通。


下一篇: 没有了