Pular para o conteúdo principal

Consultar modelos básicos por tipo

info

Beta

Este recurso está em Beta. Os administradores da account podem controlar o acesso a este recurso na página Pré-visualizações do console da account. Consulte Gerenciar pré-visualizações do Databricks.

Neste artigo, você aprenderá a escrever solicitações de query para modelos básicos hospedados no Databricks e disponibilizados por serviços de modelo no Unity AI Gateway, organizados por tipo de modelo: chat, visão, áudio e vídeo e raciocínio.

Requisitos

nota

Os exemplos a seguir são baseados em Unity AI Gateway e serviços de modelo. Se você usa endpoints de servindo modelo em vez de serviços de modelo, substitua o nome do serviço de modelo pelo nome de um endpoint. Veja Descobrir modelos base para uma lista de modelos base disponíveis e seus nomes de serviço de modelo e endpoint.

Chat

Modelos de base otimizados para bate-papo e tarefas de uso geral.

Os exemplos nesta seção mostram como consultar um serviço de modelo usando as diferentes opções de cliente.

Para um exemplo de inferência em lotes, consulte Enriquecer dados usando AI Functions.

Para usar o cliente OpenAI, especifique o nome do serviço de modelo como a entrada model.

Python
from databricks_openai import DatabricksOpenAI

client = DatabricksOpenAI()

response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
max_tokens=256
)

Para consultar modelos de base fora do workspace, é preciso usar o cliente OpenAI diretamente. Você também precisa da sua instância de workspace do Databricks para conectar o cliente OpenAI ao Databricks. O exemplo a seguir pressupõe que você tenha um token de API do Databricks e openai instalado no seu compute.

Python

import os
import openai
from openai import OpenAI

client = OpenAI(
api_key=os.environ.get('DATABRICKS_TOKEN'),
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)

response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
max_tokens=256
)

Como exemplo, a seguir está o formato de solicitação esperado para um modelo de chat ao usar a API REST.

Bash
{
"messages": [
{
"role": "user",
"content": "What is a mixture of experts model?"
}
],
"max_tokens": 100,
"temperature": 0.1
}

A seguir, um formato de resposta esperado para uma solicitação feita usando a API REST:

JSON
{
"model": "databricks-claude-sonnet-4-5",
"choices": [
{
"message": {},
"index": 0,
"finish_reason": null
}
],
"usage": {
"prompt_tokens": 7,
"completion_tokens": 74,
"total_tokens": 81
},
"object": "chat.completion",
"id": null,
"created": 1698824353
}

Visão

Consulte modelos de visão hospedados pela Databricks por meio de serviços de modelo no Unity AI Gateway para entender e analisar imagens com uma API unificada.

Para usar o cliente OpenAI, especifique o nome do serviço de modelo como a entrada model.

Python

from openai import OpenAI
import base64
import requests

# Get the workspace API URL and token from the notebook context
API_ROOT = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiUrl().get()
API_TOKEN = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiToken().get()

client = OpenAI(
api_key=API_TOKEN,
base_url=f"{API_ROOT}/ai-gateway/mlflow/v1",
)

# Download and encode image
image_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
resp = requests.get(image_url)
resp.raise_for_status()
image_data = base64.b64encode(resp.content).decode("utf-8")

# OpenAI request
completion = client.chat.completions.create(
model="system.ai.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 oferece suporte a múltiplas entradas de imagem, permitindo que o modelo analise cada imagem e sintetize informações de todas as entradas para gerar uma resposta ao prompt.

Python

from openai import OpenAI
import base64
import requests

# Get the workspace API URL and token from the notebook context
API_ROOT = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiUrl().get()
API_TOKEN = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiToken().get()

client = OpenAI(
api_key=API_TOKEN,
base_url=f"{API_ROOT}/ai-gateway/mlflow/v1",
)

# Download and 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"
resp1 = requests.get(image1_url)
resp1.raise_for_status()
image1_data = base64.b64encode(resp1.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"
resp2 = requests.get(image2_url)
resp2.raise_for_status()
image2_data = base64.b64encode(resp2.content).decode("utf-8")

# OpenAI request
completion = client.chat.completions.create(
model="system.ai.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)

Requisitos de imagem de entrada

Modelo

Formatos compatíveis

Várias imagens por solicitação

Limitações de tamanho de imagem

Recomendações de Redimensionamento de Imagem

Considerações sobre a qualidade da imagem

databricks-gpt-5-5-pro

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-5

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-4

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-4-mini

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-4-nano

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-2

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5-1

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gpt-5

  • JPEG
  • PNG
  • WebP
  • GIF (Não animado GIF)

Até 500 entradas de imagem individuais por solicitação

Limite de tamanho de arquivo: até 10 MB de tamanho total da carga útil 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 de arquivo: até 10 MB de tamanho total da carga útil 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 de arquivo: até 10 MB de tamanho total da carga útil por solicitação

N/A

  • Sem marcas d'água ou logotipos
  • Claro o suficiente para um humano entender

databricks-gemini-3-5-flash

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-3-1-pro

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-3-pro

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-3-flash

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-3-1-flash-lite

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-2-5-pro

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

databricks-gemini-2-5-flash

  • JPEG
  • PNG
  • WebP

Até 50 imagens para solicitações de API. Todas as imagens fornecidas são processadas em uma solicitação.

Limite de tamanho de arquivo: 7 MB cada imagem.

N/A

N/A

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: 10 MB no total 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: 10 MB no total em todas as imagens por solicitação de API

N/A

N/A

  • databricks-claude-sonnet-4-6
  • databricks-claude-sonnet-4-5
  • databricks-claude-haiku-4-5
  • databricks-claude-opus-4-8
  • databricks-claude-opus-4-7
  • databricks-claude-opus-4-6
  • databricks-claude-opus-4-5
  • databricks-claude-opus-4-1
  • databricks-claude-sonnet-4
  • 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 é de 2000 x 2000 px .

Para desempenho ideal, redimensione as imagens antes de fazer upload, se forem muito grandes.

  • Se a *borda longa* de uma imagem *exceder 1568 pixels* ou seu *tamanho exceder ~1.600 tokens*, ela será *reduzida automaticamente* enquanto preserva a proporção.
  • Imagens muito pequenas (com menos de 200 pixels em qualquer borda ) podem degradar o desempenho .
  • Para reduzir a latência, mantenha as imagens dentro de 1,15 megapixels e com no máximo 1568 pixels em ambas as dimensões.
  • Clareza: Evite imagens borradas ou pixeladas.
  • Texto em imagens:
    • Garanta que o texto seja legível e não muito pequeno.
    • Evite cortar o contexto visual key apenas para ampliar o texto.

Conversão de imagem para tokens

Cada imagem em uma solicitação a um modelo de fundação contribui para o uso de tokens. Consulte a calculadora de preços para estimar os preços de imagem com base no uso de tokens e no modelo que você está utilizando.

Limitações da compreensão de imagem

A seguir, as limitações de compreensão de imagem para os modelos de fundação suportados hospedados no Databricks:

Modelo

Limitações

Os seguintes modelos Claude são compatíveis:

  • databricks-claude-opus-4-8
  • databricks-claude-opus-4-7
  • databricks-claude-opus-4-6
  • databricks-claude-opus-4-5
  • databricks-claude-opus-4-1
  • databricks-claude-sonnet-4-6
  • databricks-claude-sonnet-4-5
  • databricks-claude-sonnet-4

A seguir, estão os limites para modelos Claude no Databricks:

  • Evite usar o Claude para tarefas que exijam precisão perfeita ou análise sensível sem supervisão humana.
  • Identificação de pessoas : não é possível identificar ou nomear pessoas em imagens.
  • Precisão : Pode interpretar incorretamente imagens de baixa qualidade, giradas ou muito pequenas (200 px).
  • Raciocínio espacial : Tem dificuldade com disposições precisas, como a leitura de relógios analógicos ou posições de xadrez.
  • Contagem : fornece contagens aproximadas, mas pode ser impreciso para muitos objetos pequenos.
  • Imagens geradas por AI : Não é possível detectar de forma confiável imagens sintéticas ou falsas.
  • Conteúdo inadequado : Bloqueia imagens explícitas ou que violam a política.
  • Saúde : Não é adequado para exames médicos complexos (por exemplo, TC e ressonância magnética). Não é uma ferramenta de diagnóstico.

Áudio e vídeo

Envie entradas de áudio e vídeo para modelos básicos do Gemini fornecidos pelo Unity AI Gateway no Databricks. É possível fornecer mídia como uma URL ou como dados em linha codificados em base64 usando a Chat Completions API ou a Google Gemini API.

É possível fornecer entradas de áudio e vídeo usando dois métodos:

  • URL : Passe uma URL publicamente acessível para o arquivo de mídia. Para vídeo, URLs do YouTube também são compatíveis.
  • Dados inline Base64 : Codifique o arquivo como uma strings base64 e passe-o como um URI de dados (por exemplo, data:video/mp4;base64,<encoded_data>).

API de Conclusões de Chat

A API de conclusões de chat permite que você passe entrada de vídeo e áudio. Use os tipos de conteúdo video_url e audio_url no array messages para passar entradas de mídia. Cada item de conteúdo inclui um campo url que aceita um URL da web ou um URI de dados base64.

Os exemplos a seguir mostram entrada de vídeo e áudio usando a API de Conclusões de Chat.

Python
import os
import base64
from openai import OpenAI

DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
DATABRICKS_BASE_URL = os.environ.get('DATABRICKS_BASE_URL')

client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url=DATABRICKS_BASE_URL
)

# Encode a local video file as base64
with open("video.mp4", "rb") as f:
video_b64 = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.chat.completions.create(
model="system.ai.gemini-3-1-pro",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Summarize what happens in these videos."},
{
"type": "video_url",
"video_url": {"url": "https://example.com/sample-video.mp4"}
},
{
"type": "video_url",
"video_url": {"url": f"data:video/mp4;base64,{video_b64}"}
},
]
}],
max_tokens=1024
)

print(response.choices[0].message.content)
Python
import os
import base64
from openai import OpenAI

DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
DATABRICKS_BASE_URL = os.environ.get('DATABRICKS_BASE_URL')

client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url=DATABRICKS_BASE_URL
)

# Encode a local audio file as base64
with open("audio.mp3", "rb") as f:
audio_b64 = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.chat.completions.create(
model="system.ai.gemini-3-1-pro",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Transcribe this audio and summarize the key points."},
{
"type": "audio_url",
"audio_url": {"url": "https://example.com/sample-audio.mp3"}
},
{
"type": "audio_url",
"audio_url": {"url": f"data:audio/mp3;base64,{audio_b64}"}
},
]
}],
max_tokens=1024
)

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

API do Google Gemini

Use a API do Google Gemini para passar mídia como inlineData (codificada em base64) ou fileData (referência de URL) dentro do array parts.

Os exemplos a seguir mostram entrada de vídeo e áudio usando a API do Google Gemini.

Python
from google import genai
from google.genai import types
import base64
import os

DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')

client = genai.Client(
api_key="databricks",
http_options=types.HttpOptions(
base_url="https://<workspace-url>/ai-gateway/gemini",
headers={
&quot;Authorization&quot;: f&quot;Bearer {DATABRICKS_TOKEN}&quot;,
},
),
)

# Encode a local video file as base64
with open("video.mp4", "rb") as f:
video_b64 = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.models.generate_content(
model="system.ai.gemini-3-1-pro",
contents=[
types.Content(
role="user",
parts=[
types.Part(text="Summarize what happens in these videos."),
types.Part(
file_data=types.FileData(
mime_type="video/mp4",
file_uri="https://example.com/sample-video.mp4",
)
),
types.Part(
inline_data=types.Blob(
mime_type="video/mp4",
data=video_b64,
)
),
],
),
],
config=types.GenerateContentConfig(
max_output_tokens=1024,
),
)

print(response.text)
Python
from google import genai
from google.genai import types
import base64
import os

DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')

client = genai.Client(
api_key="databricks",
http_options=types.HttpOptions(
base_url="https://<workspace-url>/ai-gateway/gemini",
headers={
&quot;Authorization&quot;: f&quot;Bearer {DATABRICKS_TOKEN}&quot;,
},
),
)

# Encode a local audio file as base64
with open("audio.mp3", "rb") as f:
audio_b64 = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.models.generate_content(
model="system.ai.gemini-3-1-pro",
contents=[
types.Content(
role="user",
parts=[
types.Part(text="Transcribe this audio and summarize the key points."),
types.Part(
file_data=types.FileData(
mime_type="audio/mp3",
file_uri="https://example.com/sample-audio.mp3",
)
),
types.Part(
inline_data=types.Blob(
mime_type="audio/mp3",
data=audio_b64,
)
),
],
),
],
config=types.GenerateContentConfig(
max_output_tokens=1024,
),
)

print(response.text)

Limitações

  • Várias entradas de áudio ou vídeo podem ser incluídas em uma única solicitação, mas arquivos grandes aumentam a latência e o uso de tokens.

Raciocínio

Modelos básicos otimizados para tarefas de raciocínio. A API de Foundation Model do Databricks fornece uma API unificada para interagir com todos os Foundation Models, incluindo modelos de raciocínio. O raciocínio concede aos modelos básicos recursos aprimorados para abordar tarefas complexas. Alguns modelos também fornecem transparência, revelando seu processo de pensamento passo a passo antes de entregar uma resposta final.

Tipos de modelos de raciocínio

Há dois tipos de modelos: somente raciocínio e híbridos. A tabela a seguir descreve como diferentes modelos usam diferentes abordagens para controlar o raciocínio:

Modelos

Tipo de modelo de raciocínio

Detalhes

Parâmetros

Modelos GPT-5 como databricks-gpt-5-5-pro, databricks-gpt-5-5, databricks-gpt-5-4, databricks-gpt-5-4-mini, databricks-gpt-5-4-nano, databricks-gpt-5-2, databricks-gpt-5-1, databricks-gpt-5, databricks-gpt-5-mini e databricks-gpt-5-nano.

Somente raciocínio

Esses modelos sempre usam raciocínio interno em suas respostas.

Use o seguinte parâmetro na sua solicitação:

  • reasoning_effort: Este parâmetro é aceito apenas por um conjunto limitado de modelos. Um esforço de raciocínio maior pode resultar em respostas mais ponderadas e precisas, mas pode aumentar a latência e o uso de tokens.
    • Para GPT-5.5 e GPT-5.5 Pro, o parâmetro reasoning_effort é definido como medium por default, mas pode ser substituído nas solicitações.
    • Para GPT-5.1 e GPT-5.2, o parâmetro reasoning_effort é definido como none por default, mas pode ser substituído em solicitações.
    • Para GPT-5, GPT-5 mini e GPT-5 nano, o parâmetro reasoning_effort é definido como minimal por default, mas pode ser substituído nas solicitações.

Modelos Claude como databricks-claude-sonnet-4-6, databricks-claude-sonnet-4-5, databricks-claude-sonnet-4, databricks-claude-opus-4-8, databricks-claude-opus-4-7, databricks-claude-opus-4-6, databricks-claude-opus-4-5 e databricks-claude-opus-4-1.

Raciocínio híbrido

Esses modelos oferecem suporte a respostas rápidas e instantâneas e a um raciocínio mais aprofundado quando necessário.

Inclua os seguintes parâmetros para usar o raciocínio híbrido:

  • thinking
  • budget_tokens: controla quantos tokens o modelo pode usar para pensamento interno. Orçamentos mais altos podem melhorar a qualidade para tarefas complexas, mas o uso acima de 32K pode variar. budget_tokens deve ser menor que max_tokens.

Modelos Gemini 3, como databricks-gemini-3-5-flash, databricks-gemini-3-1-pro, databricks-gemini-3-1-flash-lite, databricks-gemini-3-pro, e databricks-gemini-3-flash

Raciocínio híbrido

Esses modelos oferecem suporte a respostas rápidas e instantâneas e a um raciocínio mais aprofundado quando necessário.

Inclua os seguintes parâmetros para usar o raciocínio híbrido:

  • reasoning_effort: Este parâmetro é aceito por modelos Gemini 3 e superiores.
    • Para modelos Gemini 3, este parâmetro aceita os valores de "low" (default), "medium" ou "high".

Modelos Gemini 2.5 como databricks-gemini-2-5-pro e databricks-gemini-2-5-flash.

Raciocínio híbrido

Esses modelos oferecem suporte a respostas rápidas e instantâneas e a um raciocínio mais aprofundado quando necessário.

Inclua os seguintes parâmetros para usar o raciocínio híbrido:

  • thinking
  • budget_tokens: controla quantos tokens o modelo pode usar para pensamento interno. Orçamentos mais altos podem melhorar a qualidade para tarefas complexas, mas o uso acima de 32K pode variar. budget_tokens deve ser menor que max_tokens.

Modelos GPT OSS como databricks-gpt-oss-120b e databricks-gpt-oss-20b.

Somente raciocínio

Esses modelos sempre usam raciocínio interno em suas respostas.

Use o seguinte parâmetro na sua solicitação:

  • reasoning_effort: Este parâmetro é aceito apenas por um conjunto limitado de modelos. Um esforço de raciocínio maior pode resultar em respostas mais ponderadas e precisas, mas pode aumentar a latência e o uso de tokens.
    • Para modelos GPT OSS, este parâmetro aceita valores de "low", "medium" (default) ou "high".

Exemplos de consulta

Todos os modelos de raciocínio são acessados através do endpoint de conclusões de bate-papo.

Python
import os
from openai import OpenAI

client = OpenAI(
api_key=os.environ.get('YOUR_DATABRICKS_TOKEN'),
base_url=os.environ.get('YOUR_DATABRICKS_BASE_URL')
)

response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[{"role": "user", "content": "Why is the sky blue?"}],
max_tokens=20480,
extra_body={
&quot;thinking&quot;: {
&quot;type&quot;: &quot;enabled&quot;,
&quot;budget_tokens&quot;: 10240
}
}
)

msg = response.choices[0].message
reasoning = msg.content[0]["summary"][0]["text"]
answer = msg.content[1]["text"]

print("Reasoning:", reasoning)
print("Answer:", answer)

A resposta da API inclui blocos de conteúdo de raciocínio e texto:

Python
ChatCompletionMessage(
role="assistant",
content=[
{
"type": "reasoning",
"summary": [
{
"type": "summary_text",
"text": ("The question is asking about the scientific explanation for why the sky appears blue... "),
"signature": ("EqoBCkgIARABGAIiQAhCWRmlaLuPiHaF357JzGmloqLqkeBm3cHG9NFTxKMyC/9bBdBInUsE3IZk6RxWge...")
}
]
},
{
"type": "text",
"text": (
"# Why the Sky Is Blue\n\n"
"The sky appears blue because of a phenomenon called Rayleigh scattering. Here's how it works..."
)
}
],
refusal=None,
annotations=None,
audio=None,
function_call=None,
tool_calls=None
)

Gerenciar raciocínio em várias interações

Esta seção é específica para o modelo databricks-claude-sonnet-4-5.

Em conversas multietapas, somente os blocos de raciocínio associados ao último turno do assistente ou sessão de uso de ferramenta são visíveis para o modelo e contados como tokens de entrada.

Se não se desejar passar tokens de raciocínio de volta para o modelo (por exemplo, se não for necessário que ele raciocine sobre os passos anteriores), pode-se omitir o bloco de raciocínio inteiramente. Por exemplo:

Python
response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": text_content},
{"role": "user", "content": "Can you explain in a way that a 5-year-old child can understand?"}
],
max_tokens=20480,
extra_body={
&quot;thinking&quot;: {
&quot;type&quot;: &quot;enabled&quot;,
&quot;budget_tokens&quot;: 10240
}
}
)

answer = response.choices[0].message.content[1]["text"]
print("Answer:", answer)

No entanto, se você precisar que o modelo raciocine sobre seu processo de raciocínio anterior — por exemplo, se você estiver construindo experiências que exponham seu raciocínio intermediário — você deve incluir a mensagem completa e não modificada do assistente, incluindo o bloco de raciocínio da interação anterior. Veja como continuar uma conversa com a mensagem completa do assistente:

Python
assistant_message = response.choices[0].message

response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": text_content},
{"role": "user", "content": "Can you explain in a way that a 5-year-old child can understand?"},
assistant_message,
{"role": "user", "content": "Can you simplify the previous answer?"}
],
max_tokens=20480,
extra_body={
&quot;thinking&quot;: {
&quot;type&quot;: &quot;enabled&quot;,
&quot;budget_tokens&quot;: 10240
}
}
)

answer = response.choices[0].message.content[1]["text"]
print("Answer:", answer)

Como funciona um modelo de raciocínio?

Modelos de raciocínio introduzem tokens de raciocínio especiais além dos tokens de entrada e saída padrão. Esses tokens permitem que o modelo "pense" no prompt, dividindo-o e considerando diferentes maneiras de responder. Após este processo de raciocínio interno, o modelo gera sua resposta final como tokens de saída visíveis. Alguns modelos, como databricks-claude-sonnet-4-5, exibem esses tokens de raciocínio aos usuários, enquanto outros, como a série OpenAI o, os descartam e não os expõem na saída final.

Modelos compatíveis

Consulte Descobrir modelos de base para ver os modelos de base disponíveis e os tipos de interação que cada um suporta, incluindo chat, visão, áudio e vídeo e raciocínio.

Recursos adicionais