# vLLM

[vLLM](https://github.com/vllm-project/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.

```py
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.

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

## Integração com Transformers

1. [AutoConfig.from_pretrained()](/docs/transformers/main/pt/model_doc/auto#transformers.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 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()](/docs/transformers/main/pt/model_doc/auto#transformers.AutoModel.from_config) para carregar a implementação do modelo Transformers.
3. [AutoTokenizer.from_pretrained()](/docs/transformers/main/pt/model_doc/auto#transformers.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

- Consulte a [documentação do vLLM](https://docs.vllm.ai/en/latest/models/supported_models.html#transformers) para mais exemplos de uso e dicas.
- [Integração com o Hugging Face](https://docs.vllm.ai/en/latest/design/huggingface_integration/) explica como o vLLM se integra ao Transformers.

