Deja de construir pipelines RAG así... Usa MarkItDown en su lugar

BBetter Stack
Computing/SoftwareInternet Technology

Transcript

00:00:00Pasamos mucho más tiempo procesando documentos que construyendo realmente nuestras aplicaciones de IA.
00:00:05Conectamos múltiples librerías, finalmente logramos meter un PDF en el pipeline, y el LLM sigue dando malas respuestas.
00:00:11No porque el modelo sea malo, sino porque el markdown lo es.
00:00:14Esto es MarkItDown.
00:00:16Una herramienta de Microsoft que ha explotado con más de 110,000 estrellas en GitHub,
00:00:21y arregla todo el pipeline básicamente con una línea de código.
00:00:24Les mostraré cómo funciona todo esto en solo unos minutos.
00:00:30[Música]
00:00:33Bien, básicamente todos los proyectos de IA comienzan igual.
00:00:36Tienes archivos por todos lados, documentos de Word, presentaciones, hojas de cálculo, capturas de pantalla de PDF, quizás hasta archivos de audio.
00:00:43Y luego viene la parte genial, la que nos encanta a los desarrolladores.
00:00:46Podemos empezar realmente a apilar herramientas.
00:00:49Así que vamos a tener una herramienta para PDFs, una para Excel, para Word, ¿verdad?
00:00:54Todas estas librerías que estamos enlazando para ayudarnos a construir este pipeline.
00:00:59Al principio se siente bien, funciona, claro.
00:01:02Luego las cosas empiezan a romperse.
00:01:04Las tablas pierden su estructura, los encabezados desaparecen y, obviamente, el uso de tokens empieza a dispararse.
00:01:10Y ahora el pipeline RAG básicamente solo está obteniendo basura y el agente nos da malas respuestas.
00:01:16Y estamos depurando la ingesta en lugar de estar lanzando el producto.
00:01:19Y realmente, ¿qué está haciendo esto?
00:01:21Solo está desperdiciando tiempo.
00:01:22No minutos, sino horas cada semana.
00:01:25Así que en lugar de arreglar tu modelo, en realidad necesitas arreglar tu entrada.
00:01:29Déjenme mostrarles cómo se ve eso realmente.
00:01:31Si disfrutas de herramientas para acelerar tu flujo de trabajo, asegúrate de suscribirte.
00:01:35Estamos publicando videos todo el tiempo.
00:01:37Muy bien, ahora déjenme repasar esto rápidamente.
00:01:39Es todo Python, así que es bastante sencillo.
00:01:42Primero, instalo todo con pip en mi entorno virtual.
00:01:45Tengo un PDF aquí, solo doc.pdf.
00:01:48Y puedo ejecutar esto en mi terminal.
00:01:50Voy a ejecutar markitdown doc.pdf output.md.
00:01:55Eso es todo.
00:01:56Crea un archivo por mí automáticamente.
00:01:58Podemos abrir ese archivo y dentro está más o menos lo que esperábamos encontrar.
00:02:03Los encabezados están limpios, las tablas realmente parecen tablas, la estructura se mantiene.
00:02:08Y ahora, cuando escribimos algo de código en Python para esto, podemos hacer aún más con ello.
00:02:13Así que con mis importaciones y usando OpenAI, puedo crear un cliente y luego un objeto markdown.
00:02:20Voy a introducir mi clave API y el modelo que queremos ejecutar.
00:02:25Cuando ejecuto el código, la salida se genera en mi terminal, así que es súper limpio.
00:02:29Y mejor aún, lo que es realmente genial es que puedo obtener una imagen PNG.
00:02:33Para esto, obtuve un gráfico de NVIDIA.
00:02:35Aquí está mi imagen con algunos datos en ella.
00:02:39Ahora puedo convertir el gráfico a markdown.
00:02:42Así que puedo dejar que MarkItDown haga lo suyo, solo usando la función convert de nuevo.
00:02:47Esta vez le damos nuestra imagen, nuestro PNG.
00:02:50Y aquí ahora obtenemos el resumen de qué es ese gráfico y qué podríamos extraer y usar para RAG.
00:02:56Esto es enorme, ya que ahora nos permite extraer lo que necesitamos más rápido aquí mismo en nuestro código
00:03:01para que podamos seguir trabajando sin saltar entre un montón de pestañas diferentes.
00:03:05¿Así que qué es realmente MarkItDown?
00:03:07Es una herramienta de Python de código abierto de Microsoft Research.
00:03:11Tiene licencia MIT y está construida específicamente para flujos de trabajo de LLM.
00:03:16Su trabajo es tomar archivos desordenados y convertirlos en markdowns limpios.
00:03:19Para que los modelos puedan entenderlos realmente.
00:03:22Soporta mucho más de lo que esperaríamos.
00:03:25Word, PowerPoint, Excel, PDF, audio, imágenes, y también cosas como enlaces, realmente cualquier cosa, lo que nombres.
00:03:32Incluso tiene un servidor MCP ahora, así que puedes conectarlo directamente a herramientas como Claude Desktop o incluso a tu propio agente.
00:03:40Además de los plugins.
00:03:41Así que en lugar de construir pipelines de ingesta, ahora básicamente solo estamos llamando a una herramienta.
00:03:47Los desarrolladores no estaban luchando con los modelos, estaban luchando con las entradas.
00:03:51Y la expectativa era: okay, solo usa mejores modelos.
00:03:55Pero la realidad de esto es que mejores entradas equivalen a mejores salidas.
00:04:00Así que ahora, en lugar de escribir scripts que se rompen, la gente está usando una sola herramienta para todo: MarkItDown.
00:04:06Pipelines RAG, agentes, datasets de ajuste fino, bases de conocimiento, análisis de documentos, todo esto que ya estamos haciendo.
00:04:13Y el detalle clave que la mayoría pasa por alto es que produce un markdown estructurado y eficiente en tokens.
00:04:20Así que hay menos ruido entrando en esto, pero obtenemos mejores respuestas, esa mejor salida.
00:04:24Pero eso no significa que sea perfecto.
00:04:26Ahora comparemos esto con lo que probablemente ya estés usando o hayas visto por ahí.
00:04:31Tenemos una herramienta llamada Pandoc, así que esperarías que Pandoc gane aquí, ¿verdad?
00:04:36Pero está resolviendo un problema diferente al de MarkItDown.
00:04:40Pandoc es para humanos, así que publicación, formato, LaTeX.
00:04:44MarkItDown es para máquinas, LLMs, pipelines, automatización.
00:04:48Es más o menos la misma idea, pero el objetivo es diferente.
00:04:51Y luego tenemos cosas como Unstructured o Docling.
00:04:55Estas son geniales, pero también son muy pesadas.
00:04:58Usan modelos de ML, requieren más configuración y son mejores para documentos realmente complejos.
00:05:03MarkItDown adopta el enfoque opuesto a todo esto.
00:05:05Hay menos configuración, es súper fácil, resultados más rápidos y es lo suficientemente bueno para la mayoría de los archivos.
00:05:11Así que aquí está el verdadero compromiso.
00:05:12¿Quieres una extracción perfecta, o quieres algo que funcione de forma realmente rápida y fiable?
00:05:18Para la mayoría de nosotros, la velocidad va a ganar.
00:05:20Ahora, por supuesto, las desventajas: los PDFs complejos todavía van a romperlo, ¿verdad?
00:05:24Especialmente tablas densas o diseños extraños.
00:05:27Si lidias con documentos complejos todos los días, herramientas como Docling o Unstructured van a funcionar mucho mejor.
00:05:32Pero si quieres descripciones de imágenes, necesitarás conectar un LLM.
00:05:36Así que no es perfecto, pero es una herramienta bastante genial que está resolviendo un problema real.
00:05:41¿Así que vale la pena usarla?
00:05:43Sí, para la mayoría de las personas, absolutamente.
00:05:45Si estás construyendo aplicaciones de IA ahora mismo, esto es probablemente a lo que debería parecerse tu capa de ingesta.
00:05:50Deberías intentar usar MarkItDown.
00:05:52Solo pruébalo si quieres una entrada limpia para RAG o agentes.
00:05:56Lidias con tipos de archivos mixtos.
00:05:58Es realmente bueno para esas cosas.
00:05:59Y no quieres mantener un montón de scripts frágiles que podrían romperse, ¿verdad?
00:06:03Sáltalo o combínalo si trabajas con PDFs extremadamente complejos todos los días.
00:06:08Hay otras herramientas por ahí.
00:06:09Si disfrutas de las herramientas de código abierto y consejos de programación como este, asegúrate de suscribirte al canal de Better Stack.
00:06:15Nos vemos en otro video.

Key Takeaway

La implementación de MarkItDown reemplaza la necesidad de gestionar múltiples librerías frágiles al convertir diversos formatos de archivo en un formato Markdown estructurado y eficiente en tokens, optimizando drásticamente la calidad de las respuestas en pipelines RAG y agentes de IA.

Highlights

MarkItDown es una herramienta de código abierto de Microsoft Research bajo licencia MIT que convierte archivos desordenados en archivos Markdown estructurados para LLMs.

La herramienta soporta formatos como Word, PowerPoint, Excel, PDF, archivos de audio e imágenes, unificando el proceso de ingesta en una sola línea de código.

El uso de archivos Markdown limpios reduce significativamente el consumo de tokens y mejora la precisión de los modelos en comparación con las librerías tradicionales.

MarkItDown permite la conversión directa de imágenes, como gráficos, en resúmenes estructurados en formato Markdown útiles para pipelines RAG.

La herramienta ofrece un servidor MCP para la integración directa con entornos como Claude Desktop o agentes autónomos.

Timeline

Problemas en la ingesta de documentos

  • El procesamiento ineficiente de documentos en pipelines RAG causa respuestas incorrectas de los modelos.
  • La integración manual de múltiples librerías para distintos formatos de archivo consume horas de desarrollo semanalmente.
  • La pérdida de estructura en tablas y encabezados durante la ingesta eleva el uso de tokens y degrada la salida del agente.

El tiempo de desarrollo se desvía constantemente hacia la depuración de la ingesta en lugar del lanzamiento del producto. Las herramientas convencionales fallan al mantener la integridad estructural de los documentos, lo que resulta en datos basura que el LLM no puede interpretar correctamente.

Funcionamiento y capacidades de MarkItDown

  • La ejecución mediante una sola línea de comando o función de Python permite convertir archivos como PDFs en Markdown automáticamente.
  • La conversión incluye la capacidad de interpretar imágenes mediante un LLM para extraer resúmenes de gráficos.
  • El resultado generado mantiene una estructura limpia de tablas y encabezados que facilita la comprensión del modelo.

La herramienta simplifica el flujo al integrar la conversión de archivos dentro del propio código de Python. Es capaz de procesar imágenes, como archivos PNG, transformando los datos visuales en texto estructurado procesable para el pipeline RAG sin necesidad de cambiar entre múltiples entornos de trabajo.

Comparativa técnica y casos de uso

  • MarkItDown prioriza la automatización para máquinas y LLMs, diferenciándose de Pandoc, que se enfoca en el formato humano y LaTeX.
  • Frente a librerías pesadas como Unstructured o Docling, MarkItDown ofrece una configuración mínima y mayor velocidad de ejecución.
  • Los documentos extremadamente complejos con diseños extraños siguen siendo un punto débil donde herramientas más especializadas superan a MarkItDown.

Aunque no es una solución perfecta para todos los escenarios, MarkItDown es la opción recomendada cuando la velocidad y la fiabilidad en la ingesta son prioritarias. Su diseño está optimizado para flujos de trabajo de IA, convirtiéndolo en un componente fundamental para bases de conocimiento y datasets de ajuste fino donde la limpieza de la entrada es determinante para obtener mejores salidas.

Community Posts

View all posts