|

Erro de decodificação Base64 no gemini-3-pro-image-preview: 6 principais causas e guia completo de correção

Nota do autor: Está recebendo o erro Base64 decoding failed 400 ao chamar o gemini-3-pro-image-preview? Este artigo analisa as 6 causas comuns a partir da mensagem de erro original, fornece exemplos corretos em Python, JavaScript e curl, além de um plano de solução de problemas em 5 etapas.

Encontrou este erro 400 ao chamar a interface gemini-3-pro-image-preview?

{
  "status_code": 400,
  "error": {
    "message": "Invalid value at 'contents[0].parts[0].inline_data.data' (TYPE_BYTES), Base64 decoding failed for \"/9j/4AAQSkZJ...\" (request id: 2026050117522815159336234238114)",
    "type": "shell_api_error",
    "code": 400
  }
}

Isso não é um problema com o serviço de API, mas sim que os dados Base64 no campo inline_data.data do corpo da requisição não podem ser decodificados corretamente pelo backend do Gemini. O /9j/4AAQSkZJ na mensagem de erro é o cabeçalho Base64 padrão de arquivos JPEG (correspondente ao binário FF D8 FF E0), o que indica que o início dos seus dados é legítimo, mas existem problemas em algum ponto da string completa que causam a falha na decodificação.

Valor central: Este artigo disseca as 6 causas comuns para este erro, fornece exemplos de código corretos para Python, JavaScript e curl, e apresenta um plano de diagnóstico rápido em 5 etapas. Se você estiver usando o serviço proxy de API APIYI (apiyi.com) para chamar o gemini-3-pro-image-preview, todas as soluções aqui contidas também se aplicam.

gemini-3-pro-image-preview-base64-decoding-failed-fix-pt-pt 图示

I. Interpretação profunda do erro Base64 decoding failed

Antes de começar a investigar, entender o significado de cada campo da mensagem de erro pode economizar 80% do seu tempo.

1.1 Interpretação campo a campo do erro

Campo Significado Direção da investigação
status_code: 400 Erro de cliente HTTP 400 Problema no formato do corpo da requisição, não falha no servidor
contents[0].parts[0] Erro localizado na 1ª parte do 1º conteúdo Verifique a primeira parte da imagem
inline_data.data Campo de dados do inline_data Este campo deve ser uma string Base64 pura
(TYPE_BYTES) Tipo de campo é array de bytes O backend do Gemini espera bytes após a decodificação
Base64 decoding failed for "/9j/..." Falha na decodificação, o início lido é /9j/ Bytes iniciais legítimos, problema no meio ou fim
request id: 2026050... ID único da requisição Forneça este ID ao entrar em contato com o suporte técnico

1.2 Por que começa com /9j/4AAQSkZJ mas ainda falha

/9j/4AAQSkZJ é o início padrão da codificação Base64 de arquivos JPEG (correspondente ao binário FF D8 FF E0 00 10 4A 46 49 46, ou seja, JPEG SOI + APP0 + identificador "JFIF"). Isso significa que:

  • ✅ Seus dados são de fato uma imagem JPEG
  • ✅ Os bytes iniciais são completamente legítimos
  • ❌ Mas a string completa apresenta caracteres ilegais ou problemas de estrutura em algum ponto

Esta característica exclui a possibilidade de "dados totalmente incorretos"; o problema é mais provável de estar na parte central dos dados, no preenchimento (padding) final ou na etapa de transmissão/escape da string.

1.3 Quais cenários disparam este erro

O gemini-3-pro-image-preview é o modelo mais recente de geração e edição de imagens do Google, e requer a passagem de inline_data nos seguintes cenários:

  • Imagem para imagem (Image-to-Image): Gerar uma nova imagem com base em uma imagem de referência
  • Edição de imagem: Fazer modificações locais na imagem original
  • Fusão de múltiplas imagens: Combinar várias imagens de referência para geração
  • Transferência de estilo: Usar uma imagem de referência como modelo de estilo

Qualquer cenário que exija a passagem de dados de imagem como entrada pode encontrar o erro Base64 decoding failed.

💡 Sugestão de diagnóstico rápido: Se você estiver usando o serviço proxy de API APIYI (apiyi.com) para o gemini-3-pro-image-preview, pode visualizar os logs completos da requisição e o request_id no painel de controle. Comparar o comprimento e o conteúdo do inline_data.data enviado na prática é muito mais eficiente do que investigar conectando-se diretamente à interface oficial.

二、 6 causas comuns para o erro "Base64 decoding failed"

Listadas por ordem de frequência, da maior para a menor. Recomendamos seguir esta ordem para diagnosticar o problema.

2.1 Causa 1: Inclusão do prefixo data URI (mais comum, cerca de 40% dos casos)

Este é o erro mais frequente. Desenvolvedores costumam copiar a string base64 diretamente de elementos HTML ou do front-end.

❌ Escrita incorreta:

{
  "inline_data": {
    "mime_type": "image/jpeg",
    "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA..."
  }
}

✅ Escrita correta:

{
  "inline_data": {
    "mime_type": "image/jpeg",
    "data": "/9j/4AAQSkZJRgABAQAA..."
  }
}

O prefixo data:image/jpeg;base64, é usado apenas em tags <img> ou no background CSS. O campo inline_data.data da API do Gemini aceita apenas a string Base64 pura.

2.2 Causa 2: A string contém quebras de linha ou caracteres de espaço (cerca de 25% dos casos)

Muitas funções de codificação Base64 inserem quebras de linha automaticamente a cada 76 caracteres (formato PEM), ou você pode ter introduzido caracteres \n ou \r ao ler um arquivo.

❌ Exemplo de problema (Python):

import base64

# Errado: usar encodebytes() insere quebras de linha
with open("photo.jpg", "rb") as f:
    data = base64.encodebytes(f.read()).decode()  # Contém \n

✅ Escrita correta:

import base64

# Correto: usar b64encode() não insere quebras de linha
with open("photo.jpg", "rb") as f:
    data = base64.b64encode(f.read()).decode("utf-8")

2.3 Causa 3: Substituição de caracteres por codificação URL (cerca de 15% dos casos)

O conjunto de caracteres Base64 inclui + e /, que podem ser codificados como %2B e %2F durante a transmissão via URL. Alguns clientes HTTP codificam URLs automaticamente, fazendo com que o backend do Gemini falhe na decodificação.

❌ Sintomas do erro:

Original: /9j/4AAQSkZJRg+abc=
Após transmissão: %2F9j%2F4AAQSkZJRg%2Babc%3D

✅ Solução:

  • Certifique-se de que o Content-Type seja application/json e não application/x-www-form-urlencoded.
  • Transmita o Base64 no corpo do JSON, não como parâmetro de consulta (query parameter) na URL.
  • Use o parâmetro json= do seu cliente HTTP (como no requests do Python) em vez de concatenar manualmente.

2.4 Causa 4: String Base64 truncada (cerca de 10% dos casos)

Se a sua imagem for grande (vários MB), ela pode ser truncada durante a transmissão devido a:

  • Interrupções de rede e retransmissões.
  • Limites de tamanho de string no cliente HTTP.
  • Truncamento por limite de tamanho de campo durante a serialização JSON.
  • Limites de tamanho de corpo (body size) em proxies intermediários.

Como investigar: Calcule o tamanho da string Base64 original e compare com o tamanho do corpo da requisição enviada. O tamanho codificado em Base64 é cerca de 4/3 do arquivo original; um JPEG de 2MB terá aproximadamente 2,67MB após a codificação.

2.5 Causa 5: Codificação Base64 URL-safe (cerca de 5% dos casos)

Funções como base64.urlsafe_b64encode() do Python ou Buffer.from(buf).toString('base64url') do Node.js geram Base64 seguro para URL, usando - e _ em vez de + e /.

❌ Erro:

data = base64.urlsafe_b64encode(image_bytes).decode()  # Contém - e _

✅ Correto:

data = base64.b64encode(image_bytes).decode("utf-8")  # Contém + e /

A API do Gemini aceita apenas Base64 padrão (RFC 4648 §4), não aceita Base64 URL-safe (RFC 4648 §5).

2.6 Causa 6: Padding ausente ou excessivo (cerca de 5% dos casos)

A string Base64 deve ter um comprimento múltiplo de 4, preenchido com = no final. O "modo estrito" de algumas bibliotecas remove o = final, causando falha no backend do Gemini.

❌ Erro:

/9j/4AAQSkZJRgABAQAAAQABAAD  ← Comprimento 27, não é múltiplo de 4

✅ Correto:

/9j/4AAQSkZJRgABAQAAAQABAAD=  ← Preenchido com =, comprimento 28

Se você usar a função padrão base64.b64encode(), o preenchimento (padding) será tratado automaticamente.


Três. 5 passos para diagnosticar rapidamente o erro "Base64 decoding failed"

gemini-3-pro-image-preview-base64-decoding-failed-fix-pt-pt 图示

Siga a ordem abaixo; a grande maioria dos erros de "Base64 decoding failed" pode ser resolvida nos 3 primeiros passos.

3.1 Passo 1: Verifique o prefixo data URI

Ação de verificação:

# Exemplo em Python
if data.startswith("data:"):
    print("⚠️ Contém prefixo data URI, é necessário remover")
    data = data.split(",", 1)[1]  # Remove data:image/...;base64,

Condição de aprovação: O campo data deve começar com /9j/ (JPEG), iVBORw0KGgo (PNG), R0lGOD (GIF), UklGR (WebP), etc., e não conter o prefixo data:.

3.2 Passo 2: Limpe quebras de linha e caracteres de espaço

Ação de verificação:

# Remove todos os caracteres de espaço
import re
data = re.sub(r"\s+", "", data)

Condição de aprovação: A string não contém \n, \r, \t ou espaços.

3.3 Passo 3: Valide a integridade do Base64

Tente decodificar localmente antes de enviar a requisição. Se falhar localmente, certamente há um problema:

import base64
try:
    decoded = base64.b64decode(data, validate=True)
    print(f"✅ Decodificação bem-sucedida, bytes originais: {len(decoded)}")
except Exception as e:
    print(f"❌ Falha na decodificação: {e}")

Se a decodificação local funcionar, mas a API ainda retornar erro, siga para o quarto passo.

3.4 Passo 4: Verifique a correção do mime_type

O mime_type deve ser consistente com o formato real da imagem. Valores válidos comuns:

Formato Real mime_type correto Assinatura Base64
JPEG image/jpeg /9j/4AAQSkZJ
PNG image/png iVBORw0KGgo
WebP image/webp UklGR
GIF image/gif R0lGOD
HEIC image/heic AAAAFGZ0eXBoZWlj

Se você declarar mime_type: image/png, mas os dados forem JPEG (começando com /9j/), o Gemini retornará um erro.

3.5 Passo 5: Verifique os limites de tamanho da imagem

A API do Gemini possui limites para o tamanho total de cada requisição:

  • Tamanho total de inline_data ≤ 20MB (antes da codificação)
  • Imagem única recomendada ≤ 7MB (antes da codificação)
  • Imagens muito grandes devem ser enviadas via File API e referenciadas posteriormente.

Se a imagem for muito grande, recomendamos comprimi-la ou redimensioná-la antes da transmissão.

🎯 Dica de diagnóstico: Se você utiliza o gemini-3-pro-image-preview através da APIYI (apiyi.com), pode usar o request_id no console para verificar o corpo completo da requisição e os logs de resposta. É muito mais fácil localizar o problema do que via conexão direta oficial. Os logs do serviço proxy de API mostrarão o tamanho real do corpo da requisição e onde ele foi truncado.

Quatro, exemplos de invocação correta do gemini-3-pro-image-preview por linguagem

Abaixo estão os exemplos mais simples e validados; basta copiar e usar.

4.1 Exemplo completo em Python (recomendado usar a biblioteca requests)

import base64
import requests

# 1. Ler e codificar a imagem
def encode_image(image_path):
    with open(image_path, "rb") as f:
        return base64.b64encode(f.read()).decode("utf-8")

# 2. Construir a requisição
api_key = "sk-your-apiyi-key"  # Substitua pela sua chave API real
base_url = "https://vip.apiyi.com/gemini"  # Endereço do serviço proxy de API da APIYI
model = "gemini-3-pro-image-preview"

image_b64 = encode_image("input.jpg")

payload = {
    "contents": [{
        "parts": [
            {
                "inline_data": {
                    "mime_type": "image/jpeg",  # Deve ser consistente com o formato real
                    "data": image_b64  # Base64 puro, sem prefixo
                }
            },
            {
                "text": "Transforme esta imagem no estilo Noite Estrelada de Van Gogh"
            }
        ]
    }]
}

# 3. Fazer a requisição
response = requests.post(
    f"{base_url}/v1beta/models/{model}:generateContent",
    headers={
        "x-goog-api-key": api_key,
        "Content-Type": "application/json"  # Crucial: formato JSON
    },
    json=payload  # Crucial: use json= em vez de data=
)

print(response.json())

4.2 Exemplo completo em JavaScript / Node.js

const fs = require('fs');
const fetch = require('node-fetch');

async function callGemini() {
  // 1. Ler e codificar a imagem (Base64 padrão, não base64url)
  const imageBuffer = fs.readFileSync('input.jpg');
  const imageB64 = imageBuffer.toString('base64'); // ✅ Não use 'base64url'

  // 2. Construir a requisição
  const apiKey = 'sk-your-apiyi-key';
  const baseUrl = 'https://vip.apiyi.com/gemini'; // Proxy da APIYI
  const model = 'gemini-3-pro-image-preview';

  const payload = {
    contents: [{
      parts: [
        {
          inline_data: {
            mime_type: 'image/jpeg',
            data: imageB64  // Base64 puro
          }
        },
        { text: 'Transforme esta imagem no estilo Noite Estrelada de Van Gogh' }
      ]
    }]
  };

  // 3. Fazer a requisição
  const response = await fetch(
    `${baseUrl}/v1beta/models/${model}:generateContent`,
    {
      method: 'POST',
      headers: {
        'x-goog-api-key': apiKey,
        'Content-Type': 'application/json'
      },
      body: JSON.stringify(payload)
    }
  );

  console.log(await response.json());
}

callGemini();

4.3 Exemplo de linha de comando com curl

# 1. Codificar a imagem e salvar em um arquivo (para evitar limites de tamanho da linha de comando)
base64 -i input.jpg -o input.b64
# Ou no macOS: base64 -w 0 input.jpg > input.b64

# 2. Construir o payload JSON
cat > payload.json <<EOF
{
  "contents": [{
    "parts": [
      {
        "inline_data": {
          "mime_type": "image/jpeg",
          "data": "$(cat input.b64)"
        }
      },
      { "text": "Transforme esta imagem no estilo Noite Estrelada de Van Gogh" }
    ]
  }]
}
EOF

# 3. Fazer a requisição
curl -X POST \
  "https://vip.apiyi.com/gemini/v1beta/models/gemini-3-pro-image-preview:generateContent" \
  -H "x-goog-api-key: sk-your-apiyi-key" \
  -H "Content-Type: application/json" \
  -d @payload.json

⚠️ Observações sobre o curl: Por padrão, o curl -d "$(base64 input.jpg)" no macOS introduz quebras de linha. Certifique-se de usar base64 -w 0 (Linux) ou base64 -i ... | tr -d '\n' (macOS) para remover as quebras de linha.


Cinco, Requisição com erro vs. Requisição correta: Comparação completa

gemini-3-pro-image-preview-base64-decoding-failed-fix-pt-pt 图示

Item de verificação Exemplo com erro Exemplo correto
Início do campo data data:image/jpeg;base64,/9j/... /9j/4AAQSkZJ...
Tratamento de quebra de linha Contém \n a cada 76 caracteres String contínua de uma linha
Conjunto de caracteres Contém - _ (URL-safe) Contém + / (padrão)
Padding final Sem = ou = extra Padding correto automático
mime_type Inconsistente com o formato real Estritamente consistente com o formato real
Cabeçalho HTTP application/x-www-form-urlencoded application/json
Método de transmissão Parâmetros de consulta URL Campo no corpo JSON
Tamanho da imagem > 20MB por imagem ≤ 7MB por imagem

VI. Vantagens de utilizar o gemini-3-pro-image-preview via APIYI

Se você ainda não conseguiu identificar o problema, utilizar o serviço proxy de API da APIYI (apiyi.com) para o gemini-3-pro-image-preview oferece várias vantagens claras:

Vantagem Descrição
Logs de requisição completos O painel permite visualizar a requisição/resposta completa associada ao request_id
Diagnóstico rápido de erros Localize a causa da falha instantaneamente através do request_id
Compatibilidade nativa Não é necessário alterar o código, basta substituir a base_url
Sem limite de concorrência Cenários de edição de imagem em lote não sofrerão limitação de taxa
Bônus de recarga Recargas de 100 USD ganham 10% de bônus (aprox. 15% de desconto em relação ao site oficial)
Pagamento local Pagamento direto via WeChat/Alipay

Para integrar a APIYI e realizar a invocação do modelo gemini-3-pro-image-preview, basta alterar duas variáveis:

# Interface oficial
base_url = "https://generativelanguage.googleapis.com"

# Alterar para o serviço proxy de API da APIYI (o restante do código permanece inalterado)
base_url = "https://vip.apiyi.com/gemini"

VII. FAQ: Problemas comuns com "Base64 decoding failed"

Q1: Por que o base64.b64decode() local funciona, mas a chamada da API retorna erro?

A causa mais provável é um problema na camada de transporte. Situações comuns:

  • O cliente HTTP codifica + como %2B (deve-se usar application/json em vez de form-urlencoded)
  • A string é truncada durante a serialização JSON (verifique os limites de tamanho do corpo da requisição)
  • Proxies ou gateways intermediários possuem limites de tamanho de corpo (como o client_max_body_size do Nginx)

Se você suspeita de problemas na rede, use o serviço proxy de API da APIYI (apiyi.com). Os logs do painel mostrarão o conteúdo real da requisição ao chegar no servidor proxy, facilitando a depuração.

Q2: Quais formatos de imagem o gemini-3-pro-image-preview suporta?

Os mime_types suportados incluem:

  • image/jpeg (recomendado, menor tamanho de arquivo)
  • image/png (para cenários com canal de transparência)
  • image/webp (equilibra qualidade e tamanho)
  • image/gif (apenas o primeiro quadro é processado)
  • image/heic / image/heif (formato de captura do iPhone)

Formatos como BMP, TIFF e SVG não são suportados e precisam ser convertidos previamente.

Q3: Quantas imagens posso enviar em uma única requisição?

O gemini-3-pro-image-preview suporta por requisição:

  • Partes inline_data: 3 a 5 imagens (dependendo do tamanho total das imagens)
  • Volume total de dados: ≤ 20 MB (soma de todos os inline_data antes da codificação)
  • Combinação sugerida: Se precisar de mais de 5 imagens de referência, utilize a File API para fazer o upload e referencie-as via file_data.

Q4: Recebo "Base64 decoding failed", mas outros modelos (como o gemini-2.5-flash) funcionam normalmente?

Isso geralmente ocorre porque o gemini-3-pro-image-preview é mais rigoroso com o formato da imagem. A validação de entrada dos novos modelos é mais estrita:

  • Modelos antigos podiam tolerar certos prefixos ou quebras de linha
  • O novo modelo valida estritamente conforme a RFC 4648 §4
  • Recomendamos reescrever seguindo o exemplo correto e simplificado da seção 4.1 deste artigo, validando item por item.

Q5: Qual base_url utilizar ao chamar via APIYI (apiyi.com)?

A base_url padrão da APIYI para o gemini-3-pro-image-preview é:

https://vip.apiyi.com/gemini

O caminho completo do endpoint é:

https://vip.apiyi.com/gemini/v1beta/models/gemini-3-pro-image-preview:generateContent

A chave API é passada via cabeçalho x-goog-api-key, exatamente como na documentação oficial do Google.

Q6: Qual a função do request_id?

O request_id (ex: 2026050117522815159336234238114) é o identificador único da sua requisição, servindo para:

  • Fornecer ao suporte técnico para localizar problemas rapidamente
  • Referenciar ao reproduzir falhas, permitindo que a equipe técnica consulte os logs completos
  • Estatísticas de erros, onde múltiplos request_ids com o mesmo erro indicam um problema sistêmico

Se você utiliza o serviço proxy da APIYI (apiyi.com), pode pesquisar o request_id diretamente no painel para ver os detalhes, sem precisar entrar em contato com o suporte.

Q7: Como comprimir imagens muito grandes?

Recomendamos usar a biblioteca Pillow no cliente para pré-compressão:

from PIL import Image
import io
import base64

def compress_image(path, max_size_kb=2048):
    img = Image.open(path)
    # Redimensiona o lado maior para 1568 (recomendado pelo Gemini)
    img.thumbnail((1568, 1568))
    buffer = io.BytesIO()
    img.save(buffer, format="JPEG", quality=85, optimize=True)
    return base64.b64encode(buffer.getvalue()).decode("utf-8")

A compressão geralmente mantém a qualidade visual enquanto reduz drasticamente o tamanho, evitando atingir o limite de 20 MB.

Q8: O que significa a mensagem de erro (TYPE_BYTES)?

TYPE_BYTES é o identificador de tipo de campo do Google Protocol Buffers, indicando que o backend do Gemini espera receber um array de bytes decodificados. Quando a decodificação Base64 falha, não é possível obter os bytes, gerando esse erro. É um aviso de validação do protobuf subjacente, não um problema de configuração.

VIII. Principais pontos (Key Takeaways)

  • Essência do erro: A string Base64 no campo inline_data.data não pode ser decodificada pelo backend do Gemini.
  • 6 causas comuns (por frequência): Prefixo data URI / quebras de linha / codificação URL / truncamento / caracteres URL-safe / erro de padding.
  • Fluxo de solução de 5 etapas: Remover prefixo → limpar espaços em branco → validação local → verificar mime_type → verificar tamanho.
  • Recomendação Python: base64.b64encode() + parâmetro json= do requests.
  • Recomendação JavaScript: Buffer.toString('base64') (não use 'base64url').
  • Recomendação curl: Primeiro grave o Base64 em um arquivo e depois use -d @file.json para referenciá-lo.
  • Vantagens da APIYI: Compatibilidade nativa de formato, logs de consulta via request_id no console e concorrência ilimitada.
  • Suporte: Mantenha o request_id à mão para uma localização rápida de problemas.

IX. Conclusão

O erro "Base64 decoding failed" no gemini-3-pro-image-preview é, em 99% dos casos, um problema na construção da requisição pelo cliente, e não uma falha no servidor. A mensagem de erro /9j/4AAQSkZJ já nos indica que os bytes iniciais são um JPEG Base64 legítimo; o problema reside no processamento intermediário dos dados — possivelmente contaminação por prefixos, quebras de linha, codificação URL, caracteres URL-safe ou truncamento.

Seguindo o fluxo de 5 etapas de solução descrito no terceiro capítulo deste artigo, a grande maioria dos problemas pode ser resolvida em menos de 5 minutos. Para cenários complexos (como arquivos que permanecem grandes após compressão, combinação de múltiplas imagens ou codificações especiais), consulte os exemplos completos nas três linguagens no quarto capítulo; basta copiar e executar.

Se você está buscando uma solução estável para integrar o gemini-3-pro-image-preview em projetos multimodais, a APIYI (apiyi.com) oferece um serviço proxy de API completo para a série de modelos Gemini, com 100% de compatibilidade de formato nativo (basta substituir a base_url), concorrência ilimitada (ideal para cenários de edição de imagem em lote), bônus de 10% em recargas de 100 dólares (equivalente a 15% de desconto em relação ao site oficial), recarga em Reais (sem necessidade de cartão de crédito internacional) e logs completos acessíveis via request_id no console (reduzindo drasticamente o custo de depuração).

🎯 Próximo passo sugerido: Siga o fluxo de 5 etapas de solução do terceiro capítulo. Se o problema persistir, anote o request_id e envie para o suporte técnico da APIYI (apiyi.com), anexando o corpo da sua requisição (removendo informações sensíveis). Geralmente, conseguimos fornecer uma solução precisa em até 1 hora.

Referências

  1. Documentação Oficial da API do Google Gemini: Compreensão e geração de imagens

    • Link: ai.google.dev/gemini-api/docs/image-generation
    • Descrição: Especificações dos campos inline_data / file_data, lista de mime_type
  2. Guia do Desenvolvedor Gemini 3: Guia de migração para novos modelos

    • Link: ai.google.dev/gemini-api/docs/gemini-3
    • Descrição: Diferenças entre o gemini-3-pro-image-preview e modelos anteriores
  3. RFC 4648 – Codificações de Dados Base16, Base32 e Base64: Especificação padrão Base64

    • Link: datatracker.ietf.org/doc/html/rfc4648
    • Descrição: Diferença entre o Base64 padrão (§4) e o Base64 seguro para URL (§5)
  4. Site oficial da APIYI: serviço proxy de API para toda a série Gemini / Claude / OpenAI

    • Link: apiyi.com
    • Descrição: Compatibilidade com formato nativo, sem limite de concorrência, recarga em reais, bônus de 10% em recargas de 100 dólares

Autor: Equipe Técnica
Última atualização: 02/05/2026
Sobre a APIYI: A APIYI (apiyi.com) é um provedor profissional de serviço proxy de API para Modelos de Linguagem Grande, oferecendo acesso estável a toda a série de modelos, incluindo gemini-3-pro-image-preview, Claude Sonnet 4.5, Claude Opus 4.7 e a série GPT. Somos totalmente compatíveis com os formatos nativos Gemini/OpenAI/Anthropic. Nosso painel de controle suporta a consulta reversa de logs de solicitação completos via request_id. Oferecemos 10% de bônus em recargas de 100 dólares (equivalente a 15% de desconto em relação ao site oficial), sem limites de concorrência e com suporte técnico ágil.

Similar Posts