O GPT-5.5 da OpenAI vem com uma API paga: $5 por milhão de tokens de entrada e $30 por milhão de tokens de saída. Para um projeto paralelo, hackathon ou app público gratuito, esse custo pode bloquear o desenvolvimento antes do primeiro deploy. Uma alternativa é usar o Puter.js: ele expõe o catálogo da OpenAI — GPT-5.5, GPT-5.5 Pro, variantes GPT-5.x, GPT-Image-2, DALL-E e OpenAI TTS — sem chave da OpenAI, cobrando o usuário final pela conta Puter dele. Para o desenvolvedor, a integração é gratuita e ilimitada.
Em resumo
- O Puter.js permite acessar modelos OpenAI sem chave de API, sem conta OpenAI e sem backend.
- Modelos de texto suportados incluem gpt-5.5, gpt-5.5-pro, gpt-5.4, gpt-5, gpt-5-mini, o1, o3, gpt-4.1, gpt-4o e variantes de chat/codex.
- Imagem: gpt-image-2, gpt-image-1.5, dall-e-3.
- TTS: gpt-4o-mini-tts, tts-1, tts-1-hd.
- Você adiciona uma tag
<script>, chamaputer.ai.chat()e já consegue conversar com o GPT-5.5. - Streaming, function calling, visão, geração de imagem e texto-para-fala funcionam no navegador.
- O usuário final cobre o próprio uso via conta Puter; você não paga pela API.
- Use o Apidog para comparar o mesmo prompt entre Puter e a API oficial da OpenAI antes de migrar.
Como funciona o “gratuito ilimitado”
O Puter.js muda o modelo de cobrança. Em vez de você manter uma chave da OpenAI e pagar por cada token, o usuário faz login no Puter e a chamada é cobrada do saldo dele. Novas contas Puter recebem crédito inicial, e os usuários podem recarregar se precisarem de mais uso.
Na prática, isso significa:
- Sem chave OpenAI no repositório. Você evita vazamento, rotação e gerenciamento de secrets.
- Sem limite do seu lado. Cada usuário usa a própria conta Puter.
- Sem exposição a cobranças. Você não recebe uma fatura da OpenAI por uso de terceiros.
A limitação principal: o Puter.js é focado no navegador. Um script Node.js de backend não consegue usá-lo de forma limpa sem uma sessão de usuário logado. Para backend, a API oficial da OpenAI continua sendo o caminho recomendado.
Passo 1: Instale o Puter.js
Para protótipos, sites estáticos e extensões, use a CDN:
<script src="https://js.puter.com/v2/"></script>
Essa é a instalação completa.
Se você estiver empacotando o app com Vite, Webpack ou outro bundler, use NPM:
npm install @heyputer/puter.js
import { puter } from '@heyputer/puter.js';
Use a CDN quando quiser começar rápido. Use NPM quando precisar de bundling, tree-shaking e tipos TypeScript.
Passo 2: Escolha o modelo
Puter expõe a linha GPT-5.x e modelos anteriores. Use esta tabela como ponto de partida:
| ID do modelo | Quando usar |
|---|---|
gpt-5.5-pro |
Raciocínio profundo, agentes de codificação e análise complexa |
gpt-5.5 |
Uso geral, bom equilíbrio entre custo e qualidade |
gpt-5.4-nano |
Texto rápido e barato, classificação de alto volume |
gpt-5.4-mini |
Chat em UI, tarefas intermediárias |
gpt-5.3-codex |
Tarefas específicas de código |
o3 |
Cadeias de raciocínio complexas |
o1-pro |
Planejamento agêntico em múltiplas etapas |
gpt-4.1, gpt-4o, gpt-4o-mini
|
Base estável e bem compreendida |
Para geração de imagem:
-
gpt-image-2: modelo mais recente, saída nítida e rápida. -
gpt-image-1.5,gpt-image-1,dall-e-3,dall-e-2: opções anteriores e estáveis.
Para texto-para-fala:
-
gpt-4o-mini-tts: modelo mais recente, voz mais natural. -
tts-1,tts-1-hd: TTS clássico, menor latência.
Passo 3: Faça sua primeira chamada ao GPT-5.5
Crie um arquivo index.html:
<!DOCTYPE html>
<html>
<body>
<script src="https://js.puter.com/v2/"></script>
<script>
puter.ai.chat(
"Explique WebSockets em três frases",
{ model: "gpt-5.5" }
).then(response => {
puter.print(response);
});
</script>
</body>
</html>
Abra o arquivo no navegador. O Puter gerencia a chamada, solicita login ou criação de conta Puter quando necessário e imprime a resposta na página.
Você não precisa de:
- chave de API;
- variável de ambiente;
- proxy;
- servidor backend.
Passo 4: Use streaming para respostas longas
Para interfaces de chat, streaming melhora a percepção de velocidade. Passe stream: true e consuma o iterador:
const response = await puter.ai.chat(
"Explique a teoria da relatividade em detalhes",
{
model: "gpt-5.5",
stream: true,
}
);
for await (const part of response) {
puter.print(part?.text);
}
Em uma UI real, em vez de puter.print, anexe cada part.text ao elemento da mensagem:
const messageEl = document.querySelector("#assistant-message");
for await (const part of response) {
if (part?.text) {
messageEl.textContent += part.text;
}
}
Passo 5: Envie imagens para análise
Para usar visão, passe o prompt, a URL da imagem e as opções do modelo:
puter.ai.chat(
"O que você vê nesta imagem? Descreva cores, objetos e clima.",
"https://assets.puter.site/doge.jpeg",
{ model: "gpt-5.5" }
).then(response => {
puter.print(response);
});
Casos de uso práticos:
- geração de texto alternativo;
- QA visual;
- análise de screenshots;
- OCR;
- ferramentas de acessibilidade;
- triagem de imagens enviadas por usuários.
Passo 6: Gere imagens
O método txt2img retorna um elemento <img> já carregado:
puter.ai.txt2img(
"A futuristic cityscape at night, cinematic, neon, rain",
{ model: "gpt-image-2" }
).then(imageElement => {
document.body.appendChild(imageElement);
});
Para uma UI básica com campo de prompt:
<input id="prompt" placeholder="Descreva a imagem" />
<button id="generate">Gerar</button>
<div id="output"></div>
<script src="https://js.puter.com/v2/"></script>
<script>
document.querySelector("#generate").addEventListener("click", async () => {
const prompt = document.querySelector("#prompt").value;
const output = document.querySelector("#output");
output.textContent = "Gerando...";
const image = await puter.ai.txt2img(prompt, {
model: "gpt-image-2",
});
output.textContent = "";
output.appendChild(image);
});
</script>
O usuário paga o custo da geração com o saldo da conta Puter.
Passo 7: Converta texto em fala
A linha TTS da OpenAI é exposta por txt2speech. A função retorna um elemento <audio>:
puter.ai.txt2speech(
"Bem-vindo de volta. O saldo da sua conta é de $1,247.50.",
{
provider: "openai",
model: "gpt-4o-mini-tts",
}
).then(audio => {
audio.setAttribute("controls", "");
document.body.appendChild(audio);
});
Use em:
- assistentes de voz;
- onboarding falado;
- narração de acessibilidade;
- locuções em apps;
- prévias de podcast ou conteúdo.
Passo 8: Use chamada de função
O formato segue o padrão da OpenAI. Você declara ferramentas, o modelo retorna tool_calls, e sua aplicação executa a função correspondente.
const tools = [{
type: "function",
function: {
name: "get_weather",
description: "Get the current weather for a city.",
parameters: {
type: "object",
properties: {
city: {
type: "string",
},
},
required: ["city"],
},
},
}];
const response = await puter.ai.chat(
"What's the weather in Tokyo right now?",
{
model: "gpt-5.5",
tools,
}
);
const toolCalls = response.message.tool_calls;
if (toolCalls?.length) {
console.log(
toolCalls[0].function.name,
toolCalls[0].function.arguments
);
}
Um fluxo completo normalmente fica assim:
async function get_weather({ city }) {
return {
city,
temperature: "22°C",
condition: "Cloudy",
};
}
const toolCalls = response.message.tool_calls;
if (toolCalls?.length) {
const call = toolCalls[0];
const args = JSON.parse(call.function.arguments);
if (call.function.name === "get_weather") {
const result = await get_weather(args);
console.log(result);
}
}
Como o formato espelha o da OpenAI, definições de ferramentas existentes podem ser reaproveitadas. Para testar fluxos orientados a ferramentas em cenários mais próximos de produção, veja teste de servidor MCP no Apidog.
Passo 9: Ajuste temperature e max_tokens
Passe parâmetros no objeto de opções:
const response = await puter.ai.chat(
"Tell me about Mars",
{
model: "gpt-5.5",
temperature: 0.2,
max_tokens: 200,
}
);
Regras práticas:
-
temperature: 0.0–0.3: respostas factuais, classificação, extração. -
temperature: 0.7–1.0: escrita criativa, brainstorming, variações. -
max_tokens: limite de tamanho da resposta e previsibilidade de custo para o usuário.
Para apps públicos, defina max_tokens por tipo de tarefa:
const limits = {
summary: 300,
chat: 800,
codeReview: 1200,
};
const response = await puter.ai.chat(
userPrompt,
{
model: "gpt-5.5",
max_tokens: limits.chat,
}
);
O que você ganha e o que você não ganha
O acesso gratuito e ilimitado ao GPT-5.5 via Puter é real para o desenvolvedor, mas não substitui toda a superfície da API oficial da OpenAI.
Você ganha:
- catálogo GPT-5.x, incluindo 5.5, 5.5 Pro, 5.4 mini/nano/pro e variantes codex;
- modelos OpenAI anteriores, como GPT-4.1, GPT-4o, o1 e o3;
- GPT-Image-2 e DALL-E para geração de imagens;
- OpenAI TTS, incluindo
gpt-4o-mini-tts; - streaming;
- visão;
- chamada de função;
- controle de temperatura;
-
max_tokens.
Você pode não ganhar:
- API Responses;
- redução de custo por cache de prompt;
- API Files com contexto de documento enviado;
- uso server-side sem contexto de navegador;
- headers diretos de rate limit da OpenAI;
- modo completo de saída estruturada e imposição de schema JSON da OpenAI.
Para fluxos de produção mais avançados, a API oficial da OpenAI continua sendo a melhor opção. Para apps de navegador, protótipos, ferramentas públicas e projetos estáticos, Puter costuma ser suficiente.
Quando usar Puter vs. API oficial da OpenAI
Use Puter quando:
- você está lançando um app público gratuito e não quer exposição a cobranças;
- está prototipando e não quer configurar billing na OpenAI;
- quer rodar OpenAI em site estático, hackathon ou extensão de navegador sem backend;
- seus usuários aceitam fazer login no Puter.
Use a API oficial da OpenAI quando:
- você precisa de chamadas server-side, como cron jobs, webhooks ou batch processing;
- precisa de cache de prompt para reduzir custo em prompts de sistema grandes e estáveis;
- precisa da API Responses, Files ou structured outputs completos;
- precisa de contrato/compliance, como BAA, SOC 2 ou residência de dados;
- seus usuários não aceitarão uma etapa de login no Puter.
Uma estratégia comum é começar com Puter para prototipagem e migrar para a API oficial ao encontrar um desses limites. Como o formato de mensagens é parecido, a migração tende a ser direta.
Para uma configuração paga de produção, veja Como usar a API GPT-5.5.
Testando a integração no Apidog
As chamadas do Puter rodam no navegador, então você não as executa diretamente de um test runner de backend. Um padrão prático:
- Crie uma página estática mínima com Puter.js.
- Permita passar o prompt por query string.
- Use o Apidog para validar a API upstream da OpenAI quando você migrar.
- Mantenha os ambientes
puter-prototypeeopenai-prodna mesma coleção.
Exemplo de página para protótipo:
<!DOCTYPE html>
<html>
<body>
<pre id="output">Loading...</pre>
<script src="https://js.puter.com/v2/"></script>
<script>
const params = new URLSearchParams(window.location.search);
const prompt = params.get("prompt") || "Explique HTTP em uma frase.";
const output = document.querySelector("#output");
puter.ai.chat(prompt, {
model: "gpt-5.5",
max_tokens: 300,
}).then(response => {
output.textContent = response;
}).catch(error => {
output.textContent = error.message;
});
</script>
</body>
</html>
Depois, configure dois ambientes no Apidog:
-
puter-prototype: URL localhost da página com Puter. -
openai-prod:https://api.openai.com/v1.
Baixe o Apidog e mantenha as duas rotas lado a lado. Assim, você compara comportamento, payloads e prompts antes de decidir se vale migrar para a API oficial. Para padrões mais amplos de teste de API, veja ferramenta de teste de API para engenheiros de QA.
FAQ
Isso é realmente ilimitado, ou há um limite oculto?
Ilimitado do lado do desenvolvedor. O usuário final usa o saldo da própria conta Puter. Novas contas recebem crédito inicial, e os usuários podem recarregar se quiserem mais uso.
Preciso de uma conta OpenAI?
Não. O Puter lida com a relação com a OpenAI. Você não recebe nem armazena uma chave OpenAI.
Posso usar isso em produção?
Sim, para apps baseados em navegador. A decisão prática é se seus usuários aceitam fazer login no Puter.
O GPT-5.5 via Puter tem o mesmo desempenho da API oficial?
A saída do modelo é a mesma; o Puter chama a API oficial da OpenAI em nome do usuário. A latência pode ser um pouco maior por causa do salto extra, mas o comportamento do modelo permanece equivalente.
E as economias de cache de prompt?
O Puter não expõe hoje os controles de preço de cache de prompt da OpenAI. Se você depende de um prompt de sistema grande e estável para reduzir custos, use a API oficial.
Posso usar isso em um serviço de backend?
Não de forma limpa. O Puter é focado no navegador e assume uma sessão de usuário. Serviços backend devem usar a API oficial da OpenAI. Para opções gratuitas no lado do servidor, veja Como usar a API GPT-5.5 gratuitamente.
Qual modelo devo usar por padrão?
Use gpt-5.5 para raciocínio diário, gpt-5.4-nano para classificação de alto volume, gpt-5.5-pro para tarefas difíceis e o3 quando precisar de cadeias longas de raciocínio.
Meus usuários serão cobrados muito?
Uso em estilo chat normalmente custa centavos por sessão nas taxas da OpenAI. Geração de imagem tende a ser mais cara. Para controlar custo, defina max_tokens, evite chamadas duplicadas e confirme ações caras antes de executá-las.
Posso gerar imagens gratuitamente com o Puter?
Sim, via txt2img com gpt-image-2 ou DALL-E. O usuário paga a geração com o saldo Puter. Para o guia da API oficial paga, veja Como usar a API GPT-Image-2.
Conclusão
O acesso gratuito e ilimitado ao GPT-5.5 via Puter.js é uma rota simples para apps de navegador que precisam de saída com qualidade OpenAI sem expor você a custos de API. Adicione o script, escolha o modelo e envie o prompt. O usuário cobre o próprio uso; você não gerencia chaves.
Para workloads server-side, cache de prompt, API Responses ou structured outputs completos, a API oficial da OpenAI ainda é a escolha certa. Para protótipos, hackathons, apps públicos gratuitos e sites estáticos, Puter é uma opção prática.
Construa a requisição uma vez no Apidog, compare Puter com a API oficial e escolha o caminho mais adequado para o seu projeto.

Top comments (0)