すべてを駆動する 仕様 。
AI-Protocol は「何をするか」と「どうするか」を分離します。V2 仕様は 3 層アーキテクチャを使用:コアプロトコル → 機能拡張 → 環境プロファイル。プロバイダーマニフェストはエンドポイント、認証、パラメータマッピング、ストリーミングデコーダー、エラーハンドリングを宣言 — すべて YAML で、すべて JSON Schema により検証されます。
V2 三層アーキテクチャ
V2 は仕様を 3 層に整理:コアプロトコル(基本チャット、ストリーミング、エラー)→ 機能拡張(ツール、ビジョン、構造化出力)→ 環境プロファイル(プロバイダー固有設定)。V2-alpha マニフェストは OpenAI、Anthropic、Gemini に対応しています。
仕様の内容
コア仕様
標準パラメータ(temperature、max_tokens)、ストリーミングイベント(PartialContentDelta、ToolCallStarted)、エラークラス(13 種類)、リトライポリシーを定義。
35+ プロバイダーマニフェスト
各 YAML ファイルはプロバイダーのエンドポイント、認証、パラメータマッピング、SSE デコーダー設定、エラー分類、レート制限ヘッダー、機能を宣言します。
モデルレジストリ
プロバイダー参照、コンテキストウィンドウ、機能フラグ、トークン単価を持つモデルインスタンス。GPT、Claude、Gemini、DeepSeek、Qwen など。
JSON Schema 検証
JSON Schema 2020-12 定義がすべてのマニフェストを検証。CI パイプラインで設定の正確性を保証。実行時サプライズゼロ。
プロバイダーマニフェスト
各プロバイダーは YAML マニフェストで記述されます。ランタイムがプロバイダーと通信するために必要なすべて — エンドポイント、認証、パラメータマッピング、ストリーミングデコーダー、エラーハンドリング、機能 — を宣言します。
ランタイムはこれらのマニフェストを読み、ユーザーリクエストをプロバイダー固有の HTTP 呼び出しに「コンパイル」します。if provider == "openai" の分岐はどこにもありません。
- エンドポイント&認証 — ベース URL、プロトコル、Bearer トークン、API キーヘッダー
- パラメータマッピング — 標準名からプロバイダー固有 JSON フィールドへ
- ストリーミングデコーダー — SSE/NDJSON フォーマット、JSONPath イベント抽出ルール
- エラー分類 — HTTP ステータスコードから 13 種類の標準エラー型へ
id: anthropic
protocol_version: "0.5.0"
endpoint:
base_url: "https://api.anthropic.com/v1"
chat_path: "/messages"
auth:
type: bearer
token_env: "ANTHROPIC_API_KEY"
parameter_mappings:
temperature: "temperature"
max_tokens: "max_tokens"
stream: "stream"
streaming:
decoder:
format: "anthropic_sse"
event_map:
- match: "$.type == 'content_block_delta'"
emit: "PartialContentDelta"
error_classification:
by_http_status:
"429": "rate_limited"
"401": "authentication"
capabilities:
streaming: true
tools: true
vision: true 仕様の位置づけ
AI-Protocol は基盤層です。ランタイムが消費し、アプリケーションがランタイムを消費します。
対応プロバイダー
各プロバイダーには、エンドポイント、認証、パラメータマッピング、ストリーミングデコーダー、エラーハンドリング、機能フラグを備えた完全な YAML マニフェストがあります。