Transformers documentation

SGLang

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

SGLang

SGLang é um motor de inferência de baixa latência e alto throughput para modelos de linguagem grandes (LLMs). Ele também inclui uma linguagem de frontend para a construção de fluxos de trabalho agênticos.

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

import sglang as sgl

llm = sgl.Engine("meta-llama/Llama-3.2-1B-Instruct", model_impl="transformers")
print(llm.generate(["The capital of France is"], {"max_new_tokens": 20})[0])

Passe --model-impl transformers para o comando sglang.launch_server para o serviço online.

python3 -m sglang.launch_server \
  --model-path meta-llama/Llama-3.2-1B-Instruct \
  --model-impl transformers \
  --host 0.0.0.0 \
  --port 30000

Integração com Transformers

Definir model_impl="transformers" instrui o SGLang a ignorar o correspondimento nativo de modelos e usar diretamente o modelo do Transformers.

  1. PreTrainedConfig.from_pretrained() carrega o config.json do modelo do Hub ou do seu cache do Hugging Face.
  2. AutoModel.from_config() resolve a classe do modelo com base na configuração.
  3. Durante o carregamento, _attn_implementation é definido como "sglang". Isso direciona as chamadas de atenção pelos kernels RadixAttention do SGLang.
  4. A classe de linear paralelo do SGLang substitui as camadas lineares para suportar paralelismo de tensor.
  5. A função load_weights preenche o modelo com pesos a partir de arquivos safetensors.

O modelo se beneficia de todas as otimizações do SGLang, ao mesmo tempo em que utiliza a estrutura do modelo do Transformers.

Os modelos compatíveis exigem _supports_attention_backend=True para que o SGLang possa controlar a execução da atenção. Consulte o guia Building a compatible model backend for inference para mais detalhes.

Recursos

Update on GitHub