shadcn/studio
Volver a Guía de Fine-tuning
Guía de Datasets

Guía Completa de Datasets para Fine-tuning

Aprende a crear, estructurar y preparar datasets para entrenar modelos de lenguaje con AstrApp.

¿Qué es un Dataset?

Para los LLMs, los datasets son colecciones de datos que pueden usarse para entrenar modelos. Para ser útiles, los datos de texto necesitan estar en un formato que pueda ser tokenizado.

Flujo de Datos

Tus DatosFormateo + TokenizationEntrenamiento

Formatos de Datos

FormatoDescripciónTipo de Entrenamiento
Raw CorpusTexto crudo de fuentes como libros o artículosContinued Pretraining (CPT)
Instruct (Alpaca)Instrucciones + input + output esperadoSupervised Fine-tuning (SFT)
Conversation (ChatML)Conversación multi-turno entre usuario y asistenteSupervised Fine-tuning (SFT)
RLHFConversaciones con respuestas rankeadasReinforcement Learning (RL)

Ejemplos de Formatos

ChatML (OpenAI) - Más Popular

{
  "messages": [
    { "role": "user", "content": "¿Cuál es tu política de devoluciones?" },
    { "role": "assistant", "content": "Nuestra política permite devoluciones dentro de 30 días..." }
  ]
}

ShareGPT - Multi-turno

{
  "conversations": [
    { "from": "human", "value": "¿Puedes ayudarme a hacer pasta carbonara?" },
    { "from": "gpt", "value": "¿Quieres la receta tradicional romana?" },
    { "from": "human", "value": "Sí, la tradicional" },
    { "from": "gpt", "value": "La carbonara auténtica usa: pasta, guanciale, huevos, Pecorino Romano y pimienta negra..." }
  ]
}

Alpaca - Instrucciones

{
  "instruction": "Clasifica el sentimiento del siguiente texto.",
  "input": "El servicio fue excelente, pero el producto llegó dañado.",
  "output": "neutral"
}

Chat Templates

Los chat templates definen cómo se estructuran las conversaciones para el modelo.

TemplateKeysRoles
ChatML (OpenAI)Popularrole, contentuser, assistant, system
ShareGPTPopularfrom, valuehuman, gpt
Alpacainstruction, input, outputN/A

Generación de Datos Sintéticos

Puedes usar LLMs como Llama 3.3 (70B) o GPT-4 para generar datos sintéticos.

Producir datos nuevos

Crear desde cero o desde tu dataset existente

Diversificar

Evitar overfitting con más variedad

Aumentar datos

Estructurar automáticamente en el formato correcto

Ejemplo de Prompt para Generar Datos

Estructura mi dataset para que esté en formato QA ChatML para fine-tuning. Luego genera 5 ejemplos de datos sintéticos con el mismo tema y formato.

Formatos Soportados por AstrApp

FormatoExtensiónMejor ParaLímite
JSONL.jsonlRecomendado500MB
CSV.csvDatos simples500MB
Parquet.parquetDatasets grandes1GB
JSON.jsonArrays de objetos100MB

¿Qué Tan Grande Debe Ser Mi Dataset?

< 100
⚠️ Resultados limitados
Agregar más datos o sintéticos
100-500
🔶 Resultados razonables
Bueno para pruebas iniciales
500-1,000
✅ Buenos resultados
Recomendado para producción
1,000-10,000
✅✅ Muy buenos
Ideal para la mayoría de casos
10,000+
✅✅✅ Excelentes
Perfecto para dominios complejos

Validación Automática

AstrApp valida automáticamente tu dataset al subirlo:

Formato correcto de las keys
Encoding UTF-8
Balance del dataset
Longitud de los ejemplos
Detección de duplicados
Estructura de conversaciones