Los modelos de visión artificial tradicionales suelen centrarse en imitar la percepción visual humana. jina-embeddings-v4 adopta un enfoque diferente: combina el procesamiento de imágenes y texto para comprender cómo las personas leen e interpretan la información presentada visualmente. A diferencia de los programas OCR que simplemente digitalizan el texto, en realidad analiza materiales visuales complejos como infografías, gráficos, diagramas y tablas, documentos donde tanto el texto como los elementos visuales transmiten significado semántico. A estos los llamamos "documentos visualmente ricos".

Si solo utilizáramos OCR y modelos de 向量模型 de texto, perderíamos información importante. Si utilizáramos modelos de 向量模型 convencionales entrenados con pares de imagen y título, no podríamos extraer la semántica del texto. Y en el caso de cosas como las tablas, tenemos que saber lo que significa el texto y procesar las relaciones espaciales entre los elementos de texto para procesarlas correctamente. Tenemos que procesarlas de manera visualmente consciente, por lo que se llama recuperación de documentos visuales.

Pero tienes que ser capaz de ver las cosas para darles sentido, y no es diferente para los modelos de 向量模型. La calidad de la imagen cuenta.

Las diferencias en la calidad de la imagen pueden provenir de muchas fuentes: las fotos están desenfocadas, las condiciones de iluminación son malas, el movimiento provoca borrosidad y los algoritmos de compresión con pérdida destruyen los detalles. Pero los documentos visualmente ricos suelen "nacer" digitales. Consisten en cosas como capturas de pantalla, diapositivas de presentación y archivos PDF brillantes, datos que han sido convertidos en imágenes por algún proceso de presentación o publicación. A veces, son escaneos de páginas de papel reales, pero si están hechos de forma competente, esas imágenes no sufren los tipos de problemas que son frecuentes con las imágenes de escenas del mundo real.

Para los documentos visualmente ricos, el principal problema de calidad de entrada es la resolución de la imagen. Demasiado pequeña, y la información que necesitamos para la recuperación se pierde. Pero demasiado grande, e inundamos el modelo con detalles espurios que socavan el procesamiento preciso. Ajustar el tamaño de sus entradas a jina-embeddings-v4 le ahorrará dinero y mejorará sus resultados de recuperación.
Este artículo analiza cómo jina-embeddings-v4 procesa las imágenes y el efecto de la resolución de la imagen en su capacidad para recuperar documentos visualmente ricos. Hemos proporcionado código en el repositorio JinaVDR en Hugging Face para reproducir nuestros resultados o probar sus propios datos si desea aplicar las ideas de este artículo usted mismo.
tagModelos de Lenguaje Visual
jina-embeddings-v4 es un modelo de lenguaje visual (VLM) que extiende el VLM Qwen2.5-VL-3B-Instruct. Este enfoque para incrustar imágenes es diferente de los modelos de imagen o texto de una sola modalidad y de los modelos de estilo CLIP como jina-clip-v2.
La Figura 5 es un esquema de la arquitectura del modelo jina-embeddings-v4. El modelo backbone es similar a un modelo de 向量模型 convencional basado en transformadores, excepto que admite modos de salida duales: una 向量模型 de un solo vector (vector denso) producido por la agrupación media de la capa final del decodificador, y una salida de múltiples vectores (interacción tardía) producida por una capa de proyección que tiene el mismo tamaño que la entrada.
Para los textos, su entrada es la misma que la de los modelos de 向量模型 de texto convencionales: los textos se tokenizan y los Tokens se reemplazan sustituyendo vectores de una tabla de búsqueda. Estos vectores de Token juntos sirven como entrada al modelo.
La innovación de los VLM está en su manejo de las imágenes: un modelo de 向量模型 de imagen convencional está conectado al modelo de 向量模型 de texto, pero en lugar de producir una 向量模型 de imagen mediante la agrupación media, su capa final se convierte en la entrada al modelo de 向量模型 de texto, como si fuera solo una secuencia de vectores de Token.

Esto significa que las imágenes grandes tienen los mismos problemas para los modelos de 向量模型 que los textos largos. Las entradas más largas aumentan los costos computacionales y los tiempos de codificación y, a menudo, producen 向量模型 no informativas. Las imágenes pequeñas tienen el problema opuesto: si se empaqueta demasiada información en un parche, se atenúa en el proceso de 向量模型 y se pierde en las 向量模型 de un solo vector, mientras que para las 向量模型 de múltiples vectores, reduce la fuerza de las coincidencias. Existe una compensación entre la cantidad de información proporcionada al modelo y su capacidad para extraer con precisión la información relevante.
Pero los textos no se pueden redimensionar; las imágenes sí.
tagPreprocesamiento de imágenes en jina-embeddings-v4
Cuando envía una imagen a jina-embeddings-v4, se divide en parches de 28x28 píxeles. Esto significa que el número de parches es aproximadamente proporcional al tamaño de la imagen. Si utiliza la API de Jina, el tamaño máximo admitido es de 602,112 píxeles, pero es un parámetro configurable por el usuario en el código del modelo si lo descarga.
La arquitectura VLM significa que el número de parches de imagen de 28x28 que el modelo puede admitir es igual al número de Tokens de texto que puede admitir. Eso establece un límite superior absoluto en el tamaño de la imagen en aproximadamente 20 megapíxeles.

tagExperimentos con la Resolución de Imagen
Evaluamos diferentes resoluciones de imagen usando jina-embeddings-v4 con las suites ViDoRe v1 y v2, y parte de la suite de pruebas de JinaVDR, observando tanto salidas de un solo vector como de múltiples vectores. Ajustar el parámetro max_pixels del modelo a un rango de valores de hasta 19,267,584 píxeles (es decir, 5,376x3,584) produce vectores modelo a partir de diferentes resoluciones de imagen. Cuando una imagen ya es más pequeña que el valor de max_pixels, no se modifica.
tagViDoRe v1
La Tabla 1 informa los resultados de recuperación de vectores modelo de un solo vector (vector denso) para cinco resoluciones en evaluaciones individuales de ViDoRe v1 (puntaje promedio nDCG@5). Solo informamos valores de hasta 9,633,792 píxeles porque ninguna imagen en ViDoRe v1 era más grande que eso.

| Benchmark Dataset | 301,056 px | 602,112 px | 1,204,224 px | 2,408,448 px | 4,816,896 px | 9,633,792 px |
|---|---|---|---|---|---|---|
| Max embedding vector size in tokens | 384 | 768 | 1,536 | 3,072 | 6,144 | 12,288 |
arxivqa_test_subsampled |
0.83487 | 0.84529 | 0.84537 | 0.83785 | 0.83439 | 0.83469 |
docvqa_test_subsampled |
0.47366 | 0.50715 | 0.52421 | 0.51075 | 0.50287 | 0.50258 |
infovqa_test_subsampled |
0.84404 | 0.87510 | 0.87890 | 0.87978 | 0.87672 | 0.87710 |
shiftproject_test |
0.77524 | 0.81494 | 0.83988 | 0.84427 | 0.84127 | 0.84196 |
syntheticDocQA_artificial_intelligence_test |
0.93809 | 0.96786 | 0.96655 | 0.97155 | 0.97024 | 0.97024 |
syntheticDocQA_energy_test |
0.86865 | 0.89540 | 0.89847 | 0.91172 | 0.91286 | 0.91286 |
syntheticDocQA_government_reports_test |
0.91708 | 0.93417 | 0.93865 | 0.92309 | 0.91609 | 0.91609 |
syntheticDocQA_healthcare_industry_test |
0.93865 | 0.96428 | 0.96024 | 0.96542 | 0.95417 | 0.95286 |
tabfquad_test_subsampled |
0.94298 | 0.94853 | 0.94502 | 0.94505 | 0.94505 | 0.94612 |
tatdqa_test |
0.58622 | 0.64832 | 0.65867 | 0.65985 | 0.65395 | 0.65498 |
| AVERAGE | 0.81195 | 0.84010 | 0.84560 | 0.84493 | 0.84076 | 0.84095 |
Se puede ver en la Tabla 1 que la resolución más alta está lejos de ser la mejor. 9.6 megapíxeles tuvieron un rendimiento inferior a la mejor resolución en las pruebas, excepto en la que no había imágenes más grandes que 4.8 megapíxeles, donde obtuvo la misma puntuación porque no hubo cambio de tamaño. El mejor rendimiento en promedio fue de 1.2 megapíxeles, y la resolución con la mayor cantidad de mejores puntuaciones en diferentes evaluaciones fue de 2.4 megapíxeles.
Si tomáramos la mejor puntuación en cada evaluación y las promediáramos, obtendríamos 0.84905. Esto es solo un 0.345% mejor que la puntuación para 1.2 megapíxeles.
Usando vectores modelo múltiples, como se muestra en la Tabla 2, nuestros puntajes de recuperación son significativamente más altos. La coincidencia de vectores múltiples suele funcionar mejor que la coincidencia de un solo vector. Sin embargo, el rendimiento de las diferentes resoluciones es aproximadamente el mismo.
| Benchmark Dataset | 301,056 px | 602,112 px | 1,204,224 px | 2,408,448 px | 4,816,896 px | 9,633,792 px |
|---|---|---|---|---|---|---|
| Max embedding vector size in tokens | 384 | 768 | 1,536 | 3,072 | 6,144 | 12,288 |
arxivqa_test_subsampled |
0.87456 | 0.88881 | 0.88736 | 0.88531 | 0.88899 | 0.89052 |
docvqa_test_subsampled |
0.55344 | 0.61284 | 0.61123 | 0.59941 | 0.59087 | 0.59229 |
infovqa_test_subsampled |
0.88777 | 0.92646 | 0.93376 | 0.94007 | 0.93459 | 0.93533 |
shiftproject_test |
0.86224 | 0.90563 | 0.93547 | 0.92847 | 0.92240 | 0.92240 |
syntheticDocQA_artificial_intelligence_test |
0.99631 | 0.99131 | 0.99500 | 0.99262 | 0.99262 | 0.99262 |
syntheticDocQA_energy_test |
0.95216 | 0.96524 | 0.96524 | 0.96893 | 0.96762 | 0.96762 |
syntheticDocQA_government_reports_test |
0.95934 | 0.97085 | 0.97524 | 0.98024 | 0.96655 | 0.96655 |
syntheticDocQA_healthcare_industry_test |
0.97893 | 0.97893 | 0.99631 | 0.98524 | 0.98393 | 0.98393 |
tabfquad_test_subsampled |
0.95386 | 0.95732 | 0.95611 | 0.95379 | 0.95379 | 0.95379 |
tatdqa_test |
0.70547 | 0.78534 | 0.79516 | 0.80422 | 0.80552 | 0.80727 |
| AVERAGE | 0.87241 | 0.89827 | 0.90509 | 0.90383 | 0.90069 | 0.90123 |
Al igual que para los vectores modelo de un solo vector, la resolución de 1.2 megapíxeles tiene la puntuación promedio más alta, y 2.4 megapíxeles es la resolución con la mejor puntuación para la mayor cantidad de conjuntos de datos individuales. El promedio de las mejores puntuaciones en todas las evaluaciones es 0.90853, y la puntuación promedio de la resolución de 1.2 megapíxeles es 0.344% más baja, casi exactamente la misma que para el caso de un solo vector.
tagViDoRe v2
ViDoRe v2 utiliza imágenes mucho más detalladas y coloridas que ViDoRe v1, lo que sugiere que la resolución óptima probablemente será más alta.

Probamos vectores modelo múltiples de jina-embeddings-v4 en la suite de evaluación ViDoRe v2, con resultados en la Tabla 3. Los resultados de un solo vector son similares, pero con puntuaciones más bajas, por lo que los omitimos aquí.
| Benchmark Dataset | 150,528 px | 301,056 px | 602,112 px | 1,204,224 px | 2,408,448 px | 4,816,896 px | 9,633,792 px |
|---|---|---|---|---|---|---|---|
| Max embedding vector size in tokens | 192 | 384 | 768 | 1,536 | 3,072 | 6,144 | 12,288 |
esg_reports_v2 |
0.40444 | 0.54013 | 0.52005 | 0.51916 | 0.49953 | 0.52664 | 0.51442 |
biomedical_lectures_v2 |
0.58760 | 0.60479 | 0.6184 | 0.60748 | 0.60748 | 0.60748 | 0.60748 |
economics_reports_v2 |
0.47666 | 0.50399 | 0.54216 | 0.54998 | 0.54998 | 0.54998 | 0.54998 |
esg_reports_human_labeled_v2 |
0.42171 | 0.56940 | 0.61227 | 0.57307 | 0.61108 | 0.63858 | 0.64921 |
| AVERAGE | 0.47260 | 0.55458 | 0.57322 | 0.56242 | 0.56702 | 0.58067 | 0.58027 |
En este caso, el mejor rendimiento en promedio es la resolución de 4.8 megapíxeles, con un rendimiento promedio en 9.6 megapíxeles esencialmente idéntico. No obstante, para tres de las cuatro evaluaciones, la resolución más alta tuvo un rendimiento inferior al de las resoluciones más bajas, excepto en una prueba en la que ninguna imagen era más grande que 4.8 megapíxeles.
tagEvaluaciones de Alta Resolución
ViDoRe v1 y ViDoRe v2 consisten en imágenes con resoluciones nativas similares, por lo que tomamos dos evaluaciones de la suite JinaVDR que contienen imágenes de muy alta resolución y difíciles de procesar, y realizamos la misma prueba de vectores modelo múltiples con ellas.
Una es la evaluación europeana-de-news, que contiene escaneos de alta resolución de periódicos alemanes de los siglos XVII al XX; la otra es la evaluación wikimedia-commons-maps, que contiene escaneos de muy alta resolución de mapas impresos, principalmente de la era pre-digital.

wikimedia-commons-maps. (Derecha) Portada del periódico Hamburger Nachrichten, fechado el 26 de abril de 1819 e incluido en europeana-de-news, escaneado a 4324x4738 píxeles.Los resultados son muy variados, como se puede ver en la Tabla 4.
| Conjunto de datos de referencia | 301,056 px | 602,112 px | 1,204,224 px | 2,408,448 px | 4,816,896 px | 9,633,792 px | 19,267,584 px |
|---|---|---|---|---|---|---|---|
| Tamaño máximo del vector de Embeddings en Tokens | 384 | 768 | 1,536 | 3,072 | 6,144 | 12,288 | 24,576 |
europeana-de-news |
0.46319 | 0.59457 | 0.66802 | 0.66550 | 0.66407 | 0.63948 | 0.65208 |
wikimedia-commons-maps |
0.23671 | 0.34421 | 0.42835 | 0.52268 | 0.53464 | 0.53464 | 0.53588 |
| PROMEDIO | 0.34995 | 0.46939 | 0.54819 | 0.59409 | 0.59936 | 0.58706 | 0.59398 |
Los datos del periódico claramente no requieren la misma resolución que los datos del mapa. Esto se debe probablemente a que el texto de los mapas es muy pequeño en comparación con el tamaño total de la imagen y realmente necesita ser legible para que la recuperación funcione. Cuando los escaneos de periódicos tienen un tamaño mayor que el óptimo, el rendimiento fluctúa y disminuye.
El promedio es subóptimo para ambos, lo que sugiere que no hay una resolución correcta para resolver el problema. Ese descubrimiento es lo que motiva lo que hicimos a continuación.
tagVectores Modelo de Resolución Múltiple
La arquitectura VLM de jina-embeddings-v4 trata los parches individuales de las imágenes de la misma manera que trata los Tokens de texto, por lo que es fácil para nosotros aumentar los parches de alta resolución con los de baja resolución. Simplemente significa más datos de entrada, siempre y cuando nos mantengamos dentro del máximo que el modelo admite. Si una resolución más baja produce una mejor semántica que una alta resolución, podemos simplemente incluirlas y no preocuparnos por cuál es la resolución óptima.
Para probar esta hipótesis, analizamos tres combinaciones de resoluciones:
| Mezcla 1 | Mezcla 2 | Mezcla 3 | |
|---|---|---|---|
| Número máximo de Tokens totales | 2,880 | 5,234 | 12,096 |
| Resoluciones | 150,528 px<br>301,056 px<br>602,112 px<br>1,204,224 px | 50,000 px<br>90,000 px<br>160,000 px<br>250,000 px<br>360,000 px<br>490,000 px<br>602,112 px<br>900,000 px<br>1,204,224 px | 150,528 px<br>301,056 px<br>602,112 px<br>1,204,224 px<br>2,408,448 px<br>4,816,896 px |
Esto significa que cuando probamos la Mezcla 1, redimensionamos cada imagen a cuatro resoluciones diferentes — 150,528 px, 301,056 px, 602,112 px, 1,204,224 px — y procesamos cada una de ellas individualmente en Vectores Modelo múltiples, luego concatenamos los resultados antes de realizar la coincidencia de consultas. Lo mismo para la Mezcla 2 y la Mezcla 3, pero a diferentes resoluciones. Probamos las tres combinaciones en los puntos de referencia ViDoRe v2, resumidos en la Tabla 6.
| Conjunto de datos de referencia | Mejor resolución única | Mezcla 1 | Mezcla 2 | Mezcla 3 |
|---|---|---|---|---|
| Tamaño máximo del vector de Embeddings en Tokens | — | 2,880 | 5,234 | 12,096 |
esg_reports_v2 |
0.54013 | 0.58354 | 0.59252 | 0.56567 |
biomedical_lectures_v2 |
0.61840 | 0.61678 | 0.61714 | 0.61638 |
economics_reports_v2 |
0.54998 | 0.54997 | 0.55534 | 0.55049 |
esg_reports_human_labeled_v2 |
0.64921 | 0.67726 | 0.68057 | 0.66734 |
| PROMEDIO | 0.58943 | 0.60689 | 0.61139 | 0.59997 |
Para todos los puntos de referencia de ViDoRe v2, la Mezcla 2 supera a las Mezclas 1 y 3, lo que sugiere que más resoluciones diferentes producen mejores resultados que agregar resoluciones más altas. En dos de cuatro puntos de referencia, todas las mezclas de resoluciones superan a la mejor resolución única, y para los dos restantes, solo la Mezcla 1 tiene un rendimiento inferior, y no por un margen amplio.
Estos resultados muestran que, aunque no existe una única mezcla óptima de resoluciones para todos los datos, identificar una buena mezcla de resoluciones es la dirección correcta para encontrar una solución óptima.
tagConclusión
La resolución de la imagen importa bastante para jina-embeddings-v4 al procesar materiales visualmente ricos. Un problema clave es que el texto debe tener un tamaño que sea legible. Lo que no puedes leer, la IA tampoco puede leerlo, y si el texto importa, entonces tiene que ser leído.
Pero, una resolución demasiado alta hace que sea difícil para el modelo de Embeddings ensamblar parches de imagen en un todo coherente. También es costoso: las resoluciones más altas significan más procesamiento y, para los Vectores Modelo múltiples, más almacenamiento y una coincidencia más lenta.
Usar múltiples resoluciones y aplicar una puntuación de estilo de interacción tardía en todas las salidas juntas es una buena manera de manejar imágenes visualmente ricas con tamaños variables. Pero esto aumenta los costos de procesamiento y almacenamiento, y ralentiza la recuperación de la misma manera que lo hacen las resoluciones muy grandes.
Estamos buscando formas de operacionalizar esta idea para mejorar la búsqueda neuronal. Estamos constantemente tratando de diversificar nuestros datos de capacitación y prueba para sondear nuestros modelos en busca de deficiencias e idear formas de mejorarlos. Estamos investigando los efectos de la resolución y las técnicas de resolución múltiple como las que se describen aquí en varios tipos de materiales.
También estamos haciendo experimentos para ver si las técnicas de resolución múltiple como las que se describen aquí mitigan el efecto del ruido en las imágenes y producen una recuperación más robusta.
Además, puede ser posible determinar automáticamente de antemano la resolución óptima para cada imagen. Si podemos detectar de manera confiable la mejor resolución, eliminaría un parámetro más para los usuarios al tiempo que mejoraría los resultados generales, haciendo que los Embeddings sean más accesibles y utilizables.






