Saltar al contenido principal

Entrenamiento ORPO

ORPO combina SFT y optimización de preferencias en una sola fase de entrenamiento.

¿Qué es ORPO?

ORPO (Odds Ratio Preference Optimization) es una alternativa más simple a DPO que no requiere un modelo de referencia. Optimiza preferencias usando razones de probabilidades directamente, reduciendo el uso de memoria y la complejidad del entrenamiento.

Inicio Rápido

ORPO requiere --prompt-text-column y --rejected-text-column. El --text-column tiene por defecto "text", así que solo especifícalo si tu columna elegida tiene un nombre diferente.

Python API

Formato de Datos

Igual que DPO - pares de preferencia:

ORPO vs DPO

Parámetros

VLM (Vision-Language) ORPO

ORPO soporta modelos de vision-lenguaje como Qwen 3.5-VL para alineacion de preferencia con imagen+texto. Establece image_column para habilitar el modo VLM:
El dataset debe tener columnas chosen/rejected con listas de mensajes, y una columna de imagen que contenga las imagenes. La columna de imagen se renombra automaticamente a images para compatibilidad con TRL.

Cuándo Usar ORPO

Elige ORPO cuando:
  • La memoria es limitada (no se necesita modelo de referencia)
  • Quieres SFT + alineación combinado
  • Se prefiere un pipeline de entrenamiento más simple
  • Comenzando desde un modelo base (no ajustado para instrucciones)
Elige DPO cuando:
  • Necesitas control fino
  • Trabajando con modelos ya ajustados para instrucciones
  • El comportamiento del modelo de referencia es importante

Ejemplo: Soporte al Cliente

Próximos Pasos

DPO Training

Método alternativo de alineación

Reward Modeling

Entrenar modelos de recompensa