Compartilhar via


Consulta de modelos de visão

Neste artigo, você aprenderá a escrever solicitações de consulta para modelos de fundação otimizados para tarefas de visão e a enviá-las para o ponto de extremidade do serviço de modelos.

O Mosaic AI Model Serving fornece uma API unificada para entender e analisar imagens usando uma variedade de modelos de base, desbloqueando recursos multimodal avançados. Essa funcionalidade está disponível por meio de modelos específicos hospedados pelo Databricks, como parte das APIs do Foundation Model e dos pontos de extremidade que oferecem suporte a modelos externos.

Requisitos

Exemplos de consulta

Cliente OpenAI

Para usar o cliente do OpenAI, especifique o nome do ponto de extremidade de serviço do modelo como a 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)

A API de Conclusões de Chat dá suporte a várias entradas de imagem, permitindo que o modelo analise cada imagem e sintetize informações de todas as entradas para gerar uma resposta ao prompt.


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

O exemplo a seguir usa a função SQL integrada, ai_query. Essa função está na Versão Prévia Pública e a definição pode ser alterada.

As consultas a seguir utilizam um modelo de base suportado pelas APIs de Modelo de Base do Databricks para entrada multimodal usando a Função 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 com suporte

Consulte tipos de modelo Foundation para modelos de visão suportados.

Requisitos de imagem de entrada

Modelo(s) Formatos com suporte Várias imagens por solicitação Limitações de tamanho da imagem Recomendações de redimensionamento de imagem Considerações sobre a qualidade da imagem
databricks-gpt-5
  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)
Até 500 entradas de imagem individuais por solicitação Limite de tamanho do arquivo: tamanho total de carga de até 10 MB por solicitação N/A
  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender
databricks-gpt-5-mini
  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)
Até 500 entradas de imagem individuais por solicitação Limite de tamanho do arquivo: tamanho total de carga de até 10 MB por solicitação N/A
  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender
databricks-gpt-5-nano
  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)
Até 500 entradas de imagem individuais por solicitação Limite de tamanho do arquivo: tamanho total de carga de até 10 MB por solicitação N/A
  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender
databricks-gemma-3-12b
  • JPEG
  • PNG
  • WebP
  • GIF
Até 5 imagens para solicitações de API
  • Todas as imagens fornecidas são processadas em uma solicitação.
Limite de tamanho do arquivo: total de 10 MB em todas as imagens por solicitação de API N/A N/A
databricks-llama-4-maverick
  • JPEG
  • PNG
  • WebP
  • GIF
Até 5 imagens para solicitações de API
  • Todas as imagens fornecidas são processadas em uma solicitação.
Limite de tamanho do arquivo: total de 10 MB em todas as imagens por solicitação 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
  • Até 20 imagens para Claude.ai
  • Até 100 imagens para solicitações de API
  • Todas as imagens fornecidas são processadas em uma solicitação, o que é útil para compará-las ou contrastá-las.
  • Imagens maiores que 8000x8000 px são rejeitadas.
  • Se mais de 20 imagens forem enviadas em uma solicitação de API, o tamanho máximo permitido por imagem será 2000 x 2000 px.
Para um desempenho ideal, redimensione as imagens antes de carregar se elas forem muito grandes.
  • Se a borda longa de uma imagem exceder 1568 pixels ou seu tamanho exceder cerca de 1.600 tokens, ela será automaticamente dimensionada para baixo , preservando a taxa de proporção.
  • Imagens muito pequenas (menos de 200 pixels em qualquer borda) podem prejudicar o desempenho.
  • Para reduzir a latência, mantenha as imagens dentro de 1,15 megapixels e no máximo 1568 pixels em ambas as dimensões.
  • Clareza: evite imagens desfocadas ou pixeladas.
  • Texto em imagens:
    • Verifique se o texto é legível e não muito pequeno.
    • Evite cortar o contexto visual chave apenas para ampliar o texto.

Conversão de imagem em token

Esta seção se aplica somente às APIs do Modelo de Fundação. Para modelos externos, consulte a documentação do provedor.

Cada imagem em uma solicitação a um modelo básico contribui para o uso de tokens. Consulte a calculadora de preços para estimar o preço da imagem com base no uso do token e no modelo que você está usando.

Limitações de compreensão de imagem

Esta seção se aplica somente às APIs do Modelo de Fundação. Para modelos externos, consulte a documentação do provedor.

Veja a seguir as limitações de compreensão de imagem para os modelos de fundação hospedados pelo Databricks com suporte:

Modelo Limitações
Há suporte para os seguintes modelos claude:
  • databricks-claude-sonnet-4-5
  • databricks-claude-opus-4-1
  • databricks-claude-sonnet-4
  • databricks-claude-sonnet-4-5
Veja a seguir os limites dos modelos claude no Databricks:
  • Evite usar Claude para tarefas que exijam precisão perfeita ou análise confidencial sem supervisão humana.
  • Identificação de pessoas: não é possível identificar ou nomear pessoas em imagens.
  • Precisão: pode interpretar mal imagens de baixa qualidade, giradas ou muito pequenas (200 px).
  • Raciocínio espacial: Dificuldade com layouts precisos, como ler relógios analógicos ou posições de xadrez.
  • Contagem: fornece contagens aproximadas, mas pode ser imprecisa para muitos objetos pequenos.
  • Imagens geradas por IA: não é possível detectar de forma confiável imagens sintéticas ou falsas.
  • Conteúdo inadequado: bloqueia imagens explícitas ou que violam políticas.
  • Cuidados de saúde: não adequado para exames médicos complexos (por exemplo, CTs e MRIs). Não é uma ferramenta de diagnóstico.

Recursos adicionais