Saltar al contenido principal

Datasets y Formatos

Tu modelo es tan bueno como tus datos. Aquí está cómo formatearlos correctamente.

Formatos de Archivo Soportados

AITraining soporta múltiples fuentes de datos:
Los archivos Parquet son soportados indirectamente a través de datasets HuggingFace que exponen formato Parquet.

Formatos Comunes

CSV (Más Común)

Simple y universal. Funciona para clasificación, regresión y tareas básicas.

JSON/JSONL

Mejor para datos complejos, conversaciones y estructuras anidadas.

Carpetas para Imágenes

Organiza imágenes por categoría:

Básicos de Calidad de Datos

Balancea Tus Clases

Mal:
  • 1000 ejemplos positivos
  • 50 ejemplos negativos
Bueno:
  • 500 ejemplos positivos
  • 500 ejemplos negativos

Limpia Tus Datos

Elimina:
  • Duplicados
  • Valores vacíos
  • Errores obvios
  • Formato inconsistente

Directrices de Tamaño

Columnas Requeridas por Entrenador

Diferentes entrenadores requieren columnas específicas:
Si faltan columnas requeridas, obtendrás un error de validación claro listando las columnas faltantes y disponibles.

Formatos Especiales

DPO/ORPO (Datos de Preferencia)

Token Classification

Formato de Conversación

Las conversaciones esperan listas de objetos {role, content}:
O formato ShareGPT (detectado y convertido automáticamente):

Soporte para Rol Tool

AITraining soporta el rol tool para datos de entrenamiento con llamadas a funciones:
Compatibilidad automática: Para modelos que no soportan el rol tool nativamente (como Gemma), AITraining convierte automáticamente los mensajes tool a mensajes user con el prefijo [Tool Result]. Los modelos con soporte nativo de tool (Llama 3.1+, Qwen, etc.) usan su formato nativo.
Soporte de formato legado: El rol function antiguo de OpenAI (usado antes de que se introdujera tool) también es soportado y manejado de forma idéntica al rol tool.

Tool Calls (Llamadas a Funciones)

AITraining también soporta el campo tool_calls para entrenar modelos a hacer llamadas a funciones:
Deteccion inteligente de formato: AITraining detecta si tu modelo soporta tool_calls nativamente:
  • Qwen, Llama 3.1+: Usa formato nativo <tool_call>
  • Gemma, modelos antiguos: Serializa tool calls como JSON formato OpenAI en el contenido
En inferencia, parsea el JSON del output del asistente para extraer los tool calls.

Transformacion de Formato de Tool Call

Para modelos sin soporte nativo de herramientas, AITraining serializa los tool calls como JSON formato OpenAI agregado al contenido del asistente: Entrada (mensaje con campo tool_calls):
Salida (serializado en contenido):
El formato serializado preserva la estructura completa de OpenAI con los campos id, type y function. Esto coincide con el formato descrito en las instrucciones del system prompt para mejor aprendizaje del modelo.

Manejo de Alternancia de Mensajes

Algunos modelos (Gemma, Mistral) requieren alternancia estricta user/assistant. AITraining corrige automáticamente problemas comunes: Mensajes consecutivos del mismo rol se fusionan:
User faltante antes de assistant recibe un placeholder:
Estas correcciones solo se aplican cuando el tokenizador rechaza el formato original. Los modelos que aceptan orden flexible de mensajes mantienen la estructura original.

Conversión Automática de Dataset

AITraining puede detectar y convertir automáticamente formatos comunes de dataset. Sin preprocesamiento manual necesario.

Formatos Soportados

El mapeo de columnas es opcional - úsalo para convertir nombres de columnas variados al formato esperado.

Usando Auto-Conversión

Chat Templates

Los chat templates formatean tus datos en la estructura de conversación esperada del modelo. Los templates se auto-seleccionan basándose en tu entrenador, o especifica manualmente:
El renderizador unificado aplica templates consistentemente. Las rutas de template legacy todavía son soportadas para compatibilidad hacia atrás.

Extensión de Conversación

Fusiona ejemplos de turno único en conversaciones multi-turno:

Salida del Dataset Procesado

Después del procesamiento, tu dataset tendrá:
Las columnas originales se renombran a _original_* para prevenir que otras herramientas auto-detecten y usen incorrectamente datos no procesados.

Guardando Datos Procesados

Controla dónde se guardan los datos procesados con --save-processed-data:

Consejos Rápidos

  1. Comienza pequeño - Prueba con 100 ejemplos antes de escalar
  2. Valida temprano - Verifica que tu formato funciona antes de recopilar miles de ejemplos
  3. Mantén consistente - Mismo formato en todo tu dataset
  4. Documenta todo - Anota cualquier preprocesamiento o reglas especiales
  5. Usa auto-convert - Deja que AITraining detecte y convierta formatos automáticamente

Próximos Pasos

Hyperparámetros

Configura tu entrenamiento

Tareas de Entrenamiento

Elige tu tipo de tarea