Transformers documentation

Exportando para produção

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

Exportando para produção

Exporte os modelos do Transformers para diferentes formatos, otimizados para runtimes e dispositivos. Implante o mesmo modelo em provedores de nuvem ou execute-o em dispositivos móveis e de borda. Você não precisa reescrever o modelo do zero para cada ambiente de implantação. Implante livremente em qualquer ecossistema de inferência.

ExecuTorch

ExecuTorch executa modelos do PyTorch em dispositivos móveis e de borda. Ele exporta um modelo para um grafo de operadores padronizados, compila o grafo em um programa ExecuTorch e o executa no dispositivo de destino. O runtime é leve e calcula o plano de execução antecipadamente.

Instale o Optimum ExecuTorch a partir do código-fonte.

git clone https://github.com/huggingface/optimum-executorch.git
cd optimum-executorch
pip install '.[dev]'

Exporte um modelo do Transformers para o ExecuTorch com a ferramenta de linha de comando.

optimum-cli export executorch \
    --model "Qwen/Qwen3-8B" \
    --task "text-generation" \
    --recipe "xnnpack" \
    --use_custom_sdpa \
    --use_custom_kv_cache \
    --qlinear 8da4w \
    --qembedding 8w \
    --output_dir="hf_smollm2"

Execute o comando a seguir para visualizar todas as opções de exportação.

optimum-cli export executorch --help

ONNX

ONNX é uma linguagem compartilhada para descrever modelos de diferentes frameworks. Ele representa modelos como um grafo de operadores padronizados com tipos, formas e metadados bem definidos. Os modelos são serializados em arquivos protobuf compactos que podem ser implantados em runtimes e engines otimizados.

Optimum ONNX exporta modelos para ONNX com objetos de configuração. Ele suporta muitas arquiteturas e é facilmente extensível. Exporte modelos por meio da ferramenta de CLI ou programaticamente.

Instale o Optimum ONNX.

uv pip install optimum-onnx

optimum-cli

Especifique um modelo para exportar e o diretório de saída com o argumento --model.

optimum-cli export onnx --model Qwen/Qwen3-8B Qwen/Qwen3-8b-onnx/

Execute o comando a seguir para visualizar todos os argumentos disponíveis ou consulte o guia Export a model to ONNX with optimum.exporters.onnx para mais detalhes.

optimum-cli export onnx --help

Para exportar um modelo local, salve os arquivos de pesos e do tokenizer no mesmo diretório. Passe o caminho do diretório para o argumento --model e use o argumento --task para especificar a tarefa. Se você não fornecer --task, o sistema a inferirá automaticamente a partir do modelo ou usará uma arquitetura sem um cabeçalho específico para a tarefa.

optimum-cli export onnx --model path/to/local/model --task text-generation Qwen/Qwen3-8b-onnx/

Implante o modelo com qualquer runtime que suporte ONNX, incluindo ONNX Runtime.

from transformers import AutoTokenizer
from optimum.onnxruntime import ORTModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-8b-onnx")
model = ORTModelForCausalLM.from_pretrained("Qwen/Qwen3-8b-onnx")
inputs = tokenizer("Plants generate energy through a process known as ", return_tensors="pt")
outputs = model.generate(**inputs)
print(tokenizer.batch_decode(outputs))

optimum.onnxruntime

Exporte os modelos do Transformers programaticamente com Optimum ONNX. Instancie um ORTModel com um modelo e defina export=True. Salve o modelo ONNX com save_pretrained.

from optimum.onnxruntime import ORTModelForCausalLM
from transformers import AutoTokenizer

ort_model = ORTModelForCausalLM.from_pretrained("Qwen/Qwen3-8b", export=True)
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-8b")

ort_model.save_pretrained("onnx/")
tokenizer.save_pretrained("onnx/")
Update on GitHub