mcpField
A
ai-sdk

ai-sdk

github.com/midudev開発7.0k61 回インストール2 週間前に更新
リポジトリ

ai-sdk について

ai-sdk は、AI アプリケーションを開発する方向けの Vercel 製 TypeScript ツールキットです。生成、ツール呼び出し、エージェント、埋め込み、フレームワーク UI を統一 API で扱い、導入済みバージョンに合ったドキュメントの確認を促します。

主な機能

  1. 01モデルプロバイダー共通 API
  2. 02テキストと構造化出力の生成
  3. 03ツール呼び出しとエージェント機能
  4. 04埋め込みと UI 連携
  5. 05バージョン対応ドキュメントの案内

活用シーン

  1. 01テキスト生成アプリの構築
  2. 02構造化出力とツール呼び出しの追加
  3. 03SDK の機能を使ったエージェント作成
  4. 04導入済みバージョンに合わせた API 確認

インストール

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

$npx skills add https://github.com/midudev/autoskills --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 に依存するワークスペースパッケージ(例:apps/<name>/node_modules/ai/)を探します。プロジェクト内のどこにも ai がインストールされていない場合は、プロジェクトのパッケージマネージャーを使って、対象パッケージに ai パッケージだけ をインストールします(例:pnpm add ai --filter <pkg> または npm install ai)。プロバイダーパッケージ(例:@ai-sdk/openai)とフレームワークパッケージ(例:@ai-sdk/react)は、タスクで必要になった時点でインストールしてください。
  2. 同梱ドキュメントの node_modules/ai/docs/(または <package>/node_modules/ai/docs/)と、ソースコードの node_modules/ai/src/ を読み、検索します。
  3. プロバイダーとフレームワークの各パッケージには、それぞれのドキュメントが node_modules/@ai-sdk/<name>/docs/(または <package>/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 に組み込まれているエージェントの抽象化を使ってください。エンドツーエンドの型安全性を確保するには、クライアント側で利用する際(例:useChat)、エージェントの定義から UI メッセージ型を推論してください。エージェントの利用方法はフレームワークによって異なります。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 の記憶に起因します。エラーが発生した場合は、現在のドキュメントとソースを再確認してください。

コメント