Mga Seksyon ng Base ng Kaalaman ▾

Nabigasyon

▸ Magsimula rito Ayon sa papel

Mga Kategorya

Mga Gamit 32
Glosaryo 12

Mga Tool

Vercel AI SDK + Gonka AI — AI Applications sa TypeScript sa Maliit na Halaga

Vercel AI SDK ang pinakasikat na SDK para sa paggawa ng mga AI application sa TypeScript at JavaScript. Isang unified API generateText at streamText, streaming sa UI, native tool calling, ready-made helpers para sa Next.js App Router — lahat ng kailangan para sa mga chatbot, agent, at RAG-pipelines sa web.

Ang problema ay pareho sa anumang LLM application — ang presyo ng provider. Ang streaming chat interface ay nagpapadala ng dialogue history sa bawat mensahe, ang agent ay nagpapatakbo ng context sa dose-dosenang hakbang. Sa presyong $3-15/1M ng Anthropic at $2.5-10/1M ng OpenAI, kahit ang isang maliit na pet project sa production ay nagiging daan-daang dolyar na bayarin kada buwan.

JoinGonka Gateway — OpenAI-compatible endpoint sa ibabaw ng decentralized network ng Gonka. Ang Vercel AI SDK ay kumokonekta dito na parang anumang OpenAI-compatible provider — walang fork, walang custom adapters. Parehong Kimi K2.6 model, parehong streamText, pero sa presyong $0.003/1M tokens sa input — daan-daan hanggang libu-libong beses na mas mura.

Hakbang 1: Kumuha ng Susi at Ikonekta ang Provider

JoinGonka API-key: mag-register sa gate.joingonka.ai/register — sa simula, nagbibigay kami ng 10M libreng token. Sa Dashboard, lumikha ng key na may prefix na jg-.

Pag-install ng mga package. Para sa custom na OpenAI-compatible endpoint, inirerekomenda ng Vercel AI SDK ang provider na @ai-sdk/openai-compatible:

npm install ai @ai-sdk/openai-compatible

Minimum na koneksyon — gumawa ng instance ng provider sa pamamagitan ng createOpenAICompatible at tawagin ang 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-iyong-key
});

const { text } = await generateText({
  model: gonka('MiniMaxAI/MiniMax-M2.7'),
  prompt: 'Ipaliwanag kung ano ang decentralized inference network',
});

console.log(text);

Ang parameter na apiKey ay awtomatikong nagdadagdag ng header na Authorization: Bearer jg-iyong-key — hindi na kailangan ng hiwalay na setup. Panatilihin ang key sa environment variable na GONKA_API_KEY (halimbawa, sa .env.local), at hindi sa loob ng code.

Alternatibo — ang package na @ai-sdk/openai na may factory na createOpenAI({ baseURL, apiKey }). Parehong gumagana ang mga paraang ito; para sa mga endpoint na hindi pagmamay-ari ng OpenAI, inirerekomenda ng dokumentasyon ng AI SDK ang @ai-sdk/openai-compatible — hindi ito gumagamit ng mga hindi kinakailangang OpenAI-specific assumptions.

Hakbang 2: Streaming at Next.js route handler

Ang pangunahing feature ng Vercel AI SDK ay ang streaming response. Ang function na streamText ay nagsisimulang mag-stream ng mga token agad, at ang helper na toUIMessageStreamResponse() ay naglalabas ng stream nang direkta mula sa route handler sa Next.js App Router.

Server handler 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,
});

// pinapayagan ang streaming hanggang 30 segundo
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: 'Ikaw ay isang kapaki-pakinabang na assistant. Sumagot nang maikli at direkta.',
    messages: convertToModelMessages(messages),
    maxOutputTokens: 8192, // limitasyon ng output sa pamamagitan ng Gateway
  });

  return result.toUIMessageStreamResponse();
}

Sa client side, ikonekta ang hook na useChat mula sa @ai-sdk/react — ito na mismo ang tatawag sa /api/chat at mag-rrender ng message stream. Ang backend naman ay tatawag sa Gonka, hindi sa OpenAI.

Script nang walang UI (Node, async-iterator para sa stream):

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: 'Sumulat ng haiku tungkol sa distributed computing',
});

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

Model parameters. Sa pamamagitan ng Gateway, may dalawang model na available, ang context para sa pareho ay 200K tokens; ang response limit (maxOutputTokens) — hanggang 8192 kada isa:

Kung hindi nakatakda ang maxOutputTokens, sa non-stream request, ang default ng Gateway ay hanggang 1500 tokens — para sa mga streaming chat, mas mabuting ilagay ang value nang malinaw.

Paghahambing ng Gastos

Ang Vercel AI SDK ay karaniwang nasa likod ng interactive interface — chat, agent, assistant sa app. Ang bawat mensahe ay humihila ng history ng dialogue, bawat hakbang ng agent — context ng mga tool. Samakatuwid, ang totoong gastos ay hindi kinakalkula bawat request, kundi base sa load ng production. I-compare natin ang mga tipikal na scenario:

ScenarioTokensAnthropic / OpenAIJoinGonka Gonka
Isang mensahe sa chat~3K$0.01 — $0.05$0.000014
Dialogue na may 20 reply~150K$0.50 — $2.25$0.00072
RAG response (search + generation)~5K$0.015 — $0.05$0.000024
Agent step na may tool calling~10K$0.03 — $0.10$0.000048
10,000 requests kada araw (prod)~50M$150 — $500$0.24

Ang presyo ng JoinGonka — humigit-kumulang $0.003 kada 1M tokens sa input, ang output ay humigit-kumulang tatlong beses na mas mahal. Para sa isang application na may libu-libong requests kada araw, ito ang pagkakaiba sa bayarin na daan-daang dolyar at bayarin na cents lang. Ang libreng 10M tokens ay sapat na para ma-run at ma-debug nang buo ang project bago mag-production.

Pagtawag ng Tool at mga Ahente

Inilalarawan ng Vercel AI SDK ang mga tool nang declaratively sa pamamagitan ng tools object at zod schema. Sinusuportahan ng Kimi K2.6 ang native function calling, kaya nakakatanggap ang AI SDK ng structured tool_calls nang hindi na kailangang i-parse ang mga text response. Ang parameter na stopWhen: stepCountIs(n) ay nagpapahintulot ng maraming steps nang sunud-sunod — tatawagin ng model ang tool, makukuha ang resulta, at magpapatuloy.

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: 'Alamin ang panahon sa lungsod',
      inputSchema: z.object({ city: z.string() }),
      execute: async ({ city }) => ({ city, tempC: 17 }),
    }),
  },
  prompt: 'Ano ang panahon sa Moscow? Sumagot sa isang pangungusap.',
});

console.log(text);

Tinatawag ng model ang weather tool, nakukuha ang resulta, at binubuo ang pinal na sagot. Ang buong cycle ay nagkakahalaga ng humigit-kumulang $0.000048 sa pamamagitan ng Gonka kumpara sa $0.03-0.10 sa Anthropic o OpenAI. Para sa mga AI agent application kung saan ang bawat request ng user ay umaabot sa 5-10 steps, ang matitipid sa production ay maibibilang sa libu-libong dolyar bawat buwan.

Kung bumubuo ka ng AI-application sa Python, tingnan ang gabay sa LangChain — pareho lang ang approach gamit ang OpenAI-compatible class.

Vercel AI SDK + Gonka = production-ready AI-apps sa TypeScript sa napakababang halaga. Ang createOpenAICompatible ay nagkokonekta sa Gateway nang walang forks, ang generateText at streamText ay gumagana nang normal, native tool calling at Next.js route handlers — lahat sa halagang $0.003/1M tokens sa halip na $2.5-15 sa OpenAI at Anthropic.

Gusto mo pang matuto?

Galugarin ang iba pang mga seksyon o simulang kumita ng GNK ngayon.

Kumuha ng libreng 10M token →