EveryAPI ゲートウェイを次の環境で動かす: Vercel AI SDK
Vercel AI SDK は LLM アプリ向けの TS ファーストな SDK で、Next.js / Nuxt / SvelteKit などと深く統合されています。OpenAI Compatible で EveryAPI に接続すれば、すべての generateText / streamText / generateObject / tool calling の使い方はそのままで、モデル ID フィールドを claude-sonnet-5 / gpt-5.5 / 任意の EveryAPI モデルに切り替えるだけです。
base URL を 1 行書くだけで Vercel AI SDK を EveryAPI に向けられます
デフォルトのグローバル Base URL / 中国向け優先 Base URL: https://api.everyapi.ai/v1 / https://api-cn.everyapi.ai/v1
import { createOpenAI } from "@ai-sdk/openai"; export const everyapi = createOpenAI({ baseURL: "https://api.everyapi.ai/v1", apiKey: process.env.EVERYAPI_KEY, # .env で EVERYAPI_KEY=sk-everyapi-... を設定します}); # このプロバイダーからの呼び出しは EveryAPI エンドポイントを使用しますimport { generateText } from "ai"; const { text } = await generateText({ model: everyapi("claude-sonnet-5"), prompt: "Explain the relationship between React Server Components and the RSC payload",});ゼロから最初の呼び出しまで
- SDK をインストールする
npm i ai @ai-sdk/openai。EveryAPI には専用の Vercel AI SDK プロバイダーは不要で、@ai-sdk/openai をそのまま再利用するだけです。
- createOpenAI と env のどちらにするか決める
createOpenAI は複数のプロバイダーを並行して動かす場合(例:EveryAPI + OpenAI 直接接続を同時に)に適しています。env は純粋に EveryAPI のみを経由し、コード内で openai ヘルパーのみを使う場合に適しています。
- モデル名フィールドで上流を切り替える
everyapi("claude-sonnet-5") / openai("gpt-5.5") / everyapi("gemini-3.1-pro-low") / everyapi("MiniMax-M3") はすべて動作します——model ID 文字列はそのまま EveryAPI ゲートウェイへ渡されます。
- streamText / generateObject / tool はそのまま
Vercel AI SDK の高レベルの抽象化(ストリーミング / structured 出力 / tool calling)は EveryAPI と互換性があります——SDK のドキュメントどおりにそのまま使えます。
Vercel AI SDK × EveryAPI について
なぜ @ai-sdk/anthropic / @ai-sdk/google を使わないのですか?
ネイティブパッケージは各プロバイダー固有の機能を公開します。カスタム @ai-sdk/openai は EveryAPI 経由の OpenAI 互換経路を提供するため、アプリに必要な機能に応じて選択してください。