---
title: "Direct Preference Optimization (DPO) (PT)"
source: "https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)"
wiki: "systems-analysis.info/int"
article: "Direct_Preference_Optimization_(DPO)_(PT)"
language: "pt"
categories:
  - "Category:Large language models"
  - "Category:Machine learning"
  - "Category:Portuguese"
revision_id: 1711
wiki_created_at: 2026-09-06T22:52:52Z
wiki_modified_at: 2026-09-06T22:52:52Z
downloaded_at: 2026-09-07T22:47:22Z
---

# Direct Preference Optimization (DPO) (PT)

**Direct Preference Optimization** (**DPO**) — é um método para alinhar grandes modelos de linguagem (LLMs) com as preferências humanas, proposto como uma alternativa mais simples e estável à Aprendizagem por Reforço com Feedback Humano (RLHF). O método foi apresentado em 2023 por um grupo de pesquisadores da Universidade de Stanford, liderado por Rafael Rafailov<sup>[\[1\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-dpo_paper_2023-1)</sup>.

A principal diferença do DPO é que ele otimiza diretamente o modelo de linguagem para corresponder às preferências humanas, evitando o treinamento explícito de um **modelo de recompensa** (reward model) separado e a complexa etapa de aprendizagem por reforço (RL). Isso torna o processo de ajuste fino de LLMs significativamente mais simples, rápido e estável<sup>[\[2\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-huggingface_dpo-2)</sup>.

## Contexto: Limitações do RLHF

O método padrão de **Reinforcement Learning from Human Feedback** (**RLHF**) consiste em três etapas principais:

1.  **Ajuste Fino Supervisionado (SFT)**: Um ajuste fino básico do modelo com exemplos de alta qualidade.
2.  **Treinamento do modelo de recompensa**: A criação de um modelo separado que aprende a atribuir uma "pontuação" às respostas com base em comparações pareadas fornecidas por humanos (por exemplo, a resposta A é melhor que a resposta B).
3.  **Otimização da política com RL**: O ajuste fino do modelo principal usando algoritmos de RL (por exemplo, PPO) para que ele gere respostas que maximizem a pontuação do modelo de recompensa.

Apesar de sua eficácia, o RLHF é um processo complexo, caro e instável. Ele está sujeito a problemas como o **reward hacking** (quando o modelo "engana" o modelo de recompensa) e exige um ajuste cuidadoso de múltiplos hiperparâmetros<sup>[\[1\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-dpo_paper_2023-1)</sup>. O DPO foi desenvolvido para superar essas limitações.

## Princípio de Funcionamento do DPO

O método DPO substitui o pipeline de múltiplas etapas do RLHF por uma única etapa de treinamento, que pode ser vista como um ajuste fino supervisionado.

1.  **Coleta de dados de preferência**. Assim como no RLHF, é coletado um conjunto de dados onde, para cada prompt \`x\`, existem duas respostas: uma preferida (\`y_w\`, winning) e uma rejeitada (\`y_l\`, losing).
2.  **Otimização direta**. Em vez de treinar um modelo de recompensa, o DPO utiliza esses dados diretamente para atualizar o próprio modelo de linguagem. O objetivo da otimização é aumentar a probabilidade de gerar a resposta preferida \`y_w\` e, ao mesmo tempo, diminuir a probabilidade de gerar a resposta rejeitada \`y_l\`.

Matematicamente, isso se resume a minimizar uma função de perda baseada na regressão logística aplicada à diferença das probabilidades logarítmicas das respostas. Para que o modelo não "esqueça" seu conhecimento original, o DPO, assim como o RLHF, utiliza um **modelo de referência** (*reference model*, geralmente a versão SFT) para regularização, evitando um desvio muito grande da distribuição original de respostas<sup>[\[2\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-huggingface_dpo-2)</sup>.

## Vantagens em Comparação com o RLHF

- **Simplicidade e estabilidade**: O DPO elimina a necessidade de treinar um modelo de recompensa separado e a configuração complexa do RL. O processo se torna mais simples, previsível e menos propenso a erros<sup>[\[3\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-superannotate_dpo-3)</sup>.
- **Eficiência e velocidade**: A exclusão de duas etapas reduz significativamente os custos computacionais (horas de GPU) e o tempo necessário para ajustar o modelo. Segundo algumas estimativas, o DPO é 50-60% mais econômico que o RLHF<sup>[\[4\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-arbisoft_dpo-4)</sup>.
- **Qualidade dos resultados**: Experimentos mostraram que o DPO não é inferior ao RLHF em qualidade e, em algumas tarefas, como o controle do tom da resposta, chega a superá-lo. Modelos treinados com DPO demonstram melhor alinhamento com as preferências humanas<sup>[\[1\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-dpo_paper_2023-1)</sup>.
- **Ausência de degradação das habilidades básicas**: O ajuste fino com DPO afeta minimamente as capacidades gerais do modelo (por exemplo, conhecimento factual ou lógica), ao contrário do RLHF, que às vezes pode piorar as métricas básicas<sup>[\[5\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-iclr_blog-5)</sup>.

## Aplicação e Adoção

Graças à sua eficiência e simplicidade, o DPO rapidamente ganhou ampla adoção. Foi implementado nas principais bibliotecas de código aberto, como a **Hugging Face TRL** e a **OpenRLHF**.

Muitos modelos abertos de sucesso foram ajustados com DPO, incluindo o **Zephyr-7B** e o **TÜLU 2**. Esses modelos mostraram alto desempenho em benchmarks de avaliação da qualidade das respostas, confirmando a eficácia do DPO para modelos de grande escala<sup>[\[5\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-iclr_blog-5)</sup>.

Líderes da indústria também integraram o DPO em suas plataformas. Por exemplo, a Microsoft adicionou suporte ao ajuste fino com DPO em seu serviço Azure OpenAI, permitindo que os usuários personalizem modelos, incluindo o GPT-4, com seus próprios dados de preferência<sup>[\[6\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-azure_dpo-6)</sup>.

## Limitações

Apesar de suas vantagens, o DPO herda algumas limitações da própria abordagem de treinamento baseada em preferências:

- **Sensibilidade aos dados**: A qualidade e a diversidade dos dados de preferência coletados são cruciais. Se os dados forem tendenciosos (por exemplo, contiverem apenas um idioma ou estilo), o modelo pode sofrer overfitting e ter seu desempenho prejudicado em outras áreas<sup>[\[7\]](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_note-toloka_dpo-7)</sup>.
- **Treinamento estático**: Assim como o RLHF, o DPO é treinado em um conjunto de dados estático e não prevê interação dinâmica com o ambiente. Este método é adequado para alinhamento em uma única etapa, mas não para tarefas que exigem aprendizado por meio de ações sequenciais.

## Ligações externas

- <a href="https://huggingface.co/docs/trl/main/en/dpo_trainer" class="external text" rel="nofollow">Documentação do DPO na biblioteca Hugging Face TRL</a>
- <a href="https://iclr-blogposts.github.io/2024/blog/rlhf-without-rl/" class="external text" rel="nofollow">Análise comparativa de RLHF e DPO no ICLR 2024 Blogposts</a>

## Literatura

- Rafailov, R. et al. (2023). *Direct Preference Optimization: Your Language Model is Secretly a Reward Model*. <a href="https://arxiv.org/abs/2305.18290" class="external text" rel="nofollow">arXiv:2305.18290</a>.
- Hong, J.; Lee, N.; Thorne, J. (2024). *ORPO: Monolithic Preference Optimization without Reference Model*. <a href="https://arxiv.org/abs/2403.07691" class="external text" rel="nofollow">arXiv:2403.07691</a>.
- Sun, L. et al. (2025). *BPO: Revisiting Preference Modeling in Direct Preference Optimization*. <a href="https://arxiv.org/abs/2506.03557" class="external text" rel="nofollow">arXiv:2506.03557</a>.
- Yin, Y. et al. (2024). *Self-Augmented Preference Optimization: Off-Policy Paradigms for Language Model Alignment*. <a href="https://arxiv.org/abs/2405.20830" class="external text" rel="nofollow">arXiv:2405.20830</a>.
- Wu, Y. et al. (2024). *Self-Play Preference Optimization for Language Model Alignment*. <a href="https://arxiv.org/abs/2405.00675" class="external text" rel="nofollow">arXiv:2405.00675</a>.
- Li, P. et al. (2024). *ROPO: Robust Preference Optimization for Large Language Models*. <a href="https://arxiv.org/abs/2404.04102" class="external text" rel="nofollow">arXiv:2404.04102</a>.
- Tunstall, L. et al. (2023). *Zephyr: Direct Distillation of LM Alignment*. <a href="https://arxiv.org/abs/2310.16944" class="external text" rel="nofollow">arXiv:2310.16944</a>.
- Wu, F. et al. (2023). *Diffusion-DPO: Diffusion Model Alignment Using Direct Preference Optimization*. <a href="https://arxiv.org/abs/2311.12908" class="external text" rel="nofollow">arXiv:2311.12908</a>.
- Lee, H. et al. (2023). *RLAIF vs. RLHF: Scaling Reinforcement Learning from Human Feedback with AI Feedback*. <a href="https://arxiv.org/abs/2309.00267" class="external text" rel="nofollow">arXiv:2309.00267</a>.
- Rafailov, R.; Sharma, A.; Mitchell, E.; Manning, C. D.; Finn, C. (2024). *Direct Preference Optimization (v3): Enhanced Experiments and Analysis*. <a href="https://arxiv.org/pdf/2305.18290v3" class="external text" rel="nofollow">arXiv:2305.18290v3</a>.

## Notas

1.  <span id="cite_note-dpo_paper_2023-1">↑ <sup>[1.0](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-dpo_paper_2023_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-dpo_paper_2023_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-dpo_paper_2023_1-2)</sup> Rafailov, R., et al. «Direct Preference Optimization: Your Language Model is Secretly a Reward Model». *arXiv:2305.18290*. <a href="https://arxiv.org/abs/2305.18290" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-huggingface_dpo-2">↑ <sup>[2.0](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-huggingface_dpo_2-0)</sup> <sup>[2.1](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-huggingface_dpo_2-1)</sup> «Simplifying Alignment: From RLHF to Direct Preference Optimization (DPO)». *Hugging Face Blog*. <a href="https://huggingface.co/blog/ariG23498/rlhf-to-dpo" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-superannotate_dpo-3">[↑](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-superannotate_dpo_3-0) «What is direct preference optimization (DPO)?». *SuperAnnotate Blog*. <a href="https://www.superannotate.com/blog/direct-preference-optimization-dpo" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-arbisoft_dpo-4">[↑](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-arbisoft_dpo_4-0) «RLHF vs DPO: A Closer Look into the Process and Methodology». *Arbisoft Blog*. <a href="https://arbisoft.com/blogs/rlhf-vs-dpo-a-closer-look-into-the-process-and-methodology" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-iclr_blog-5">↑ <sup>[5.0](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-iclr_blog_5-0)</sup> <sup>[5.1](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-iclr_blog_5-1)</sup> «RLHF without RL - Direct Preference Optimization». *ICLR Blogposts 2024*. <a href="https://iclr-blogposts.github.io/2024/blog/rlhf-without-rl/" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-azure_dpo-6">[↑](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-azure_dpo_6-0) «Direct preference optimization». *Azure OpenAI \| Microsoft Learn*. <a href="https://learn.microsoft.com/en-us/azure/ai-foundry/openai/how-to/fine-tuning-direct-preference-optimization" class="external autonumber" rel="nofollow">[6]</a></span>
7.  <span id="cite_note-toloka_dpo-7">[↑](https://systems-analysis.info/int/Direct_Preference_Optimization_(DPO)_(PT)#cite_ref-toloka_dpo_7-0) «Direct Preference Optimization (DPO): A Lightweight Counterpart to RLHF». *Toloka AI Blog*. <a href="https://toloka.ai/blog/direct-preference-optimization/" class="external autonumber" rel="nofollow">[7]</a></span>
