mcpField
A
ai-sdk

ai-sdk

github.com/pedronauck開発644260 回インストール1 週間前に更新
リポジトリ

ai-sdk について

ai-sdkは、AIアプリを開発するためのVercel製TypeScriptツールキットです。テキスト生成、構造化出力、ツール呼び出し、エージェント、埋め込み、UI連携に対応し、導入済みバージョンの文書とソースでAPIを確認する使い方を重視します。

主な機能

  1. 01複数のモデルプロバイダーへの統一アクセス
  2. 02テキストと構造化出力の生成
  3. 03ツール呼び出しとエージェント構築
  4. 04フレームワークのUI連携
  5. 05バージョンに合った文書の確認
  6. 06DevToolsによる呼び出しの検査

活用シーン

  1. 01TypeScriptでのAIアプリ開発
  2. 02ツール呼び出しを使ったエージェントの構築
  3. 03アプリへのモデル生成と埋め込みの追加
  4. 04生成、ツール呼び出し、トークン使用量のデバッグ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/pedronauck/skills --skill ai-sdk

インストール後、Claude Code で/ai-sdkを入力して読み込まれたか確認します。

詳細

AI SDK とは

Vercel の AI SDK(npm の ai パッケージ)は、AI アプリケーションを構築するための TypeScript ツールキットです。テキスト生成、構造化出力、ツール呼び出し、エージェント、埋め込み、フレームワークの UI 統合に対応する、モデルプロバイダー共通の API を提供します。

重要:自分の記憶を信頼しないでください

AI SDK について覚えている情報は、古くなっている可能性があります。SDK はバージョン間で頻繁に変更され、API の名前変更、削除、追加が行われます。学習データには、現在は使えない古い API、非推奨のパターン、存在しなくなったモデル ID がほぼ確実に含まれています。useChat のような UI フックは、特に頻繁に変更される API なので、クライアントコードでは十分に注意してください。

AI SDK のコードを記憶だけで書かないでください。 プロジェクトに実際にインストールされているバージョンのドキュメントとソースコードを必ず確認し、すべての API、オプション、パターンを検証してください。

バンドルされた、バージョンに対応するドキュメントを使用する

ai パッケージには、ドキュメントとソースコード一式が node_modules 内に含まれています。これらは常にインストール済みのバージョンに対応しているため、記憶している情報よりも信頼してください。

  1. ai がインストールされていることを確認します。node_modules/ai/ が存在しない場合は、プロジェクトのパッケージマネージャーを使って ai パッケージのみをインストールします(例:pnpm add ai)。プロバイダーパッケージ(例:@ai-sdk/openai)やフレームワークパッケージ(例:@ai-sdk/react)は、タスクで必要になった段階でインストールしてください。
  2. バンドルされたドキュメント node_modules/ai/docs/ とソースコード node_modules/ai/src/ を読み、grep で検索します。
  3. プロバイダーパッケージとフレームワークパッケージには、それぞれ独自のドキュメントが node_modules/@ai-sdk/<name>/docs/ にバンドルされています。
  4. バンドルされたドキュメントに情報がない場合は、https://ai-sdk.dev/docs を検索します。ドキュメントページの URL の末尾に .md を追加すると Markdown を取得でき、https://ai-sdk.dev/api/search-docs?q=your_query から検索できます。
  5. ドキュメントまたはソースコードで回答の根拠を見つけられない場合は、その旨を明記してください。推測で答えてはいけません。

AI Gateway:最も手早く始める方法

Vercel AI Gateway は、AI SDK を最も手早く使い始める方法です。プロバイダーパッケージをインストールしたり、複数の API キーを管理したりせずに、単一の API から OpenAI、Anthropic、Google などのプロバイダーのモデルにアクセスできます。

設定するには:

  1. OIDC で認証する(Vercel にデプロイする場合)か、AI Gateway API キーを取得します。
  2. AI_GATEWAY_API_KEY 環境変数を使って、アプリにキーを設定します。
  3. provider/model 形式の文字列でモデルを指定します。

正確な設定方法、認証方法、使い方については、バンドルされたガイドと AI Gateway のドキュメントをお読みください。

モデルを選ぶ

モデル ID を記憶に頼って指定してはいけません。モデルは頻繁にリリースされたり提供終了になったりします。モデルを参照するコードを書く前に、最新の一覧を取得してください。新しいモデルを見つけられるよう、一覧を省略しないでください(例:head を使わないでください)。

# All available models
curl -s https://ai-gateway.vercel.sh/v1/models | jq -r '.data[].id'

# Filter by provider (e.g. anthropic, openai, google)
curl -s https://ai-gateway.vercel.sh/v1/models | jq -r '[.data[] | select(.id | startswith("anthropic/")) | .id] | reverse | .[]'

同じモデルに複数のバージョンがある場合は、バージョン番号が最も大きいものを優先してください。

エージェントの構築と利用

ツール呼び出しのループを独自に実装するのではなく、ToolLoopAgent など、SDK に組み込まれているエージェントの抽象化を使用してください。エンドツーエンドの型安全性を確保するには、クライアントでエージェントを利用する際に、エージェントの定義から UI メッセージ型を推論します(例:useChat を使用する場合)。エージェントの利用方法はフレームワークによって異なります。package.json を確認してスタックを特定し、対応するクイックスタートに従ってください。

現在のエージェント、ツール、型安全性に関する API は、バンドルされたドキュメント(node_modules/ai/docs/、特に agents セクション)または https://ai-sdk.dev/docs で確認してください。

DevTools

AI SDK DevTools は、AI SDK の呼び出し(リクエスト、レスポンス、ツール呼び出し、トークン使用量、複数ステップの実行)を記録するため、エージェントの動作を詳しく調査できます。生成処理のデバッグには、開発中に使用してください。これは別パッケージであり、ローカル開発専用です。

設定方法については、バンドルされた DevTools のドキュメントをお読みください。

SDK を最新の状態に保つ

古いインストールは、エラーの最も一般的な原因です。インストール済みのバージョンと最新バージョンを比較してください。

  • インストール済み: node_modules/ai/package.json の version フィールド。
  • 最新: npm view ai version を実行します。

インストール済みのバージョンが最新バージョンよりメジャーバージョンで 1 つ以上古い場合は、古いリリースを使用していることをユーザーに伝え、作業を続ける前にアップグレードするよう勧めてください。移行ガイドは https://ai-sdk.dev/docs/migration-guides にあります。

変更を加えた後

プロジェクトの型チェッカーを実行してください。設定は最小限にし、デフォルトと異なるオプションだけを指定します。過剰な指定を避けるため、ドキュメントまたはソースを確認してデフォルトを把握してください。型エラーの多くは、変更された API を以前の知識で扱うことが原因です。エラーが発生した場合は、現在のドキュメントとソースを再確認してください。

コメント