powered by TechFeed
表示モード
主要ニュース

Vercelの「AI SDK 7」リリース — 中断・再起動を乗り越えて実行を再開できる耐久性エージェントで、AIの本番運用は変わるか

6月25日、Vercelが「AI SDK 7 is now available」と題した記事を公開した。週間ダウンロード数1,600万回以上を誇るVercelのAI SDKがメジャーバージョン7へ更新された。TypeScript製のこのSDKは、あらゆるモデルプロバイダーに対応したAIアプリケーション開発の共通レイヤーとして機能している。

6月25日、Vercelが「AI SDK 7 is now available」と題した記事を公開した。週間ダウンロード数1,600万回以上を誇るVercelのAI SDKがメジャーバージョン7へ更新された。TypeScript製のこのSDKは、あらゆるモデルプロバイダーに対応したAIアプリケーション開発の共通レイヤーとして機能している。

AIエージェントを「動くデモ」から「本番で壊れない実装」へと引き上げることは、依然として業界全体の課題だ。プロセス再起動やデプロイのたびに実行状態が消える問題、ツール呼び出しへの承認フローの組み込みにくさ、複数プロバイダー間での設定の分散——こうした課題に正面から向き合った機能群が、AI SDK 7の主な内容である。開発・実行・統合・観測・マルチモーダルの5領域にわたって機能が追加されており、本バージョンは「エージェントの本番運用」を明確なテーマに据えたリリースとなっている。

pnpm add ai@latest

AI SDK 6からのアップグレードは以下のコマンドで自動移行できる:

npx @ai-sdk/codemod v7

目玉機能:WorkflowAgentによる耐久性のあるエージェント実行

エンジニアが最も注目すべきのはWorkflowAgentだ。

複数ステップにまたがるエージェント実行や、人間の承認待ちを伴うワークフローでは、プロセス再起動やデプロイが発生した場合、これまでは最初からやり直しになっていた。@ai-sdk/workflowパッケージとして提供されるWorkflowAgentは、プロセス再起動・デプロイ・中断・遅延承認を乗り越えて実行を再開できる耐久性のある(durable)エージェントを実現する。

WorkflowAgentは以下をサポートする:

  • ワークフローベースのストリーミング、ツール、承認、コールバック
  • ステップ間をまたいだモデルのシリアライズ
  • 実行状態の共有に使える型付きランタイムコンテキスト
  • ステップ番号・前回結果・所要時間・成否を含む詳細なコールバックデータ

ツール承認とHMACによる改ざん防止

AI SDK 7ではツール承認(Tool Approvals)ToolLoopAgentgenerateTextstreamTextの各APIに統合された。承認の種類は3パターン:

  • 特定ツールへのシンプルなユーザー承認
  • 自動承認・自動拒否・ユーザー転送を判断する承認関数
  • 汎用のキャッチオール承認関数
const agent = new ToolLoopAgent({
  model,
  tools: { weather: weatherTool },
  toolApproval: {
    weather: 'user-approval',
  },
});

高リスクなワークフロー向けには、opt-inのHMAC(Hash-based Message Authentication Code)署名によるツール承認が追加された。HMACはメッセージの完全性と送信元の正当性を検証するための共通鍵署名方式であり、これを用いることで承認の偽造を防ぐとともに、ツール入力とポリシーの再検証によってリプレイ攻撃への耐性も強化されている。


開発者体験の向上:推論制御・ツールコンテキスト・タイムアウト

推論制御の統一API

各プロバイダーで異なっていたモデルの推論設定(thinking / reasoning)を、reasoningオプションひとつで制御できるようになった:

const result = await generateText({
  model,
  prompt,
  reasoning: 'high',
});

ツールコンテキストとランタイムコンテキスト

サードパーティ製ツールにAPIキー等を渡す際、これまでは実装上の工夫が必要だった。AI SDK 7では型付きのツールコンテキストが追加され、各ツールにスコープを絞った形でコンテキストを渡せる。ツールが自分に必要な情報にしかアクセスできないため、セキュリティ上の設計が明確になる。

より複雑なエージェントループ向けには、ステップ準備関数やツール承認関数をまたいで利用できるランタイムコンテキストも導入された。

タイムアウト設定

エージェントがストールする原因はシンプルなリクエストと異なり多岐にわたる。SDK 7ではタイムアウトが以下の粒度で設定可能になった:

const result = await generateText({
  model,
  timeout: {
    totalMs: 60000,   // 全体で60秒
    stepMs: 10000,    // ステップごとに10秒
    chunkMs: 2000,    // チャンク無受信で2秒
    toolMs: 5000,     // ツールのデフォルト
    tools: {
      weatherMs: 3000,
      slowApiMs: 10000,
    },
  },
  prompt: 'What is the weather in San Francisco?',
});

HarnessAgentでClaude CodeやCodexを統一インターフェースで実行

HarnessAgentは実験的な機能として追加された。Claude Code・Codex・Piといった既存のエージェントハーネスを、統一されたAPIで呼び出せる。サンドボックス・カスタムインストラクション・スキル・ツールをそれぞれ独立して設定でき、ハーネスを切り替えても統合レイヤーを変更する必要がない。

const agent = new HarnessAgent({
  harness: claudeCode,
  sandbox: createVercelSandbox({ runtime: 'node24', ports: [4000] }),
  instructions: 'You are a careful coding assistant. Prefer small changes and explain tradeoffs.',
  skills: [{ name: 'review-github-pr', ... }],
  tools: { readGitHubIssue, readGitHubPullRequest },
});

HarnessAgentはAI SDKのAgentインターフェースを実装しているため、useChat()や新設のTUI(ターミナルUI)とも追加の配線なしで動作する。


その他の追加機能

  • ファイル・スキルのアップロードAPI:ここでいう「スキル」とは、エージェントに与える再利用可能な能力定義(指示・ツールセット等のまとまり)を指す。PDFや画像、およびこのスキル定義を毎回インラインで送る代わりに、一度アップロードして参照を使い回せるuploadFile/uploadSkill APIを追加。帯域節約と推論の高速化が目的
  • MCP Apps:MCP(Model Context Protocol)はAnthropic主導で策定されたオープン仕様で、モデルと外部ツール・リソースを接続するための標準プロトコルだ。AI SDK 7のMCP Apps機能は、MCPサーバーがモデルに見せるツールとアプリ専用ツールを分離し、サンドボックスiframe内でUIをレンダリングできる機能を追加する
  • テレメトリの刷新:アプリ起動時に一度登録するだけで全AI SDK関数のトレースが有効になる。Datadog・Langfuse・Braintrust・Sentry等のオブザーバビリティサービスとのインテグレーションも用意
  • TUI(ターミナルUI):フルアプリを書かずにエージェントを素早くテストできるターミナルUI用パッケージ@ai-sdk/tuiを追加
  • プロバイダー非依存のリアルタイム音声・動画生成サポート

「AIの本番運用は変わるか」という問いに対して、AI SDK 7が示す答えは「段階的に、着実に」だ。耐久性のある実行・細粒度なタイムアウト・HMAC署名付き承認といった機能は、エージェントを信頼性の高いシステムとして扱うための基盤を整えるものであり、PoC止まりだった実装を本番に持ち込むための現実的な一歩といえる。一方でWorkflowAgentやHarnessAgentは実験的ステータスの機能も含んでおり、APIの安定性は引き続き注視が必要だ。

詳細はAI SDK 7 is now availableを参照していただきたい。