Qué es FineWeb y por qué existe
La mayoría de los modelos abiertos de punta (Llama 3, Mixtral, Falcon) se entrenan con conjuntos de datos de preentrenamiento que nunca se publican. Los pesos del modelo se distribuyen sin los datos que los produjeron. FineWeb es una respuesta directa a ese hueco: un conjunto de datos en inglés de 15 billones de tokens, totalmente abierto y reproducible, derivado de los volcados de CommonCrawl desde mediados de 2013 hasta abril de 2024 y publicado bajo la licencia permisiva ODC-By.
CommonCrawl rastrea la web pública desde 2007 y publica instantáneas nuevas más o menos cada uno o dos meses. Cada instantánea son petabytes de archivos WARC (Web ARChive) sin procesar: HTML comprimido, encabezados y metadatos de miles de millones de páginas. FineWeb procesó 96 de esas instantáneas. La entrada sin procesar, antes de cualquier filtro, es del orden de decenas de billones de tokens. Lo que sale del otro lado son 15 billones: una reducción grande que se debe por completo a decisiones de calidad, no a recortes arbitrarios.
El pipeline como embudo
Cada etapa tira datos. Aquí se ve adónde van: toque cualquier etapa para ver qué elimina, y active la rama FineWeb-Edu para ver el subconjunto educativo que se separa al final. Todas las cifras salen directamente del artículo de FineWeb.
El embudo: 36T → 15T → 1.3T
Toque una etapa para ver qué elimina. Todas las cifras son del artículo de FineWeb. (T = billones de tokens).
Después de extraer el texto de los WARC (trafilatura), aplicar la lista de URL bloqueadas, el filtro de inglés de fastText (≥0.65) y las reglas de calidad y repetición de Gopher. El artículo reporta unos 36 billones de tokens en este punto.
Etapa 1: extraer el texto de los archivos WARC
CommonCrawl ofrece dos formatos: archivos WET (texto plano ya extraído) y archivos WARC (HTML sin procesar con toda su estructura). FineWeb usa a propósito los archivos WARC y hace su propia extracción de texto con trafilatura, en lugar de aceptar la extracción WET predeterminada de CommonCrawl. La razón es la fidelidad: la extracción de CommonCrawl recorta demasiado y descarta contenido que trafilatura sí logra recuperar de la estructura del HTML.
Trafilatura identifica la región de contenido principal de una página (el cuerpo del artículo, el texto de la publicación) y descarta los menús de navegación, los pies de página, los avisos de cookies y los anuncios. Hacer bien este paso importa de forma desproporcionada: la basura que entra aquí se propaga por todas las etapas siguientes, y ningún filtro posterior puede recuperar contenido que se tiró demasiado pronto.
Etapa 2: filtrado base
Una vez extraído el texto, tres filtros corren en secuencia antes de la deduplicación. Primero, una lista de URL bloqueadas elimina dominios de contenido para adultos. Segundo, un clasificador de idioma de fastText descarta cualquier documento con menos de 0.65 de confianza de estar en inglés: esto es lo que mantiene a FineWeb solo en inglés. Tercero, los filtros de calidad y repetición de MassiveText (el conjunto de datos detrás del modelo Gopher de DeepMind) eliminan documentos con estadísticas anómalas: número de palabras anormal, repetición excesiva de caracteres, muy pocas palabras vacías o longitudes de línea sospechosamente uniformes.
Los filtros de Gopher son heurísticos: no se aprenden de ejemplos etiquetados, son reglas que salen de intuiciones sobre qué hace coherente a un texto. Un documento debe tener entre 50 y 100,000 palabras. La longitud media de las palabras debe estar entre 3 y 10 caracteres. No más de 10% de las palabras pueden ser símbolos. Estos umbrales se validaron de forma empírica en el artículo original de MassiveText y se conservaron.
Etapa 3: deduplicación MinHash por rastreo
La web está enormemente duplicada. Los sitios agregadores republican artículos palabra por palabra. Los espejos copian dominios completos. Las páginas hechas con plantillas difieren solo en unos cuantos campos. Si esos casi duplicados sobreviven en un conjunto de entrenamiento, el modelo ve el mismo contenido cientos de veces, lo que empeora la generalización y aumenta el riesgo de memorización.
FineWeb aplica la deduplicación MinHash de forma independiente a cada una de las 96 instantáneas de CommonCrawl, en lugar de hacerlo de forma global entre todas. La elección es deliberada: deduplicar de forma global a la escala de 15 billones de tokens obligaría a comparar cada documento con todos los demás, lo que es computacionalmente inviable. La deduplicación por rastreo atrapa los duplicados que más pesan (páginas que aparecen varias veces dentro del mismo rastreo) y mantiene el trabajo paralelizable.
MinHash convierte cada documento en un conjunto de shingles de palabras (n-gramas que se traslapan), los reduce con hash a una firma compacta y usa Locality Sensitive Hashing para encontrar pares cuyas firmas se parecen por encima de un umbral de Jaccard. Los documentos marcados como casi duplicados de uno que ya se conservó se descartan. El proceso es probabilístico (se le escapan algunos duplicados y de vez en cuando marca documentos que no lo son), pero a esta escala lo aproximado es la única opción.
Etapa 4: los filtros de calidad de C4
C4 (el conjunto de datos con el que se entrenó el T5 de Google) estableció un conjunto de filtros heurísticos de texto que se volvió una referencia en el campo. FineWeb aplica una parte de ellos: los documentos que contienen la cadena lorem ipsum se descartan por ser contenido de relleno. Los documentos en los que más de la mitad de las líneas tienen una llave se descartan por ser fragmentos de código o de plantillas. Las páginas que mencionan "javascript is disabled" o avisos de cookies o de términos de servicio se eliminan como restos de navegación.
Un filtro de C4 que FineWeb omite a propósito: el de puntuación final, que descarta cualquier línea que no termine en punto, signo de interrogación o signo de exclamación. Los experimentos de ablación mostraron que ese filtro eliminaba demasiado contenido válido (listas, encabezados, diálogos) a cambio de una ganancia de calidad marginal. Quitar un filtro con base en una medición empírica y no en la intuición es característico de cómo se diseñó todo el pipeline de FineWeb.
Etapa 5: las heurísticas propias de FineWeb
Encima de los filtros heredados, el equipo de FineWeb desarrolló heurísticas adicionales con sus propios experimentos de ablación. Apuntan a patrones de contenido que Gopher y C4 no cubren bien: documentos en los que la mayoría de las líneas son muy cortas (estructura de lista), documentos con una fracción alta de líneas duplicadas y documentos cuya proporción de signos de puntuación por palabra cae fuera de los rangos normales de la prosa.
Cada filtro se evaluó entrenando modelos de ablación pequeños con los datos filtrados y sin filtrar, y midiendo su desempeño en benchmarks. Solo entraron al pipeline final los filtros que produjeron mejoras medibles en tareas como HellaSwag, ARC y CommonSense QA. Este ciclo de validación empírica (filtrar, entrenar, medir, decidir) es lo que distingue a FineWeb de conjuntos de datos anteriores que aplicaban heurísticas sin medir su efecto posterior.
El último paso antes de publicarlo es la eliminación de datos personales: se anonimizan las direcciones de correo electrónico y las direcciones IP públicas que aparecen en el corpus.
FineWeb-Edu: filtrar con un clasificador aprendido
FineWeb-Edu es un subconjunto de FineWeb de 1.3 billones de tokens que se obtiene con una sola pasada de filtrado adicional: un clasificador de calidad educativa. Para construirlo, se le pidió a Llama-3-70B-Instruct que calificara 460,000 documentos de muestra de FineWeb en una escala de 0 a 5 según su valor educativo. El prompt se ajustó para favorecer la prosa explicativa clara y castigar los textos de marketing, las listas de “los 10 mejores”, las discusiones de foros y el contenido inflado para SEO.
De esas anotaciones, 410,000 se usaron para ajustar una cabeza de regresión lineal sobre el modelo de embeddings Snowflake-arctic-embed-m (las cerca de 50,000 restantes se reservaron para validación). Aplicar este clasificador ligero a los 15 billones de tokens de FineWeb requirió unas 6,000 horas de GPU H100. Se conservaron los documentos con puntuación de 3 o más, lo que dio el corpus FineWeb-Edu de 1.3 billones de tokens.
Los resultados en benchmarks fueron notables. Los modelos preentrenados con FineWeb-Edu alcanzaron un mismo nivel de calidad con muchos menos datos: el artículo reporta que igualaron el desempeño de conjuntos de datos web comparables con unas 10 veces menos tokens de entrenamiento, y que MMLU subió de alrededor de 33% a 37% en modelos entrenados con el mismo presupuesto de tokens. La ganancia de eficiencia en datos viene por completo de la calidad del subconjunto conservado, no de ningún cambio en la arquitectura del modelo ni en la receta de entrenamiento.
La familia FineWeb: lo que vino después
FineWeb dio lugar a un sucesor directo y a varios derivados. FineWeb2 extiende el mismo pipeline a más de 1,000 idiomas, con deduplicación por idioma y umbrales de filtrado específicos para cada uno. La lógica central de extracción de los WARC y de filtrado base es idéntica; las etapas de identificación de idioma y del clasificador de calidad se adaptan a las escrituras que no son del inglés.
FineMath aplica el mismo enfoque de entrenar un clasificador al contenido matemático y produce decenas de miles de millones de tokens de texto denso en matemáticas, calificado por la claridad del razonamiento y la calidad de las soluciones paso a paso. Ultra-FineWeb introdujo una estrategia de verificación con un modelo pequeño entrenado con un programa de recocido en dos etapas para evaluar los datos candidatos antes de incluirlos, y produjo alrededor de 1 billón de tokens en inglés de alta calidad.
La implicación más amplia es el patrón, no el conjunto de datos en particular: usar un modelo maestro fuerte para etiquetar una muestra, entrenar un clasificador barato con esas etiquetas y aplicar el clasificador a escala. Llama 3 y Phi-3 usaron la misma técnica de forma interna antes de que FineWeb hiciera el enfoque público y reproducible. Hoy es una herramienta estándar en el trabajo con datos de preentrenamiento.
Por qué esto importa para los benchmarks
Cuando un modelo obtiene una buena puntuación en MMLU o ARC, el resultado refleja tanto la arquitectura del modelo como los datos de preentrenamiento que vio. Las ganancias de FineWeb-Edu en los benchmarks demuestran que la curaduría de datos (en concreto, aumentar la densidad de prosa educativa y bien estructurada) puede producir mejoras mayores en los benchmarks que muchos cambios de arquitectura, con un costo de cómputo bastante menor.
Esto crea un problema de interpretación para los benchmarks: un modelo entrenado con FineWeb-Edu tenderá a puntuar más alto en benchmarks de recuperación de conocimiento sin importar su capacidad de razonamiento, porque la distribución de entrenamiento está inclinada hacia el tipo de texto expositivo que esos benchmarks premian. Los propios autores de FineWeb-Edu lo señalan: el conjunto de datos está sesgado hacia la escritura formal y probablemente rinde menos en tareas que requieren un registro conversacional o informal. Entender con qué datos se entrenó un modelo es, por lo tanto, un requisito para entender qué miden de verdad sus puntuaciones en los benchmarks.