Transformers documentation

vLLM

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

vLLM

vLLM é um motor de inferência de alto rendimento para servir LLMs em escala. Ele realiza o loteamento contínuo de solicitações e mantém a memória do cache KV compacta com PagedAttention.

Defina model_impl="transformers" para carregar um modelo usando o backend de modelagem do Transformers.

from vllm import LLM

llm = LLM(model="meta-llama/Llama-3.2-1B", model_impl="transformers")
print(llm.generate(["The capital of France is"]))

Passe --model-impl transformers para o comando vllm serve para servir online.

vllm serve meta-llama/Llama-3.2-1B \
    --task generate \
    --model-impl transformers

Integração com Transformers

  1. AutoConfig.from_pretrained() carrega o config.json do modelo do Hub ou do seu cache do Hugging Face. O vLLM verifica o campo architectures em relação ao seu registro interno de modelos para determinar qual classe de modelo do vLLM deve ser usada.
  2. Se o modelo não estiver no registro, o vLLM chama AutoModel.from_config() para carregar a implementação do modelo Transformers.
  3. AutoTokenizer.from_pretrained() carrega os arquivos do tokenizer. O vLLM faz cache de alguns elementos internos do tokenizer para reduzir a sobrecarga durante a inferência.
  4. Os pesos do modelo são baixados do Hub no formato safetensors.

Definir model_impl="transformers" ignora o registro de modelos do vLLM e carrega diretamente do Transformers. O vLLM substitui a maioria dos módulos de modelo (MoE, atenção, camadas lineares) por suas próprias versões otimizadas, mantendo a estrutura do modelo do Transformers.

Recursos

Update on GitHub