Seções da Base de Conhecimento ▾

Navegação

▸ Comece aqui Por funções

Categorias

Ferramentas 37
Glossário 12

Ferramentas

Vercel AI SDK + Gonka AI — Aplicações de IA em TypeScript por centavos

O Vercel AI SDK é o SDK mais popular para criar aplicações de IA em TypeScript e JavaScript. API unificada generateText e streamText, streaming para UI, tool calling nativo, helpers prontos para Next.js App Router — tudo o que é necessário para chatbots, agentes e pipelines de RAG na web.

O problema é o mesmo de qualquer aplicação de LLM — o preço do provedor. A interface de chat com streaming envia o histórico do diálogo a cada mensagem, o agente move contexto através de dezenas de passos. Com os preços da Anthropic ($3-15/1M) e OpenAI ($2.5-10/1M), até mesmo um projeto pessoal modesto em produção vira uma conta de centenas de dólares por mês.

JoinGonka Gateway — um endpoint compatível com OpenAI sobre a rede descentralizada Gonka. O Vercel AI SDK conecta-se a ele como a qualquer provedor compatível com OpenAI — sem forks, sem adaptadores próprios. Os mesmos modelos abertos que nos hosters comerciais — MiniMax M2.7, DeepSeek V4 Flash e GLM-5.3 Flash —, o mesmo streamText, mas a $0.0069/1M de tokens na entrada — dezenas de vezes mais barato.

Passo 1: Obtenha a chave e conecte o provedor

API-key da JoinGonka: registre-se em gate.joingonka.ai/register — no início, oferecemos 3M de tokens gratuitos. No Dashboard, crie uma chave com o prefixo jg-.

Instalação de pacotes. Para um endpoint personalizado compatível com OpenAI, o Vercel AI SDK recomenda o provedor @ai-sdk/openai-compatible:

npm install ai @ai-sdk/openai-compatible

Conexão mínima — criamos uma instância do provedor através do createOpenAICompatible e invocamos generateText:

import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
import { generateText } from 'ai';

const gonka = createOpenAICompatible({
  name: 'gonka',
  baseURL: 'https://gate.joingonka.ai/v1',
  apiKey: process.env.GONKA_API_KEY, // jg-sua-chave
});

const { text } = await generateText({
  model: gonka('MiniMaxAI/MiniMax-M2.7'),
  prompt: 'Explique o que é uma rede de inferência descentralizada',
});

console.log(text);

O parâmetro apiKey adiciona automaticamente o cabeçalho Authorization: Bearer jg-sua-chave — nenhuma configuração adicional é necessária. Guarde a chave na variável de ambiente GONKA_API_KEY (por exemplo, no .env.local), e não no código.

Alternativa — o pacote @ai-sdk/openai com a fábrica createOpenAI({ baseURL, apiKey }). Ambos os métodos funcionam; para endpoints que não pertencem à OpenAI, a documentação do AI SDK aconselha especificamente o @ai-sdk/openai-compatible — pois não carrega suposições desnecessárias específicas da OpenAI.

Passo 2: Streaming e manipulador de rota Next.js

A principal funcionalidade do Vercel AI SDK é a resposta via streaming. A função streamText começa a transmitir tokens imediatamente, e o helper toUIMessageStreamResponse() entrega o fluxo pronto diretamente de um route handler no Next.js App Router.

Manipulador de servidor app/api/chat/route.ts:

import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
import { streamText, convertToModelMessages, type UIMessage } from 'ai';

const gonka = createOpenAICompatible({
  name: 'gonka',
  baseURL: 'https://gate.joingonka.ai/v1',
  apiKey: process.env.GONKA_API_KEY,
});

// permitimos streaming de até 30 segundos
export const maxDuration = 30;

export async function POST(req: Request) {
  const { messages }: { messages: UIMessage[] } = await req.json();

  const result = streamText({
    model: gonka('MiniMaxAI/MiniMax-M2.7'),
    system: 'Você é um assistente útil. Responda de forma breve e direta.',
    messages: convertToModelMessages(messages),
    maxOutputTokens: 8192, // limite de saída através do Gateway
  });

  return result.toUIMessageStreamResponse();
}

No cliente, conecte o hook useChat de @ai-sdk/react — ele próprio faz chamadas para /api/chat e renderiza o fluxo de mensagens. O backend, por sua vez, comunica-se com a Gonka, e não com a OpenAI.

Script sem UI (Node, async-iterator pelo fluxo):

import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
import { streamText } from 'ai';

const gonka = createOpenAICompatible({
  name: 'gonka',
  baseURL: 'https://gate.joingonka.ai/v1',
  apiKey: process.env.GONKA_API_KEY,
});

const result = streamText({
  model: gonka('MiniMaxAI/MiniMax-M2.7'),
  prompt: 'Escreva um haikai sobre computação distribuída',
});

for await (const chunk of result.textStream) {
  process.stdout.write(chunk);
}

Parâmetros dos modelos. Através do Gateway, três modelos estão disponíveis: contexto de 200K tokens para o MiniMax M2.7, 380K para o DeepSeek V4 Flash e 390K para o GLM-5.3 Flash; o limite de resposta (maxOutputTokens) é de 8192 para o MiniMax M2.7 e GLM-5.3 Flash, e 32768 para o DeepSeek V4 Flash:

  • MiniMaxAI/MiniMax-M2.7 — padrão (MiniMax M2.7);
  • deepseek-ai/DeepSeek-V4-Flash-0731 (DeepSeek V4 Flash, contexto 380K);
  • zai-org/GLM-5.3-Flash (GLM-5.3 Flash, modelo de raciocínio — pensa antes de responder).

Se maxOutputTokens não for definido, para solicitações non-stream o Gateway retornará por padrão até 1500 tokens — para chats com streaming, é melhor especificar o valor explicitamente.

Comparação de custos

O Vercel AI SDK geralmente fica atrás de uma interface interativa — chat, agente, assistente no aplicativo. Cada mensagem arrasta o histórico do diálogo, cada passo do agente — o contexto das ferramentas. Portanto, o custo real não é calculado por uma única solicitação, mas pela carga de produção. Vamos comparar cenários típicos:

CenárioTokensAnthropic / OpenAIJoinGonka Gonka
Uma mensagem no chat~3K$0.01 — $0.05$0.000028
Diálogo de 20 réplicas~150K$0.50 — $2.25$0.0014
Resposta RAG (busca + geração)~5K$0.015 — $0.05$0.000048
Passo do agente com tool calling~10K$0.03 — $0.10$0.000096
10 000 solicitações por dia (prod)~50M$150 — $500$0.48

O preço da JoinGonka é de aproximadamente $0.0069 por 1M de tokens de entrada, a saída é aproximadamente três vezes mais cara. Para um aplicativo com milhares de solicitações por dia, essa é a diferença entre uma conta de centenas de dólares e uma de centavos. Os 3M de tokens gratuitos são suficientes para rodar as primeiras solicitações do projeto.

Tool calling e agentes

O Vercel AI SDK descreve ferramentas de forma declarativa através do objeto tools e do esquema zod. Os modelos da rede suportam function calling nativo, portanto, o AI SDK recebe tool_calls estruturados sem realizar parsing de respostas de texto. O parâmetro stopWhen: stepCountIs(n) permite vários passos consecutivos — o modelo chama a ferramenta, recebe o resultado e continua.

import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
import { generateText, tool, stepCountIs } from 'ai';
import { z } from 'zod';

const gonka = createOpenAICompatible({
  name: 'gonka',
  baseURL: 'https://gate.joingonka.ai/v1',
  apiKey: process.env.GONKA_API_KEY,
});

const { text } = await generateText({
  model: gonka('MiniMaxAI/MiniMax-M2.7'),
  stopWhen: stepCountIs(5),
  tools: {
    weather: tool({
      description: 'Saber a previsão do tempo na cidade',
      inputSchema: z.object({ city: z.string() }),
      execute: async ({ city }) => ({ city, tempC: 17 }),
    }),
  },
  prompt: 'Como está o tempo em Moscou? Responda em uma frase.',
});

console.log(text);

O modelo chama a ferramenta weather, recebe o resultado e forma a resposta final. Todo o ciclo custa cerca de $0.000048 através do Gonka contra $0.03-0.10 na Anthropic ou OpenAI. Para aplicações de agentes, onde cada solicitação de usuário se desdobra em 5-10 passos, a economia em produção é medida em milhares de dólares por mês.

Se estiver construindo uma aplicação de IA em Python, consulte o guia de LangChain — lá é utilizada a mesma abordagem através de uma classe compatível com OpenAI.

Vercel AI SDK + Gonka = aplicações de IA em TypeScript prontas para produção por um preço mínimo. O createOpenAICompatible conecta o Gateway sem forks, generateText e streamText funcionam normalmente, tool calling nativo e route handlers do Next.js — tudo por $0.0069/1M de tokens em vez de $2.5-15 da OpenAI e Anthropic.

Quer saber mais?

Explore outras seções ou comece a ganhar GNK agora mesmo.

Obter tokens gratuitos →