Instalación#

Xinference se puede instalar mediante pip en Linux, Windows y MacOS. Si necesita usar Xinference para la inferencia de modelos, puede especificar diferentes motores según el modelo.

Si deseas poder razonar todos los modelos compatibles, puedes instalar todas las dependencias necesarias con el siguiente comando:

pip install "xinference[all]"

Distinto en la versión v1.8.1: Debido a que vllm y sglang no son compatibles en las dependencias de paquetes, hemos eliminado sglang del paquete «all». Si desea utilizar sglang, use pip install 'xinference[sglang]'.

Algunos escenarios de uso requieren especial atención.

Formato GGUF usado con motor llama.cpp

En este caso, se recomienda instalar manualmente sus dependencias según las especificaciones de su hardware para habilitar la aceleración. Para más detalles, consulte la sección Llama.cpp engine.

Formato AWQ o GPTQ usado con el motor transformers

Este contenido es nuevo a partir de la v1.6.0.

Esto se debe a que las dependencias de esta etapa requieren opciones especiales y son difíciles de instalar. Ejecute el siguiente comando con anticipación:

pip install "xinference[transformers_quantization]" --no-build-isolation

Algunas dependencias, como transformers, podrían degradarse, puede ejecutar posteriormente pip install "xinference[all]".

Si solo deseas instalar las dependencias necesarias, a continuación se detallan los pasos para hacerlo.

Transformers engine#

PyTorch (transformers) soporta casi todos los modelos más recientes; este es el motor predeterminado utilizado por los modelos de PyTorch:

pip install "xinference[transformers]"

Nota:

  • El motor de Transformers soporta los formatos pytorch / gptq / awq / bnb / fp4.

  • La biblioteca transformers que soporta FPQuantConfig es necesaria para el formato FP4. Si encuentra un error de importación, actualice transformers a una versión más reciente.

El motor vLLM#

vLLM es un motor de inferencia de modelos grandes de alto rendimiento que admite alta concurrencia. Cuando se cumplen las siguientes condiciones, Xinference selecciona automáticamente vllm como motor para lograr un mayor rendimiento:

  • El formato del modelo es pytorch, gptq, awq, fp4, fp8 o bnb.

  • Cuando el formato del modelo es pytorch, la opción de cuantificación debe ser none.

  • Cuando el formato del modelo sea awq, la opción de cuantización debe ser Int4.

  • Cuando el formato del modelo sea gptq, las opciones de cuantización deben ser Int3, Int4 o Int8.

  • El sistema operativo es Linux y tiene al menos un dispositivo compatible con CUDA.

  • Los campos model_family de los modelos personalizados y model_name de los modelos integrados están en la lista de soporte de vLLM.

Actualmente, los modelos compatibles incluyen:

  • code-llama, code-llama-instruct, code-llama-python, deepseek, deepseek-chat, deepseek-coder, deepseek-coder-instruct, deepseek-r1-distill-llama, gorilla-openfunctions-v2, HuatuoGPT-o1-LLaMA-3.1, llama-2, llama-2-chat, llama-3, llama-3-instruct, llama-3.1, llama-3.1-instruct, llama-3.3-instruct, minicpm5-1b, tiny-llama, wizardcoder-python-v1.0, wizardmath-v1.0, Yi, Yi-1.5, Yi-1.5-chat, Yi-1.5-chat-16k, Yi-200k, Yi-chat

  • codestral-v0.1, mistral-instruct-v0.1, mistral-instruct-v0.2, mistral-instruct-v0.3, mistral-large-instruct, mistral-nemo-instruct, mistral-v0.1, openhermes-2.5, seallm_v2

  • Baichuan-M2, codeqwen1.5, codeqwen1.5-chat, deepseek-r1-distill-qwen, DianJin-R1, fin-r1, HuatuoGPT-o1-Qwen2.5, KAT-V1, marco-o1, qwen1.5-chat, qwen2-instruct, qwen2.5, qwen2.5-coder, qwen2.5-coder-instruct, qwen2.5-instruct, qwen2.5-instruct-1m, qwenLong-l1, QwQ-32B, QwQ-32B-Preview, seallms-v3, skywork-or1, skywork-or1-preview, XiYanSQL-QwenCoder-2504

  • llama-3.2-vision, llama-3.2-vision-instruct

  • baichuan-2, baichuan-2-chat

  • InternLM2ForCausalLM

  • qwen-chat

  • mixtral-8x22B-instruct-v0.1, mixtral-instruct-v0.1, mixtral-v0.1

  • cogagent

  • glm-edge-chat, glm4-chat, glm4-chat-1m

  • codegeex4, glm-4v

  • seallm_v2.5

  • orion-chat

  • qwen1.5-moe-chat, qwen2-moe-instruct

  • CohereForCausalLM

  • deepseek-v2-chat, deepseek-v2-chat-0628, deepseek-v2.5, deepseek-vl2

  • deepseek-prover-v2, deepseek-r1, deepseek-r1-0528, deepseek-v3, deepseek-v3-0324, Deepseek-V3.1, moonlight-16b-a3b-instruct

  • deepseek-r1-0528-qwen3, qwen3

  • minicpm3-4b

  • internlm3-instruct

  • gemma-3-1b-it

  • glm4-0414

  • minicpm-2b-dpo-bf16, minicpm-2b-dpo-fp16, minicpm-2b-dpo-fp32, minicpm-2b-sft-bf16, minicpm-2b-sft-fp32, minicpm4

  • Ernie4.5

  • Qwen3-Coder, Qwen3-Instruct, Qwen3-Thinking

  • glm-4.5, GLM-4.6, GLM-4.7

  • gpt-oss

  • seed-oss

  • Qwen3-Next-Instruct, Qwen3-Next-Thinking

  • DeepSeek-V3.2, DeepSeek-V3.2-Exp

  • MiniMax-M2, MiniMax-M2.5, MiniMax-M2.7

  • GLM-4.7-Flash

  • glm-5, glm-5.1

  • DeepSeek-V4-Flash, DeepSeek-V4-Pro

Instala xinference y vLLM:

pip install "xinference[vllm]"

# FlashInfer is optional but required for specific functionalities such as sliding window attention with Gemma 2.
# For CUDA 12.4 & torch 2.4 to support sliding window attention for gemma 2 and llama 3.1 style rope
pip install flashinfer -i https://flashinfer.ai/whl/cu124/torch2.4
# For other CUDA & torch versions, please check https://docs.flashinfer.ai/installation.html

Llama.cpp engine#

Xinference admite modelos en formato gguf a través de xllamacpp. xllamacpp es desarrollado por el equipo de Xinference y se convierte en el único backend de llama.cpp a partir de v1.6.0.

Advertencia

Desde Xinference v1.5.0, llama-cpp-python quedó obsoleto; a partir de Xinference v1.6.0, este backend ha sido eliminado.

Pasos iniciales:

pip install "xinference[llama_cpp]"

Para obtener más instrucciones de instalación de xllamacpp y habilitar la aceleración por GPU, consulte: xorbitsai/xllamacpp

El motor SGLang#

SGLang cuenta con un runtime de inferencia de alto rendimiento basado en RadixAttention. Acelera significativamente la ejecución de programas complejos de LLM al reutilizar automáticamente la caché KV entre múltiples llamadas. También admite otras técnicas comunes de inferencia, como el procesamiento por lotes continuo y el paralelismo tensorial.

Pasos iniciales:

pip install "xinference[sglang]"

Motor MLX#

MLX-lm se utiliza para proporcionar una inferencia eficiente de LLM en chips Apple Silicon.

Pasos iniciales:

pip install "xinference[mlx]"

Otras plataformas#