Compartir a través de


Modelos de visión de consultas

En este artículo, aprenderá a escribir solicitudes de consulta para modelos fundacionales optimizados para tareas de visión y a enviarlos al endpoint de servicio del modelo.

Mosaic AI Model Serving proporciona una API unificada para comprender y analizar imágenes mediante una variedad de modelos fundamentales, lo que desbloquea funcionalidades multireccionales eficaces. Esta funcionalidad está disponible a través de modelos seleccionados hospedados en Databricks como parte de las API de Foundation Model y los puntos de conexión que sirven a modelos externos.

Requisitos

Ejemplos de consultas

Cliente OpenAI

Para usar el cliente OpenAI, especifique el nombre del punto de conexión de servicio del modelo como la entrada model.


from openai import OpenAI
import base64
import httpx

client = OpenAI(
    api_key="dapi-your-databricks-token",
    base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)

# encode image
image_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
image_data = base64.standard_b64encode(httpx.get(image_url).content).decode("utf-8")

# OpenAI request
completion = client.chat.completions.create(
    model="databricks-claude-sonnet-4-5",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "what's in this image?"},
                {
                    "type": "image_url",
                    "image_url": {"url": f"data:image/jpeg;base64,{image_data}"},
                },
            ],
        }
    ],
)

print(completion.choices[0].message.content)

La API de finalizaciones de chat admite varias entradas de imagen, lo que permite al modelo analizar cada imagen y sintetizar información de todas las entradas para generar una respuesta al mensaje.


from openai import OpenAI
import base64
import httpx

client = OpenAI(
    api_key="dapi-your-databricks-token",
    base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)

# Encode multiple images

image1_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
image1_data = base64.standard_b64encode(httpx.get(image1_url).content).decode("utf-8")

image2_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
image2_data = base64.standard_b64encode(httpx.get(image1_url).content).decode("utf-8")

# OpenAI request

completion = client.chat.completions.create(
    model="databricks-claude-sonnet-4-5",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "What are in these images? Is there any difference between them?"},
            {
            "type": "image_url",
            "image_url": {"url": f"data:image/jpeg;base64,{image1_data}"},
            },
            {
            "type": "image_url",
            "image_url": {"url": f"data:image/jpeg;base64,{image2_data}"},
            },
          ],
      }
  ],
)

print(completion.choices[0].message.content)

SQL

Importante

En el ejemplo siguiente se usa la función SQL integrada, ai_query. Esta función está en versión preliminar pública y la definición podría cambiar.

A continuación se consulta un modelo fundamental compatible con las API de modelo de Databricks Foundation para la entrada multimodal mediante la función de IA ai_query().


> SELECT *, ai_query(
  'databricks-llama-4-maverick',
 'what is this image about?', files => content)
as output FROM READ_FILES("/Volumes/main/multimodal/unstructured/image.jpeg");

Modelos compatibles

Consulte Tipos de modelos de Foundation para los modelos de visión admitidos.

Requisitos de la imagen de entrada

Modelos Formatos compatibles Varias imágenes por solicitud Limitaciones de tamaño de imagen Recomendaciones de cambio de tamaño de imagen Consideraciones sobre la calidad de las imágenes
databricks-gpt-5
  • JPEG
  • PNG
  • WebP
  • GIF (No animado GIF)
Hasta 500 entradas de imagen individuales por solicitud Límite de tamaño de archivo: hasta 10 MB de tamaño total de carga por solicitud N/A
  • Sin marcas de agua ni logotipos
  • Lo suficientemente claro para que un ser humano comprenda
databricks-gpt-5-mini
  • JPEG
  • PNG
  • WebP
  • GIF (No animado GIF)
Hasta 500 entradas de imagen individuales por solicitud Límite de tamaño de archivo: hasta 10 MB de tamaño total de carga por solicitud N/A
  • Sin marcas de agua ni logotipos
  • Lo suficientemente claro para que un ser humano comprenda
databricks-gpt-5-nano
  • JPEG
  • PNG
  • WebP
  • GIF (No animado GIF)
Hasta 500 entradas de imagen individuales por solicitud Límite de tamaño de archivo: hasta 10 MB de tamaño total de carga por solicitud N/A
  • Sin marcas de agua ni logotipos
  • Lo suficientemente claro para que un ser humano comprenda
databricks-gemma-3-12b
  • JPEG
  • PNG
  • WebP
  • GIF
Hasta 5 imágenes para solicitudes de API
  • Todas las imágenes proporcionadas se procesan en una solicitud.
Límite de tamaño de archivo: total de 10 MB en todas las imágenes por solicitud de API N/A N/A
databricks-llama-4-maverick
  • JPEG
  • PNG
  • WebP
  • GIF
Hasta 5 imágenes para solicitudes de API
  • Todas las imágenes proporcionadas se procesan en una solicitud.
Límite de tamaño de archivo: total de 10 MB en todas las imágenes por solicitud de API N/A N/A
  • databricks-claude-sonnet-4-5
  • databricks-claude-haiku-4-5
  • databricks-claude-opus-4-5
  • databricks-claude-opus-4-1
  • databricks-claude-sonnet-4
  • databricks-claude-sonnet-4-5
  • JPEG
  • PNG
  • GIF
  • WebP
  • Hasta 20 imágenes para Claude.ai
  • Hasta 100 imágenes para solicitudes de API
  • Todas las imágenes proporcionadas se procesan en una solicitud, lo que resulta útil para compararlas o contrastarlas.
  • Se rechazan las imágenes de más de 8000x8000 px .
  • Si se envían más de 20 imágenes en una solicitud de API, el tamaño máximo permitido por imagen es de 2000 x 2000 px.
Para obtener un rendimiento óptimo, cambie el tamaño de las imágenes antes de cargarlas si son demasiado grandes.
  • Si el borde largo de una imagen supera los 1568 píxeles o su tamaño supera aproximadamente 1600 tokens, se reduce verticalmente automáticamente mientras se conserva la relación de aspecto.
  • Las imágenes muy pequeñas (menos de 200 píxeles en cualquier borde) pueden degradar el rendimiento.
  • Para reducir la latencia, mantenga las imágenes en 1,15 píxeles y, como máximo , 1568 píxeles en ambas dimensiones.
  • Claridad: evite imágenes borrosas o pixeladas.
  • Texto en imágenes:
    • Asegúrese de que el texto es legible y no es demasiado esmal.
    • Evite recortar el contexto visual clave solo para ampliar el texto.

Conversión de imagen a token

Esta sección solo se aplica a las API de Foundation Model. Para los modelos externos, consulte la documentación del proveedor.

Cada imagen de una solicitud a un modelo fundacional incrementa el uso de tokens. Consulte la calculadora de precios para calcular los precios de las imágenes en función del uso de tokens y el modelo que usa.

Limitaciones de la comprensión de imágenes

Esta sección solo se aplica a las API de Foundation Model. Para los modelos externos, consulte la documentación del proveedor.

A continuación se muestran las limitaciones de comprensión de imágenes para los modelos de base admitidos hospedados en Databricks.

Modelo Limitaciones
Se admiten los siguientes modelos de Claude:
  • databricks-claude-sonnet-4-5
  • databricks-claude-opus-4-1
  • databricks-claude-sonnet-4
  • databricks-claude-sonnet-4-5
A continuación se muestran los límites de los modelos de Claude en Databricks:
  • Evite el uso de Claude para tareas que requieren precisión perfecta o análisis confidencial sin supervisión humana.
  • Identificación de personas: no se puede identificar ni asignar nombres a personas en imágenes.
  • Precisión: puede malinterpretar imágenes de baja calidad, rotadas o muy pequeñas (200 px).
  • Razonamiento espacial: tiene dificultades con diseños precisos, como leer relojes analógicos o posiciones de ajedrez.
  • Recuento: proporciona recuentos aproximados, pero puede ser inexacto para muchos objetos pequeños.
  • Imágenes generadas por IA: no se pueden detectar imágenes sintéticas o falsas de forma confiable.
  • Contenido inapropiado: bloquea imágenes explícitas o que infringen directivas.
  • Atención sanitaria: no es adecuado para exámenes médicos complejos (por ejemplo, CT y MRIs). No es una herramienta de diagnóstico.

Recursos adicionales