Consulte modelos de visão
Neste artigo, você aprenderá a escrever solicitações de consulta para modelos básicos otimizados para tarefas de visão e enviá-las ao seu modelo em serviço endpoint.
O Mosaic AI Model Serving oferece uma API unificada para compreender e analisar imagens utilizando uma variedade de modelos básicos, desbloqueando poderosos recursos multimodais. Esta funcionalidade está disponível em modelos selecionados hospedados no Databrickscomo parte do Foundation Model APIs e do endpoint de serviço que atendem modelos externos.
Requisitos
- Consulte os requisitos.
- Instale o pacote apropriado para o seu clustering com base na opção de cliente de consulta escolhida.
Exemplos de consultas
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-3-7-sonnet",
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)
O Chat Completions ( API ) suporta múltiplas entradas de imagens, 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-3-7-sonnet",
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)
Modelos compatíveis
Consulte os tipos de modelo Foundation para ver os modelos de visão compatíveis.
Requisitos de entrada de imagem
Esta seção se aplica apenas às APIs do Modelo Básico. Para modelos externos, consulte a documentação do fornecedor.
Várias imagens por solicitação
- 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.
Limitações de tamanho
- Imagens maiores que 8000x8000 px serão rejeitadas.
- Se mais de 20 imagens forem enviadas em uma solicitação de API, o tamanho máximo permitido por imagem é 2000 x 2000 px .
Recomendações de redimensionamento de imagens
- Para obter um desempenho ideal, redimensione as imagens antes de enviá-las, caso sejam muito grandes.
- Se a borda mais longa de uma imagem exceder 1568 pixels ou seu tamanho exceder ~1.600 tokens, ela será automaticamente reduzida, preservando a proporção.
- Imagens muito pequenas (menos de 200 pixels em qualquer lado ) 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.
Considerações sobre a qualidade da imagem
- Formatos suportados: JPEG, PNG, GIF, WebP.
- Claridade: evite imagens borradas ou pixeladas.
- Texto em imagens:
- Certifique-se de que o texto esteja legível e não seja muito pequeno.
- Evite cortar um contexto visual key apenas para ampliar o texto.
Calcule os custos
Esta seção se aplica apenas às APIs do Modelo Básico. Para modelos externos, consulte a documentação do fornecedor.
Cada imagem em uma solicitação ao modelo básico aumenta o uso de tokens.
Contagem e estimativas de tokens
Caso não seja necessário redimensionar, calcule os tokens com: tokens = (largura px × altura px) / 750
Contagem aproximada de tokens para diferentes tamanhos de imagem:
Tamanho da imagem | tokens |
---|---|
200 × 200 px (0,04 MP) | ~54 |
1000 × 1000 px (1 MP) | ~1334 |
1092 × 1092 px (1,19 MP) | ~1590 |
Limitações da compreensão da imagem
Esta seção se aplica apenas às APIs do Modelo Básico. Para modelos externos, consulte a documentação do fornecedor.
Existem limitações para a compreensão avançada de imagens do modelo Claude no Databricks:
- Identificação de pessoas : não é possível identificar ou nomear pessoas nas imagens.
- Precisão : pode interpretar mal imagens de baixa qualidade, giradas ou muito pequenas (\ < 200 px).
- Raciocínio espacial : Dificuldades com disposição precisa, como ler relógios analógicos ou posições no xadrez.
- Contagem : fornece contagens aproximadas, mas pode ser imprecisa para muitos objetos pequenos.
- AIImagens geradas por computador : Não é possível detectar com confiabilidade imagens sintéticas ou falsas.
- Conteúdo impróprio : bloqueia imagens explícitas ou que violam políticas.
- Saúde : Não é adequado para exames médicos complexos (por exemplo, tomografias computadorizadas e ressonâncias magnéticas). Não é uma ferramenta de diagnóstico.
Analise todas as saídas cuidadosamente, especialmente para casos de uso de alto risco. Evite utilizar Claude para tarefas que exijam precisão perfeita ou análises sensíveis sem supervisão humana.