Los pipelines RAG (Retrieval-Augmented Generation) solo son tan buenos como los datos que recuperan. Y esos datos solo son tan buenos como el análisis de documentos que alimenta al fragmentador y al modelo de embeddings.
El error más común es introducir texto PDF sin procesar en una base vectorial y preguntarse por qué la recuperación es mala. Los PDF no contienen texto estructurado: contienen glifos posicionados. Un párrafo es un conjunto de bloques; una tabla son coordenadas; una cabecera es texto en negrita y más grande.
El pipeline
- Documento → Markdown — Convierte PDF, DOCX, PPTX u otro formato a Markdown estructurado con la API de AnyMD.
- Markdown → Fragmentos — Divide por títulos y párrafos, no por una cantidad fija de tokens.
- Fragmentos → Embeddings — Pasa cada fragmento por tu modelo.
- Embeddings → Almacén vectorial — Indexa para búsqueda de similitud.
El primer paso es donde muchas pipelines RAG fallan silenciosamente: basura entra, basura sale.
Por qué Markdown es el mejor formato intermedio
Markdown conserva títulos, listas, tablas y bloques de código en un formato ligero que los fragmentadores y los modelos de embeddings entienden de forma nativa.
Texto PDF sin procesar:
Revenue Q1 Q2 Q3
EU €1.2M €1.4M €1.1M
US €0.9M €1.1M €1.3MTras convertir con AnyMD:
| Region | Q1 | Q2 | Q3 |
| :----- | :---- | :---- | :---- |
| EU | €1.2M | €1.4M | €1.1M |
| US | €0.9M | €1.1M | €1.3M |La versión Markdown tiene significado semántico. Un fragmentador puede dividir en límites de títulos y el modelo produce mejores vectores para una tabla que para un bloque de espacios. Una consulta sobre los ingresos de la UE en Q2 recupera la tabla real con encabezados de columna, no números huérfanos.
Ejemplo práctico
# Convert a quarterly report to Markdown
curl -X POST https://anymd.net/api/convert \
-H "Authorization: Bearer your-key" \
-F "file=@quarterly-report.pdf" \
-o report.md
# Now feed that Markdown into your chunker/embedder pipelineLa salida conserva cada título, tabla, lista y párrafo, lista para cualquier framework RAG: LangChain, LlamaIndex o el tuyo.
El rendimiento importa a escala
AnyMD convierte un informe de 48 páginas en menos de un segundo. Para 10.000 documentos diarios, son 2,2 horas frente a 16–39 horas con alternativas Python. A escala RAG, la latencia de conversión es un cuello de botella de rendimiento.