# Trainer

[Trainer](/docs/transformers/main/pt/main_classes/trainer#transformers.Trainer) é um loop completo de treinamento e avaliação para modelos Transformers. Você só precisa de um modelo e um conjunto de dados para começar.

Por baixo dos panos, o [Trainer](/docs/transformers/main/pt/main_classes/trainer#transformers.Trainer) gerencia o loteamento, a embaralhamento e o preenchimento do seu conjunto de dados em tensores. O loop de treinamento executa a passagem direta, calcula a perda, retropropaga os gradientes e atualiza os pesos. Configure a execução do treinamento com [TrainingArguments](/docs/transformers/main/pt/main_classes/trainer#transformers.TrainingArguments) para personalizar tudo, desde o tamanho do lote e a duração do treinamento até estratégias distribuídas, compilação e muito mais.

## Próximas etapas

- Comece pelo tutorial de [fine-tuning](./training) para uma introdução ao treinamento de um grande modelo de linguagem com o [Trainer](/docs/transformers/main/pt/main_classes/trainer#transformers.Trainer).
- Consulte o guia [Subclassing Trainer methods](./trainer_customize) para ver exemplos de como criar subclasses dos métodos de [Trainer](/docs/transformers/main/pt/main_classes/trainer#transformers.Trainer).
- Consulte o guia de [Data collators](./data_collators) para aprender a criar um data collator para a montagem personalizada de lotes.
- Consulte o guia de [Callbacks](./trainer_callbacks) para aprender a se integrar aos eventos de treinamento.

