mcpField
A
AISIX AI Gateway

AISIX AI Gateway

ローカル
docs.api7.aiAI・エージェント207今日更新

AISIX AI Gateway について

AISIX AI Gatewayは、LLMとエージェントのトラフィックを管理するプラットフォームチーム向けの、オープンソースのRust製ゲートウェイです。モデルプロバイダー共通のAPIに加え、ルーティング、ガバナンス、可観測性、MCPおよびA2Aゲートウェイ機能を提供します。

主な機能

  1. 01OpenAIおよびAnthropic互換API
  2. 02モデルルーティングとフェイルオーバー
  3. 03レート制限、ガードレール、キャッシュ
  4. 04メトリクス、ログ、トレース出力
  5. 05宣言型設定とリロード
  6. 06MCPサーバーおよびA2Aエージェントゲートウェイ

活用シーン

  1. 01複数のモデルプロバイダーへのリクエスト振り分け
  2. 02LLMのリクエストと応答へのポリシー適用
  3. 03単一ゲートウェイ経由で上流MCPサーバーを公開

MCP 対応

AISIXは登録済みの上流MCPサーバーを`/mcp`で中継し、ゲートウェイ管理の認証情報、名前空間付きツール、呼び出し元ごとのアクセス制御を提供します。OpenAPI記述に基づき、REST APIをMCPツールとして公開する機能もあります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"api7-aisix": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/api7/aisix:1.3.0"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/api7/aisix:1.3.0

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/api7/aisix:1.3.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

AISIX OSS

LLM と AI エージェントのための、オープンソースの Rust ネイティブ AI ゲートウェイ

あらゆるモデルの手前に、OpenAI 互換 API を 1 つ。 すべての LLM と AI エージェントのトラフィックを、単一の制御ポイントからルーティング、ガバナンス、保護、キャッシュ、監視できます。リクエストごとのオーバーヘッドを抑えた単一の静的バイナリとして提供されます。お使いのインフラストラクチャで、永久に無料で実行できます。

Apache APISIX のオリジナル開発者が構築しました。

ライセンス:Apache 2.0 Rust で構築 ドキュメント Discord ウェブサイト

無料で始める · ドキュメント · クイックスタート · AISIX Enterprise と AISIX Cloud · ロードマップ


AISIX OSS のアーキテクチャ — OpenAI または Anthropic 互換 API が、OpenAI、Anthropic、Gemini/Vertex、Bedrock、Azure OpenAI、DeepSeek の手前にあり、その間に API キー認証、レートとトークンの制限、ガードレール、キャッシュ、ルーティングとフェイルオーバー、可観測性を備えています

AISIX OSS は、Rust ネイティブの AISIX ゲートウェイを中心に構築されたオープンソース製品です。このゲートウェイは、あらゆる LLM プロバイダー(OpenAI、Anthropic、Google Gemini、AWS Bedrock、Azure OpenAI、DeepSeek、および OpenAI 互換エンドポイント)の手前に、単一の OpenAI 互換 API を提供します。プラットフォームチームは、LLM トラフィックのルーティング、ガバナンス、保護、監視を 1 か所で行えます。SSE ストリーミングを標準でサポートし、ゲートウェイのオーバーヘッドも抑えています。

単一の静的バイナリとして実行でき、コールドスタートが速く、ロックフリーの設定読み込みと、再起動不要のホット設定リロードを備えています。resources.yaml でリソースを宣言して SIGHUP でリロードするか、ゲートウェイを etcd に接続して複数レプリカのクラスターを構成できます。ゲートウェイをお使いのインフラストラクチャで実行するか、AISIX Enterprise または AISIX Cloud に接続して、チームのガバナンス、予算管理、監査、ダッシュボードを備えた一元管理を利用できます。

**AISIX OSS(このリポジトリ)**はオープンソース製品です。宣言型設定または etcd を使用し、コントロールプレーンなしで実行できます。同じゲートウェイバイナリが商用製品のデータプレーンとして機能します。AISIX Enterprise ではお客様がコントロールプレーンをホストし、AISIX Cloud では API7 がホストします。いずれの製品でも、ゲートウェイはお客様の環境で実行され、プロバイダーを直接呼び出します。実際の AI トラフィックがどちらのコントロールプレーンを通過することもありません。プロキシ API は、すべての製品で共通です。 AISIX Enterprise または AISIX Cloud についてお問い合わせください →

⚡ クイックスタート

コンテナは1つ。コントロールプレーンもデータベースも設定ストアも不要です。ゲートウェイは、すべての動的リソースを1つの宣言型 resources.yaml から読み込みます。

# config.yaml
resources_file: /etc/aisix/resources.yaml
proxy:
  addr: "0.0.0.0:3000"
admin:
  enabled: false          # a declarative gateway needs no admin listener
observability:
  metrics:
    prometheus:
      enabled: true
      addr: "0.0.0.0:9090"
# resources.yaml
_format_version: "1"

provider_keys:
  - display_name: openai-main
    provider: openai
    api_key: ${OPENAI_API_KEY}        # interpolated from the environment

models:
  - display_name: my-model
    provider: openai
    model_name: gpt-4o-mini
    provider_key: openai-main

api_keys:
  - display_name: local-dev
    key_env: CALLER_API_KEY           # hashed at load; the plaintext is never stored
    allowed_models: ["my-model"]
export OPENAI_API_KEY="YOUR_PROVIDER_KEY"
export CALLER_API_KEY="YOUR_CALLER_KEY"

docker run -d --name aisix \
  -v "$(pwd)/config.yaml:/etc/aisix/config.yaml:ro" \
  -v "$(pwd)/resources.yaml:/etc/aisix/resources.yaml:ro" \
  -e OPENAI_API_KEY -e CALLER_API_KEY \
  -p 3000:3000 -p 127.0.0.1:9090:9090 \
  ghcr.io/api7/aisix:latest        # proxy → :3000, metrics + status → :9090
#                                  ^ the metrics/status listener is unauthenticated;
#                                    keep it on loopback or a private network

あとは OpenAI とまったく同じように、ゲートウェイを呼び出します。

curl http://localhost:3000/v1/chat/completions \
  -H "Authorization: Bearer $CALLER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"my-model","messages":[{"role":"user","content":"hello"}]}'

resources.yaml を編集し、SIGHUP(docker kill -s HUP aisix)を送信すると、再起動せずに変更が適用されます。無効なファイルは全体が拒否され、最後に正常だった設定での処理が続行されます。起動前に aisix validate --resources resources.yaml でファイルを検証できます。

詳しい手順はゲートウェイのクイックスタートをご覧ください。各フィールドについてはリソースファイルのリファレンスをご覧ください。複数レプリカのクラスターでは、代わりにゲートウェイを etcd に接続してください。resources_file と etcd は相互に排他的です。

✨ AISIX が選ばれる理由

  • 1つの API ですべてのモデルに対応。 OpenAI または Anthropic のワイヤ形式でリクエストを受け付け、ゲートウェイが各モデルの接続先プロバイダーに合わせて変換します。OpenAI または Claude の SDK を1つの base_url に接続すれば、コードを変更せずにモデルを切り替えられます。
  • Rust 製の本格的なゲートウェイ。 単一の静的バイナリで、コールドスタートが速く、ホットパスでロックフリーの設定読み込みを行い、ネイティブストリーミングに対応します。
  • オープンソースで、永久に無料。 Apache-2.0 ライセンスで、独自のインフラストラクチャ上で動作するように構築されています。コントロールプレーンとダッシュボードによる集中管理が必要な場合は、AISIX Enterprise または AISIX Cloud をお選びください。
  • 本番環境向けの制御機能を標準搭載。 ルーティングとフェイルオーバー、レート制限、ガードレール、キャッシュ、オブザーバビリティがすぐに利用できます。(予算と支出上限は AISIX Enterprise および AISIX Cloud の機能です。ゲートウェイはコントロールプレーンの決定を適用します。)

🧩 機能 — 今すぐ利用可能

実際のゲートウェイプロセスに対して実行される、183個のエンドツーエンドシナリオファイル(496ケース)で検証されています。

  • OpenAI 互換プロキシ(:3000)— chat/completions、completions、responses、 embeddings、rerank、images/{generations,edits}、audio/{speech,transcriptions,translations}、 videos(送信 → ポーリング → 取得)、files、batches、fine_tuning/jobs、realtime、 GET /v1/models に加え、ルートレベルの /passthrough/:provider/* エスケープハッチを提供します。ネイティブな SSE ストリーミング、 ツール/関数呼び出し、JSON モード、ビジョン/マルチモーダル入力、推論コンテンツのサポートに対応しています。
  • Anthropic Messages API — POST /v1/messages をファーストクラスのルートとして提供し、 設定済みのあらゆるアップストリームで動作します。モデルが Anthropic 以外のプロバイダーを参照している場合、 リクエストとレスポンス(ストリーミングを含む)を双方向に変換します。
  • ルーティングとフェイルオーバー — 6 つの戦略を備えた仮想モデル/ルーティングモデル:round_robin (滑らかな重み付きラウンドロビン)、consistent_hash(ヘッダー/ Cookie/API キー/クライアント IP をキーとするセッションアフィニティ)、failover のほか、 メトリクスベースの least_cost、least_latency、least_busy。ターゲットごとの priority 層(アクティブ/バックアップのプール)、 リトライ予算、クールダウン、タグ条件付きターゲット、試行ごとのタイムアウトに対応しています。
  • アンサンブルモデル — 1 つのリクエストを複数のモデルに同時に送信し、その後、ジャッジモデルが 成功レスポンスの最低数を満たしたうえで、単一の回答にまとめます。
  • セマンティックルーティング — 各リクエストの意味に基づいて振り分ける仮想モデルです。プロンプトを埋め込み、 各ルートに設定された発話例とのスコアを算出し、最適な一致先(またはデフォルト)にルーティングします。 セマンティックルーティングのドキュメントを参照してください。
  • レート制限と同時実行制御 — RPS/RPM/RPH/RPD、TPM/TPD、同時実行数の上限を設定でき、 呼び出し元キー、モデル、ポリシースコープ(api_key/model/team/member/team_member)をまたいで AND 条件で適用されます。 カウンターはデフォルトではプロセスごとに管理され、Redis バックエンドを使用するとレプリカ間で共有されます。
  • ガードレール — 入力と出力に対するコンテンツポリシーの適用を、プロセス内またはプロバイダー経由で実行します。キーワード/正規表現、 組み込みの PII 検出と編集、Presidio、Lakera、OpenAI Moderation、 AWS Bedrock Guardrails、Azure AI Content Safety(Prompt Shield + テキストモデレーション)、Alibaba Cloud の 2 つのサービスに対応しています。ブロック時は 422 content_filter を返し、 モニターモードではブロックせずに発生したはずの内容を記録します。
  • キャッシュ — ポリシーごとの TTL とモデル/キーのスコープマッチャーを備えた完全一致レスポンスキャッシュです。 メモリおよび Redis バックエンドに対応し、ヒットごとにコスト削減のテレメトリーを記録します。これとは別に、自動プロンプトキャッシュ を Anthropic の直接モデルごとに有効化すると、キャッシュブレークポイントを挿入できます。これにより、呼び出し元がリクエストを変更せずにプロバイダー側のプロンプト割引を受けられます。
  • MCP ゲートウェイ — 登録済みのアップストリーム MCP サーバーを /mcp で公開し、ゲートウェイで保持する認証情報、サーバーごとのツール名前空間、 呼び出し元ごとのアクセス制御を提供します。下流セッションなしで、2025-03-26 からステートレスな 2026-07-28 まで、 すべての Streamable HTTP リビジョンを提供します。アップストリームではデフォルトで initialize を使用するか、 protocol_version: "2026-07-28" を指定して server/discover を使用します。CI では、公式 MCP スイートの対象となるツールのみの プロトコルシナリオを実行します。また、OpenAPI の記述から REST API を MCP ツールとして公開します。
  • A2A エージェントゲートウェイ — A2A(Agent-to-Agent)エージェントを /a2a/:agent で公開し、JSON-RPC 2.0 経由で 各エージェントのカードをゲートウェイ向けの URL に書き換えて提供します。
  • インバウンド認証 — 呼び出し元 API キー(SHA-256 ハッシュ化、モデル許可リスト、有効期限、ローテーション)、または登録済みプロバイダー(Entra ID、Okta、Google Workspace、任意の OIDC 発行者)に対して検証する OIDC/JWT ベアラートークンに対応し、JWKS をキャッシュします。
  • オブザーバビリティ — Prometheus /metrics、リクエストごとの構造化アクセスログ、使用状況イベント、OTLP/GenAI スパンのエクスポート(Langfuse、Honeycomb、Grafana Cloud、任意の OTLP レシーバー)に加え、 Datadog と Aliyun SLS 専用のログエクスポーター、およびオブジェクトストレージ(S3/GCS/Azure Blob)へのテレメトリー出力を提供します。
  • 宣言型設定 — 1 つの resources.yaml に 10 種類すべてのリソースコレクション(プロバイダーキー、モデル、呼び出し元キー、ガードレール、MCP サーバー、A2A エージェント、キャッシュポリシー、オブザーバビリティエクスポーター、レート制限ポリシー、OIDC プロバイダー)を記述します。ゲートウェイが実行時に使用するものと同じ JSON Schema に基づいて検証されます。aisix validate でファイルをオフライン検証でき、SIGHUP によりアトミックに再読み込みされます。
  • 運用エンドポイント — プロキシリスナーで /livez と /readyz を提供し、専用のメトリクス リスナー(:9090)で /status/config、/status/ready、/status/models、Prometheus /metrics を提供します。管理リスナー(:3001)ではさらに、リソースの読み取り専用 インターフェース、Scalar UI を備えた OpenAPI 3、プレイグラウンドを提供します。リソースは宣言型で管理されます。resources_file(SIGHUP で再読み込み)または etcd への直接書き込みを使用し、管理リスナー経由では管理しません。以前の書き込みエンドポイントは削除されました。

🔌 対応プロバイダー

AISIX は、5 つのネイティブアダプターファミリーを介してリクエストを振り分けます。単一の汎用的な名称置き換えではなく、それぞれ異なるワイヤープロトコルのブリッジです。上流のプロトコルにかかわらず、クライアント向け API は OpenAI 形式を維持します。

アダプターファミリー接続先ワイヤー形式 · 認証
openaiOpenAI および OpenAI 互換ベンダー — DeepSeek、Groq、Mistral、Together、Fireworks、Perplexity、vLLM、Ollama、セルフホスト可能な OpenAI 互換エンドポイントOpenAI チャット補完 · Bearer
anthropicAnthropic ClaudeAnthropic Messages · x-api-key
bedrockAWS Bedrock — Anthropic、Meta Llama、Mistral、Cohere、Amazon Titan/Nova、AI21Bedrock Converse と /invoke · SigV4
vertexGoogle Vertex AI(Gemini)Vertex :generateContent · OAuth2
azure-openaiAzure OpenAIAzure デプロイメント · api-key / Entra ID

さらに、ベンダー固有の仕様(DeepSeek の推論コンテンツなど)に対応する専用処理と、リランク/埋め込みに対応するベンダー(Cohere、Jina)も備えています。詳細はアダプタープロトコルファミリーをご覧ください。

☁️ AISIX 製品を選ぶ

どの形態でも、ゲートウェイのバイナリとプロキシ API は共通で、ゲートウェイはお客様の環境で稼働します。AISIX Enterprise は、お客様がホストする商用コントロールプレーンを追加します。AISIX Cloud は、API7 がホストする商用コントロールプレーンを追加します。

AISIX Enterprise と AISIX Cloud の概要 — 本日のリクエスト数、レイテンシー p50/p99、エラー率、コスト、7 日間のリクエスト数とコストの推移、ゲートウェイの正常性
概要 — トラフィック、レイテンシー、エラー率、支出をひと目で確認

AISIX Enterprise と AISIX Cloud のモデル — プロバイダーごとに上流の LLM にエイリアスを設定し、モデル ID とモデルごとのレート制限を指定
モデル — 上流ごとに 1 つのエイリアスを設定:OpenAI、Anthropic、Bedrock、DeepSeek…

AISIX Enterprise と AISIX Cloud のガードレール — 入力前と出力後のコンテンツポリシーを設定し、違反時にブロック
ガードレール — 入力前と出力後のポリシーを設定し、違反時にブロック
AISIX Enterprise と AISIX Cloud のプレイグラウンド — モデルを選び、プロンプトを設定し、トークン数とコストをリアルタイムで計測しながら応答を確認
プレイグラウンド — あらゆるモデルをトークン数とコストのリアルタイム計測付きでテスト

AISIX Enterprise と AISIX Cloud の可観測性エクスポーター — OTLP、Datadog、オブジェクトストレージにテレメトリーを分配し、配信先ごとの配信状況を確認
可観測性 — トレースとログを OTLP、Datadog、オブジェクトストレージに分配

AISIX Enterprise と AISIX Cloud の予算 — 組織および環境ごとの支出上限を設定し、強制停止または警告のみのポリシーを適用
予算 — 強制停止付き支出上限と警告のみの段階設定

AISIX Enterprise と AISIX Cloud のダッシュボード — すべてのゲートウェイにわたる概要メトリクス、マルチプロバイダーモデル、ガードレール、予算、可観測性エクスポーター。

▶ ライブダッシュボードのデモを試す — aisix-demo.api7.ai

| | AISIX OSS(このリポジトリ) | AISIX Enterprise | [AISIX Cloud](https://api7.ai/ai-gateway?utm_source=github&utm_medium=readme&utm_campaign=cloud) | |---|---|---|---| | ライセンス | Apache-2.0 | 商用 | 商用 | | コントロールプレーン | なし | お客様がホスト | API7 がホスト | | 設定 | 宣言型の `resources.yaml`、またはクラスター用の etcd | ダッシュボード + AISIX Cloud Admin API | ダッシュボード + AISIX Cloud Admin API | | テナント | 単一インスタンス/名前空間 | 組織単位の環境、チーム、メンバー | 組織単位の環境、チーム、メンバー | | プロバイダーキー | `resources.yaml` の `${VAR}` 参照。etcd では認証情報を平文で保存 | 保存時に暗号化。オペレーターが手動でローテーションを実行 | 保存時に暗号化。オペレーターが手動でローテーションを実行 | | 予算 | —(レート制限とトークン制限のみ) | キー、プロバイダー、環境、組織、チームごと | キー、プロバイダー、環境、組織、チームごと | | RBAC と監査 | ローカル管理者キー。組織レイヤーなし | 組織のロール、招待、監査履歴 | 組織のロール、招待、監査履歴 | | 運用 | ゲートウェイを運用 | コントロールプレーンとゲートウェイを運用 | API7 がコントロールプレーンを運用。ゲートウェイはお客様が運用 |

→ 一元的なガバナンス、予算管理、ダッシュボードをお求めですか? AISIX Enterprise または AISIX Cloud について API7 にお問い合わせください。または デモをご予約ください。

🏗️ アーキテクチャ

単一の Cargo ワークスペースです。aisix-server クレートが aisix という名前の単一バイナリをビルドし、各クレートを連携させます。

crates/
├── aisix-core           Config, snapshot, resource model, resources.yaml source, errors
├── aisix-etcd           Config provider + watch supervisor
├── aisix-gateway        Hub & bridge, SSE parser, provider trait
├── aisix-proxy          /v1/*, /mcp, /a2a handlers, routing, middleware
├── aisix-admin          Read-only resource surface + playground + OpenAPI
├── aisix-provider-*     openai · anthropic · azure-openai · bedrock · vertex
├── aisix-mcp            MCP gateway — server registry, tool ACL, transports
├── aisix-a2a            A2A agent gateway — agent cards, JSON-RPC bridge
├── aisix-ratelimit      fixed-window + token accounting + concurrency (local | redis)
├── aisix-cache          memory + redis backends
├── aisix-redis          shared Redis connection for cache + rate limits
├── aisix-guardrails     pre/post content-policy hooks
├── aisix-obs            tracing, metrics, access log, exporters
└── aisix-server         the `aisix` binary — bootstrap + CLI

🗺️ ロードマップ

ロードマップの主な項目は、イシューで随時更新されています。

  • セマンティック(埋め込み類似度)レスポンスキャッシュ
  • さらなる可観測性シンク — Langsmith、Helicone、Slack アラート
  • ゲートウェイリソースとして管理されるプロンプトテンプレート
  • ガードレールプロバイダーとしての Llama-Guard

このリストの前回更新以降にリリースされたもの:MCP ゲートウェイ、A2A エージェントゲートウェイ、OIDC/JWT インバウンド認証、Redis を利用した分散レート制限、Lakera、Presidio、PII、OpenAI Moderation の各ガードレールです。詳しくは上記の 機能 をご覧ください。

🛠️ 開発

前提条件:rust-toolchain.toml で固定されている Rust ツールチェーン。Docker が必要なのは、etcd、Redis、またはプロバイダーエミュレーターを使用するテストのみです。

cargo check --workspace
cargo fmt --check
cargo clippy --workspace -- -D warnings
cargo test --workspace

# Coverage (matches the CI gate)
cargo llvm-cov --workspace --lcov --output-path lcov.info

# Run locally against a resources.yaml (no etcd needed). Copy the Quickstart's two files
# and change resources_file to the local path, e.g. resources_file: ./resources.yaml
cargo run -p aisix-server --bin aisix -- --config config.local.yaml

# Check a resources file without starting a listener
cargo run -p aisix-server --bin aisix -- validate --resources resources.yaml

💬 コミュニティ

AISIX が役に立った場合は、⭐を付けていただくと、ほかのエンジニアにも見つけてもらいやすくなります。

📄 ライセンス

Apache 2.0。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。