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
Python API
Formato de Datos
Igual que DPO - pares de preferencia:ORPO vs DPO
| Aspecto | ORPO | DPO |
|---|---|---|
| Modelo de referencia | No necesario | No necesario con PEFT, requerido para fine-tuning completo |
| Uso de memoria | Menor | Mayor (si usa modelo de referencia) |
| Velocidad de entrenamiento | Más rápido | Más lento |
| Fase SFT | Combinada | Separada |
| Complejidad | Más simple | Más opciones |
Parámetros
| Parámetro | Descripción | Por Defecto |
|---|---|---|
trainer | Establecer como "orpo" | Requerido |
dpo_beta | Peso de razón de probabilidades | 0.1 |
max_completion_length | Máximo de tokens de la respuesta | None |
image_column | Columna de imagenes para entrenamiento de preferencia VLM | None |
VLM (Vision-Language) ORPO
ORPO soporta modelos de vision-lenguaje como Qwen 3.5-VL para alineacion de preferencia con imagen+texto. Estableceimage_column para habilitar el modo VLM:
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)
- 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