Back to flin
flin

Estrategias de chunking de texto

Cómo FLIN divide documentos en chunks para embedding y búsqueda semántica -- chunking recursivo por caracteres, división por límites de oración y las compensaciones detrás del solapamiento y tamaño de chunk.

Juste A. Gnimavo (Thales) & Claude | March 26, 2026 2 min flin
EN/ FR/ ES
flinrust

Los modelos de embedding tienen ventanas de contexto. Los mejores modelos de código abierto aceptan 512 tokens. Algunos aceptan 8,192. Ninguno acepta 50,000. Cuando un usuario sube un PDF de 50 páginas, no se puede embeber el documento entero como un solo vector.

El chunking resuelve esto dividiendo documentos en piezas que quepan dentro de la ventana de contexto del modelo de embedding. Pero el chunking no es simplemente "dividir cada N caracteres". Un mal chunking destruye el significado.

La Sesión 221 implementó el módulo de chunking de FLIN: el puente entre la extracción de documentos (que produce texto crudo) y la generación de embeddings (que requiere entradas de longitud limitada). Veinte pruebas, 400 líneas de Rust y dos estrategias de chunking que manejan todo, desde contratos legales hasta código fuente.

Chunking recursivo por caracteres

La configuración predeterminada es 1,000 caracteres por chunk con 200 caracteres de solapamiento. Estos números provienen de la observación empírica a través de diferentes modelos de embedding.

Chunking por límites de oración

La segunda estrategia divide en límites de oración. Esto produce chunks que son más semánticamente coherentes porque cada chunk contiene oraciones completas.

Seguridad UTF-8

La función usa chars().count() en lugar de len() e indexa en un Vec<char> en lugar de slices de bytes. Esto es crítico para contenido multilingüe. Un documento en francés con caracteres acentuados, un documento en japonés con kanji multi-byte o un documento con emoji todos se dividen correctamente.


Esta es la Parte 130 de la serie "Cómo construimos FLIN", que documenta cómo un CEO en Abidjan y un CTO de IA diseñaron y construyeron un lenguaje de programación desde cero.

Navegación de la serie: - [129] Grants de descarga y claves de acceso - [130] Estrategias de chunking de texto (estás aquí) - [131] Integración chunk-embedding

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude deblo

El segfault que no era nuestro: cómo lanzamos el tracking del día de lanzamiento de Déblo en la noche del despliegue — analítica condicionada por entorno, atribución nativa de las tiendas, tres bugs que el compilador no podía ver y un build sin memoria que diagnosticamos en lugar de revertir

El 1 de julio de 2026 — el día del lanzamiento — el riesgo nunca fue el texto. Era que las campañas de pago salieran a ciegas. Este es el build-log de cómo desplegamos la analítica y la atribución de instalaciones de Déblo como código en la noche del lanzamiento: etiquetas GA4, Meta y LinkedIn condicionadas por entorno que se despliegan sin riesgo antes de que existan las cuentas publicitarias; atribución enrutada por los canales nativos de las tiendas en lugar del pixel web; una auditoría adversarial que atrapó tres bugs que tanto el typechecker como el build dieron por buenos; y un despliegue en Easypanel que hizo segfault en el primer build — que demostramos que no era nuestro código antes de tocar una sola línea.

18 min Jul 1, 2026
deblolaunch-dayclaude-opus-4.8claude-code +26
Thales & Claude thales

Trece agentes, cuarenta y tres minutos: la primera sesión Workflow de Claude Fable 5, y lo que un script de orquestación determinista cambia en los builds multiagente

Un prompt, trece agentes, cuarenta y tres minutos: la primera sesión de producción con Claude Fable 5 y la herramienta Workflow de Claude Code entregó un sitio web de producción completo de siete páginas más un endpoint backend de captura de leads, en un solo commit. La bitácora: el script de orquestación determinista, el patrón de inyección de contrato entre fases, la economía por agente del fan-out paralelo, y el suspenso del límite de sesión que el diario de reanudación convirtió en un no-evento.

23 min Jun 12, 2026
claude-fable-5claude-codeworkflow-toolmulti-agent +10
Thales & Claude casp

La puerta detectó su propia deriva: un día dentro de CASP con Claude Fable 5

Le entregamos al modelo Claude más autónomo hasta la fecha las llaves de CASP — la CLI open source que mantiene honestos a los agentes de código IA frente a git — con la autoridad de rechazar nuestra propia roadmap. Rechazó cinco cosas, encontró dos bugs reales en el validador al hacerle dogfooding, los corrigió bajo una puerta de dos auditores, y dejó casp check completamente en verde sobre su propio repositorio por primera vez. CASP 0.3.0 es el resultado.

15 min Jun 10, 2026
caspzerosuiteworkflowai-cto +9