TRL documentation

Use o modelo após o treinamento

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

and get access to the augmented documentation experience

to get started

Use o modelo após o treinamento

Depois de treinar um modelo usando o SFTTrainer ou o DPOTrainer, você terá um modelo ajustado que pode ser usado para geração de texto. Nesta seção, mostraremos o processo de carregar o modelo ajustado e gerar texto. Se você precisar executar um servidor de inferência com o modelo treinado, pode explorar bibliotecas como text-generation-inference.

Carregar e Gerar

Se você fez o ajuste fino de um modelo completamente, ou seja, sem o uso de PEFT, pode simplesmente carregá-lo como qualquer outro modelo de linguagem em transformers:

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

model_name_or_path = "Qwen/Qwen3-0.6B" #path/to/your/model/or/name/on/hub
device = torch.accelerator.current_accelerator() if torch.accelerator.is_available() else "cpu"

model = AutoModelForCausalLM.from_pretrained(model_name_or_path).to(device)
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path)

inputs = tokenizer.encode("This movie was really", return_tensors="pt").to(device)
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))

Como alternativa, você também pode usar o pipeline:

from transformers import pipeline

model_name_or_path = "Qwen/Qwen3-0.6B" #path/to/your/model/or/name/on/hub
pipe = pipeline("text-generation", model=model_name_or_path)
print(pipe("This movie was really")[0]["generated_text"])

Use Adapters PEFT

from peft import PeftConfig, PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer

base_model_name = "Qwen/Qwen3-0.6B" #path/to/your/model/or/name/on/hub
adapter_model_name = "path/to/my/adapter"

model = AutoModelForCausalLM.from_pretrained(base_model_name)
model = PeftModel.from_pretrained(model, adapter_model_name)

tokenizer = AutoTokenizer.from_pretrained(base_model_name)

Você também pode mesclar os adaptadores no modelo base para que possa usar o modelo como um modelo transformers normal, no entanto o checkpoint será significativamente maior:

model = AutoModelForCausalLM.from_pretrained(base_model_name)
model = PeftModel.from_pretrained(model, adapter_model_name)

model = model.merge_and_unload()
model.save_pretrained("merged_adapters")

Depois de carregar o modelo e mesclar os adaptadores ou mantê-los separadamente por cima, você pode executar a geração como com um modelo normal, conforme descrito acima.

Update on GitHub