gemini-3-pro-preview
Gemini 3 Pro Preview é o modelo de raciocínio multimodal da Google para texto, imagens, áudio, vídeo e PDF, com resultados em texto. A sua elevada capacidade de entrada, as funcionalidades de programação e os fluxos de trabalho com ferramentas suportados adequam-se à análise detalhada, à comparação de documentos e à execução de tarefas fundamentadas em evidências.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsgemini-3-pro-preview - Ailoot Ultra · Anthropic Messages
POST /v1/messagesgemini-3-pro-preview
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
Gemini 3 Pro Preview é o perfil de pré-visualização Gemini 3 Pro da Google para raciocínio multimodal e geração de texto. Pode trabalhar com texto, imagens, áudio, vídeo e documentos PDF e devolver um resultado escrito. Os usos previstos incluem análise complexa, programação avançada, desenvolvimento de algoritmos e tarefas que combinam um conjunto substancial de fontes com uma pergunta específica.
Modelo e estrutura da entrada
Gemini 3 Pro é um modelo de mistura esparsa de especialistas baseado em transformers, com suporte nativo de entradas multimodais. A sua arquitetura encaminha cada token através de um subconjunto selecionado de especialistas. Trata-se de uma distinção no desenho do modelo, em vez de um controlo do utilizador para selecionar um especialista específico ou fixar uma configuração de disponibilização.
Prepare as entradas em função das informações necessárias para a tarefa. Um documento, uma captura de ecrã e uma gravação de áudio podem fornecer evidências diferentes. Identifique o conteúdo de cada recurso e o seu contributo para a resposta. A saída continua a ser texto; compreender material visual ou falado não torna esta pré-visualização num gerador de imagens, voz ou vídeo.
Análise multimodal
Utilize imagens para perguntas sobre conteúdo visível, áudio para informações faladas ou acústicas e vídeo para uma sequência cujas alterações ao longo do tempo sejam relevantes. Mantenha o recurso efetivo junto da pergunta, em vez de o descrever apenas de memória. Ao comparar vários recursos, identifique-os claramente para que a resposta possa referir-se à fonte correta.
Por exemplo, um pedido de análise de produto pode combinar uma especificação escrita, uma captura de ecrã da interface e uma demonstração gravada. Peça uma comparação que distinga o que a especificação promete do que é visível ou audível no material fornecido. Defina o resultado pretendido em termos de conclusões, observações que as sustentam e perguntas por resolver.
Para uma tarefa com PDF, forneça o documento e identifique as secções ou afirmações a examinar. Uma pergunta útil pede uma comparação, extração ou explicação ligada à fonte, em vez de solicitar apenas um resumo geral de um ficheiro extenso.
Contexto longo e limite de saída
A especificação exata da pré-visualização indica um limite de entrada de 1 048 576 tokens e um limite de saída de 65 536 tokens. O fabricante indica janeiro de 2025 como data-limite do conhecimento; forneça evidências mais recentes quando a pergunta depender de acontecimentos ou informações posteriores. Estes limites têm funções diferentes. É possível ler um conjunto extenso de fontes para produzir uma resposta focada sem exigir que o modelo reproduza todas as partes da entrada.
Organize o material extenso para tornar clara a sua estrutura: títulos dos documentos, limites das secções, caminhos do código e a pergunta a que a saída deve responder. Mantenha as exceções e definições relevantes próximas do conteúdo a que se aplicam. Se a tarefa exigir um relatório longo, indique as suas secções e as evidências esperadas em cada uma.
Uma janela de contexto ampla não garante que todos os pormenores recebam a mesma atenção ou que todas as conclusões sejam corretas. A Google identifica também uma possível degradação ao longo de conversas com vários turnos; reveja os factos importantes das fontes e o contexto reutilizado à medida que a troca avança. Confira a resposta com as passagens ou os recursos concretos que sustentam as suas afirmações importantes.
Programação e desenvolvimento de algoritmos
Os usos previstos pelo produtor incluem programação avançada e trabalho com algoritmos. Forneça o código relevante, os pressupostos sobre o ambiente, a falha observada e o comportamento esperado. Para uma tarefa de algoritmos, defina a entrada, a saída pretendida e condições como ordenação, duplicados ou dados inválidos.
Um pedido de depuração útil associa a entrada que falha e o erro à menor região relevante do código. Peça um diagnóstico e uma alteração focada e verifique depois se a alteração proposta resolve o comportamento relatado. Código gerado e a afirmação de que deverá funcionar são diferentes de uma implementação executada e verificada.
Para uma pergunta sobre um repositório maior, utilize a capacidade de entrada para fornecer os ficheiros necessários com os caminhos claramente identificados. Indique se o resultado pretendido é uma explicação, uma proposta de alteração ou uma análise de alternativas, para lhe dar uma finalidade concreta.
Ferramentas, fontes e resultados estruturados
A especificação do produtor para esta pré-visualização suporta chamadas de funções, execução de código, pesquisa em ficheiros, fundamentação em pesquisa e contexto de URL. Estas funcionalidades têm papéis distintos. Uma chamada de função descreve uma operação a executar por uma aplicação; o resultado da ferramenta fornece depois evidências para a etapa seguinte do modelo. A execução de código é um fluxo de trabalho com ferramentas, em vez de uma garantia de que qualquer código de aplicação gerado já foi testado.
A fundamentação em pesquisa e o contexto de URL proporcionam fluxos de trabalho orientados para fontes, enquanto a pesquisa em ficheiros utiliza uma coleção de ficheiros preparada. Mantenha os resultados das ferramentas e as associações às fontes junto da resposta, para permitir examinar uma conclusão. Segundo a sua especificação, este perfil não suporta utilização do computador nem fundamentação em Maps.
O suporte de saída estruturada permite exprimir um resultado segundo um esquema definido. Especifique os campos e o seu significado antes da geração e reveja tanto o conteúdo como o formato. Mesmo um objeto estruturado válido exige verificação factual e específica da tarefa.
Raciocínio, reutilização e limites entre edições
Esta pré-visualização suporta o modo de raciocínio. Utilize uma tarefa clara, evidências relevantes e restrições explícitas para trabalho que exija vários passos de raciocínio. O resultado deve explicar os pressupostos e a conclusão útil; raciocínio oculto ou a existência de um modo de raciocínio não constituem, por si só, verificação.
O produtor indica também suporte de cache e processamento em lote. Estas são funcionalidades de processamento distintas das capacidades de conteúdo do modelo, e a sua presença não demonstra que um pedido concreto tenha usado cache nem que um resultado em lote seja correto.
Mantenha Gemini 3 Pro Preview distinto de Gemini 3.1 Pro Preview, Gemini 3 Pro Image e dos perfis de áudio ou Live. A saída desta pré-visualização é texto e a sua especificação não inclui geração de imagens, geração de áudio nem funcionamento Live. Avalie a resposta, o código ou o resultado estruturado devolvido em relação ao conjunto de fontes fornecido e à tarefa pretendida.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions gemini-3-pro-preview
gemini-3-pro-previewIntrodução
Gemini 3 Pro Preview é o modelo de raciocínio multimodal da Google para texto, imagens, áudio, vídeo e PDF, com resultados em texto. A sua elevada capacidade de entrada, as funcionalidades de programação e os fluxos de trabalho com ferramentas suportados adequam-se à análise detalhada, à comparação de documentos e à execução de tarefas fundamentadas em evidências.
- Entradas aceites
- Texto
- Resultados
- Texto
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Entrada
text- Saída
text- Formato de saída
- json ou SSE
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites gemini-3-pro-preview | Predefinição— |
Campomessages | Tipomessage[] | RequisitoObrigatório | Valores e limites Número mínimo de elementos: 1 | Predefinição— |
Campomessages[].role | Tipostring | RequisitoObrigatório | Valores e limites Depende do modelo | Predefinição— |
Campomessages[].content | Tipostring | RequisitoOpcional | Valores e limites Aplica-se quando: Conversação textual | Predefinição— |
Campostream | Tipoboolean | RequisitoOpcional | Valores e limites | Predefiniçãofalse |
Combinações de materiais de entrada
Texto · Texto UTF8
messages[].content
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetrocontent_type | Contratoapplication/json |
Parâmetrorequired | Contratomodel, messages |
Parâmetromaterial_types | Contratotext |
Parâmetromessages | ContratoLista de mensagens com estrutura role/content |
Parâmetrofile_material | ContratoDocumento UTF-8 real inserido como texto literal; nenhum ID de ficheiro inferido |
Parâmetrooptional_controls | Contratostream |
Parâmetrocontrol_scope | ContratoConversação textual; stream é um booleano e tem false como predefinição. |
Parâmetrooutput_modalities | Contratotext |
Parâmetrohosted_operations | Contratofalse |
Parâmetromultimodal_input_binding | Contratonull |
Aliases do método: /chat/completions
Ciclo de vida: synchronous_or_streamed
Envie o ID exato do modelo com messages.
O comprimento do contexto não é um limite de saída.
Um ficheiro de texto pode fornecer texto literal; as entradas de imagem/áudio/objeto de ficheiro exigem uma associação exata.
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Não especificado Quando o modo rápido está selecionado
- Modo flex
- Não especificado Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Não especificado Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
- Preços da cache explícita
- Não ativado Quando é pedida cache explícita
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.004 / 1K tokens Saída · Tokens de saída $0.024 / 1K tokens Entrada · Leitura da cache $0 / 1K tokens Entrada · Escrita na cache $0 / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"gemini-3-pro-preview","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="gemini-3-pro-preview", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
Receber e guardar os resultados
Ailoot Ultra · OpenAI Chat
json ou SSE
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Conserve cada opção com o conteúdo, as chamadas de ferramentas e o raciocínio. Em SSE, junte os deltas por índice de opção e ferramenta e mantenha o motivo final de conclusão e os dados de utilização.
Se for necessário verificar a resposta original
Conserve os ID e cabeçalhos de pedido/resposta. Não é fornecido um URL genérico para obter uma tarefa textual.
Campos da resposta
| Campo | Tipo |
|---|---|
Campochoices[].index | Tipointeger |
Campochoices[].message.content | Tipostring|null |
Campochoices[].message.tool_calls | Tipotool_call[] |
Campochoices[].message.reasoning_content | Tipostring |
Campochoices[].message.reasoning_details | Tipoobject|array |
Campochoices[].finish_reason | Tipostring|null |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra gemini-3-pro-preview
Aliases dos caminhos dos métodos
/chat/completions
IDs de chamada relacionados
Ailoot Ultra · Anthropic Messages POST /v1/messages gemini-3-pro-preview
gemini-3-pro-previewIntrodução
Gemini 3 Pro Preview é o modelo de raciocínio multimodal da Google para texto, imagens, áudio, vídeo e PDF, com resultados em texto. A sua elevada capacidade de entrada, as funcionalidades de programação e os fluxos de trabalho com ferramentas suportados adequam-se à análise detalhada, à comparação de documentos e à execução de tarefas fundamentadas em evidências.
- Entradas aceites
- Texto
- Resultados
- json · sse
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Entrada
text- Saída
json,sse- Formato de saída
- JSON ou SSE
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites gemini-3-pro-preview | Predefinição— |
Campomessages | Tipomessage[] | RequisitoObrigatório | Valores e limites | Predefinição— |
Campomessages[].role | Tipostring | RequisitoObrigatório | Valores e limites user, assistant | Predefinição— |
Campomessages[].content | Tipostring | RequisitoObrigatório | Valores e limites | Predefinição— |
Campomax_tokens | Tipointeger | RequisitoObrigatório | Valores e limites | Predefinição— |
Campostream | Tipoboolean | RequisitoOpcional | Valores e limites | Predefiniçãofalse |
Combinações de materiais de entrada
Texto · Texto UTF-8
Cadeia de caracteres messages[].content
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetrocontent_type | Contratoapplication/json |
Parâmetrorequired | Contratomodel, messages, max_tokens |
Parâmetrooptional_controls | Contratostream |
Parâmetromaterial_types | Contratotext |
Parâmetrotext_file_material | ContratoLeia o documento UTF-8 real e coloque o texto na entrada indicada ou na cadeia de conteúdo da mensagem. |
Ciclo de vida: synchronous_or_streamed
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Não especificado Quando o modo rápido está selecionado
- Modo flex
- Não especificado Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Não especificado Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
- Preços da cache explícita
- Não ativado Quando é pedida cache explícita
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.004 / 1K tokens Saída · Tokens de saída $0.024 / 1K tokens Entrada · Leitura da cache $0 / 1K tokens Entrada · Escrita na cache $0 / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot Ultra · Anthropic Messages
{
"model": "gemini-3-pro-preview",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3-pro-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3-pro-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Receber e guardar os resultados
Ailoot Ultra · Anthropic Messages
JSON ou SSE
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Conserve todos os blocos de conteúdo, as assinaturas de raciocínio e os ID reais de utilização de ferramentas. Junte todos os deltas de blocos SSE; o primeiro bloco de texto não é a saída completa.
Se for necessário verificar a resposta original
Conserve os ID e cabeçalhos de pedido/resposta. Não é fornecido um URL genérico para obter uma tarefa textual.
Campos da resposta
| Campo | Tipo |
|---|---|
Campoid | Tipostring |
Campomodel | Tipostring |
Campocontent[] | Tipotext|thinking|tool_use|other content block |
Campostop_reason | Tipostring|null |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra gemini-3-pro-preview
Aliases dos caminhos dos métodos
/chat/completions
IDs de chamada relacionados
FAQ · gemini-3-pro-preview
- Que entradas e resultados estão disponíveis?
POST /v1/chat/completions·gemini-3-pro-preview:text→textPOST /v1/messages·gemini-3-pro-preview:text→json,sse- Que campos utiliza o pedido?
POST /v1/chat/completions·gemini-3-pro-preview:model,messages,streamPOST /v1/messages·gemini-3-pro-preview:model,messages,max_tokens,stream- Que limites se aplicam?
POST /v1/chat/completions·gemini-3-pro-preview:messages.min_items:1