Guias de migraçãoVindo do Vercel AI Gateway
Do Vercel AI Gateway, com os ids de modelo inalterados
O Vercel AI Gateway é o provider padrão do AI SDK: uma string de modelo como openai/gpt-6-astra chega a ele com uma chave da Vercel ou um token OIDC, servida nas credenciais de sistema da Vercel ou nas suas próprias chaves. O INFRO usa os mesmos ids vendor/model, então a alteração está no provider e nas opções, não nos nomes dos modelos.
Disponível de forma geral em todos os planos da Vercel; documentação atualizada até 2026-10-07
As contas do INFRO são self-service. O catálogo, a documentação e o contrato da API são públicos, o gateway está implantado, e tudo o que vai além da v1 está marcado para depois. Planos e teste
Situação atual
Situação atual
Um produto ativo da Vercel em todos os planos. Regras de roteamento por equipe sobre quais modelos podem ser usados foram lançadas em 2026-07-02.
A conta de quem atende a requisição
Por padrão, as credenciais de sistema da Vercel, pagas com créditos do AI Gateway. Com BYOK, a documentação da Vercel diz que uma requisição que falha nas suas credenciais é repetida nas credenciais de sistema dela e cobrada em créditos, e o gasto via BYOK não é contado nos orçamentos.
O que o INFRO não copia
O INFRO não implementa o protocolo do AI Gateway: o provider gateway do AI SDK não pode apontar para o INFRO. Você passa para um provider compatível com OpenAI, que o AI SDK já inclui.
Se sua aplicação roda na Vercel e o gateway está cumprindo seu papel, é difícil superar a integração. Fique se uma destas situações for verdadeira.
- Você se autentica com tokens OIDC da Vercel a partir dos seus deployments e não quer nenhuma chave de gateway. O INFRO aceita apenas as próprias chaves.
- Você usa Realtime, embeddings de outros provedores ou recursos exclusivos do gateway do AI SDK. O INFRO serve embeddings em conexões OpenAI, Azure OpenAI, Mistral e compatíveis com OpenAI, e não serve Realtime.
- Você quer escolher o provedor por custo, tempo até o primeiro token ou throughput (
sort). O INFRO não tem ordenação por requisição. - Você quer acesso a modelos sem ter conta em cada provedor. O INFRO só roda em contas que você tem.
- Você precisa de roteamento com retenção zero de dados ou de
inferenceRegionpor requisição. O INFRO não tem nenhum dos dois; residência de dados está no roadmap.
As alterações, uma linha cada. Tudo o que não está listado aqui continua como está.
| Vercel AI Gateway | INFRO | |
|---|---|---|
| URL base | https://ai-gateway.vercel.sh/v1, ou o provider gateway padrão do AI SDK. | https://api.infro.io/v1, por meio de createOpenAI({ baseURL }) no AI SDK. |
| Chave | AI_GATEWAY_API_KEY ou um token OIDC da Vercel. | INFRO_API_KEY, uma chave do gateway do INFRO. Suas credenciais de provedor passam para o INFRO como conexões. |
| Id do modelo | anthropic/claude-opus-5 | anthropic/claude-opus-5, sem mudanças. No AI SDK, chame infro.chat(id): a função do provider chamada diretamente aponta para a Responses API. |
| Opções | providerOptions.gateway { order, only, models, user, tags }, headers ai-reporting-*. | Uma rota para a ordem, routing.providers para only, fallbacks para modelos, metadata { user_id, tags } para usuário e tags. |
Antes · Vercel AI Gateway
import { generateText } from "ai";
const { text } = await generateText({
model: "anthropic/claude-opus-5",
prompt: "Hello",
providerOptions: {
gateway: {
order: ["vertex", "anthropic"],
user: "user_123",
tags: ["feature:chat"],
},
},
});Depois · INFRO
import { createOpenAI } from "@ai-sdk/openai";
import { generateText } from "ai";
const infro = createOpenAI({
baseURL: "https://api.infro.io/v1",
apiKey: process.env.INFRO_API_KEY,
});
const { text } = await generateText({
// A route named "chat" holds the order: Vertex, then Anthropic.
model: infro.chat("chat"),
prompt: "Hello",
headers: { "X-INFRO-User-Id": "user_123", "X-INFRO-Feature": "chat" },
});`.chat()`, não a função chamada diretamente
createOpenAI(...)(id) aponta para a Responses API da OpenAI. Use infro.chat(id) para Chat Completions, que toda conexão do INFRO serve; /v1/responses também é servido, mas precisa da conversa inteira a cada turno.
Os slugs dos provedores são diferentes
Os vertex e bedrock da Vercel são os google-vertex e aws-bedrock do INFRO em routing.providers. A ordem é definida em uma rota no console, não por requisição.
Os orçamentos veem todas as requisições
Toda requisição do INFRO roda na sua própria conta, então toda requisição conta para seus orçamentos. Um orçamento recusa no teto com 402 budget_exceeded.
Os objetos do Vercel AI Gateway comparados aos do INFRO, a partir da documentação pública do Vercel AI Gateway lida em 19 de outubro de 2026 e conferidos com o que o gateway implementa. Duas linhas dizem que o INFRO não tem nada.
| Vercel AI Gateway | O que faz lá | No INFRO |
|---|---|---|
| Chaves de API do AI Gateway e OIDCdiferente | Chaves de equipe ou tokens OIDC da Vercel; as chaves têm orçamento e validade. | Chaves do gateway com limite de gastos, lista de permissões de modelos, lista de provedores, faixas de IP e ambiente, rotacionadas ou desligadas. Sem troca de token OIDC. |
| Credenciais de sistema e BYOKdiferente | As contas de provedor da Vercel por padrão; suas credenciais opcionais, com fallback para as credenciais de sistema. | Apenas suas conexões, nunca um pool compartilhado. Cada provedor cobra você diretamente. |
| `order`, `only`diferente | Tentar provedores em ordem, ou restringir a alguns, por requisição. | Uma rota guarda a ordem e as regras de falha; routing.providers restringe por requisição. |
| `sort` por custo, TTFT, TPSnada | Escolher um provedor por requisição por custo ou velocidade. | Nada. A ordem ou os pesos de uma rota decidem. |
| Fallbacks de modelomesmo formato | models, tentados em ordem. | fallbacks, até 5. |
| Regras de roteamentomesmo formato | Regras de equipe sobre quais modelos podem ser usados. | Listas de permissão e de bloqueio por organização, projeto e chave, inclusive de fornecedores inteiros. |
| Orçamentosmesmo formato | Limites por equipe, projeto, chave e usuário, 402 quando excedidos; gasto via BYOK excluído. | Orçamentos por organização, projeto, membro, chave e cliente final, 402 antes de o provedor ser chamado; toda requisição conta. |
| Relatórios personalizadosmesmo formato | Usuário e tags por requisição; uma API de relatórios agrupada por usuário, modelo, tag e provedor. | metadata.user_id e tags em toda requisição, uso agrupado por projeto, chave, modelo, usuário e tag, e exportações. |
| Cache automático de promptsdiferente | caching: 'auto' adiciona marcadores de cache do provedor; header de afinidade de sessão. | O cache de prompts do provedor funciona como o provedor o define; cache_control chega à Anthropic como escrito em /v1/messages. O INFRO não adiciona marcadores. À parte, há um cache opcional de respostas por correspondência exata. |
| Trace Drainsmesmo formato | Traces OpenTelemetry para sua ferramenta. | Spans para seu coletor OpenTelemetry a partir do caminho da requisição. |
| Embeddings e Realtimediferente | Servido pelo gateway. | Embeddings na sua conexão OpenAI, Azure OpenAI, Mistral ou compatível com OpenAI, com failover apenas para o mesmo modelo. Realtime não é servido. |
| ZDR e região de inferêncianada | Roteamento com retenção zero de dados por requisição e inferenceRegion. | Não disponível. A retenção no provedor segue seu contrato com ele; residência de dados está no roadmap. |
Nossa leitura da documentação publicada do Vercel AI Gateway, não um teste nem um benchmark. Se lemos algo errado, avise-nos e corrigimos a linha.
O que o INFRO não faz
- Implementar o protocolo do AI Gateway ou o provider
gatewaydo AI SDK. - Aceitar tokens OIDC da Vercel.
- Servir Realtime, ou embeddings em provedores que não sejam OpenAI, Azure OpenAI, Mistral ou um endpoint compatível com OpenAI.
- Ordenar provedores por requisição por custo ou velocidade.
- Oferecer acesso a modelos sem suas próprias contas de provedor.
O que não é levado
- Logs de requisições e relatórios personalizados. Não há importador.
- Créditos do AI Gateway. Eles ficam com a Vercel.
- Orçamentos e regras de roteamento. Recrie-os como orçamentos e listas de permissões no INFRO.
Perguntas
- Preciso mudar os ids de modelo?
- Não. Os dois usam
vendor/model, por exemploanthropic/claude-opus-5. ConsulteGET /v1/modelspara ver o que suas conexões do INFRO servem. - O AI SDK funciona com o INFRO?
- Sim, por meio de
createOpenAIde@ai-sdk/openaicombaseURL: https://api.infro.io/v1, chamandoinfro.chat(modelId). - Quem me cobra pelo uso de modelos?
- Seus provedores, diretamente, nas suas próprias contas. O INFRO é uma assinatura com 0% de margem sobre o gasto com modelos.
Migre conosco ou por conta própria
O programa de migração mapeia, numa chamada, a sua configuração do Vercel AI Gateway para conexões, rotas e orçamentos do INFRO e migra o primeiro serviço com você. Seus provedores continuam cobrando você diretamente; o INFRO é uma assinatura e acrescenta 0% ao gasto com modelos.
Fontes
Cada afirmação desta página sobre o Vercel AI Gateway vem de uma destas fontes, lidas em 19 de outubro de 2026. Nada é inferido de um teste, de um benchmark ou de uma conversa.
- Vercel docs — AI Gatewaylido em 19 de out. de 2026
- Vercel docs — OpenAI Chat Completions APIlido em 19 de out. de 2026
- Vercel docs — Chat Completions advancedlido em 19 de out. de 2026
- Vercel docs — BYOKlido em 19 de out. de 2026
- Vercel docs — Provider filtering and orderinglido em 19 de out. de 2026
- Vercel docs — Budgetslido em 19 de out. de 2026
- Vercel docs — Custom reportinglido em 19 de out. de 2026
- Vercel docs — Automatic cachinglido em 19 de out. de 2026
- Vercel docs — Pricinglido em 19 de out. de 2026
- Vercel changelog — AI Gateway routing ruleslido em 19 de out. de 2026