Transformers documentation

Xuất ra môi trường sản xuất

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

Xuất ra môi trường sản xuất

Xuất các mô hình của Transformers sang các định dạng khác nhau cho các runtime và thiết bị được tối ưu hóa. Triển khai cùng một mô hình lên các nhà cung cấp đám mây hoặc chạy trên các thiết bị di động và biên. Bạn không cần viết lại mô hình từ đầu cho mỗi môi trường triển khai. Tự do triển khai trên bất kỳ hệ sinh thái suy luận nào.

ExecuTorch

ExecuTorch chạy các mô hình PyTorch trên thiết bị di động và thiết bị biên. Nó xuất mô hình thành một đồ thị gồm các toán tử chuẩn hóa, biên dịch đồ thị đó thành một chương trình ExecuTorch, và thực thi nó trên thiết bị đích. Runtime nhẹ và tính toán kế hoạch thực thi trước.

Cài đặt Optimum ExecuTorch từ mã nguồn.

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

Xuất mô hình Transformers sang ExecuTorch bằng công cụ CLI.

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"

Chạy lệnh sau để xem tất cả các tùy chọn xuất.

optimum-cli export executorch --help

ONNX

ONNX là một ngôn ngữ chung để mô tả các mô hình từ những framework khác nhau. Nó biểu diễn mô hình dưới dạng đồ thị gồm các toán tử chuẩn hóa với các kiểu, hình dạng và metadata được định nghĩa rõ ràng. Các mô hình được serialize thành các tệp protobuf gọn nhẹ, cho phép triển khai trên nhiều runtime và engine được tối ưu hóa.

Optimum ONNX xuất mô hình sang ONNX với các đối tượng cấu hình. Nó hỗ trợ nhiều kiến trúc và dễ dàng mở rộng. Xuất mô hình thông qua công cụ CLI hoặc theo cách lập trình.

Cài đặt Optimum ONNX.

uv pip install optimum-onnx

optimum-cli

Chỉ định một mô hình để xuất và thư mục đầu ra bằng đối số --model.

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

Chạy lệnh sau để xem tất cả các đối số khả dụng hoặc tham khảo hướng dẫn Xuất mô hình sang ONNX với optimum.exporters.onnx để biết thêm chi tiết.

optimum-cli export onnx --help

Để xuất một model cục bộ, hãy lưu các tệp weights và tokenizer trong cùng một thư mục. Truyền đường dẫn thư mục vào đối số --model và sử dụng đối số --task để chỉ định task. Nếu bạn không cung cấp --task, hệ thống sẽ tự suy luận nó từ model hoặc sử dụng một kiến trúc không có head cụ thể cho task.

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

Triển khai mô hình với bất kỳ runtime nào hỗ trợ ONNX, bao gồm 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

Xuất các mô hình của Transformers theo cách lập trình với Optimum ONNX. Khởi tạo một ORTModel với một mô hình và đặt export=True. Lưu mô hình ONNX bằng 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