by API7.ai (open source) Linux, macOS, Windows, OpenAI API, Anthropic API, Gemini API, Bedrock API, Azure OpenAI API, DeepSeek API, Claude Desktop, Claude Code, OpenCode
Open-source AI gateway для LLM и агентов на Rust. Единый OpenAI-совместимый API для OpenAI, Anthropic, Gemini, Bedrock и других — роутинг, guardrails, кеширование, rate limits, observability.
Самый быстрый open-source AI gateway (в 50 раз быстрее LiteLLM): адаптивный балансировщик нагрузки, кластерный режим, guardrails, …
Быстрый защищённый MCP-сервер, расширяющий возможности через WebAssembly-плагины.
MCP-сервер, дающий Claude способность «слышать» музыку. Чистый Rust-анализ аудио — спектральный, гармонический, ритмический, тембральный — возвращается …
MCP-сервер для доступа к актуальной документации библиотек прямо в контексте LLM. Вместо устаревших обучающих данных — …
export OPENAI_API_KEY="YOUR_PROVIDER_KEY" export CALLER_API_KEY="YOUR_CALLER_KEY" docker run -d --name aisix \ --platform linux/amd64 \ -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 (metrics/status listener unauthenticated; keep on loopback/private network)
Единый API, совместимый с OpenAI, перед любой моделью. Маршрутизация, управление, защита, кэширование и наблюдение за всем трафиком LLM и ИИ-агентов из одной точки контроля — поставляется в виде одного статического бинарного файла с низкими накладными расходами на запрос. Запускайте его в своей инфраструктуре бесплатно навсегда.
Разработано создателями Apache APISIX.
Начать бесплатно · Документация · Быстрый старт · AISIX Cloud · Дорожная карта
AISIX AI Gateway — это шлюз на базе Rust, который предоставляет единый API, совместимый с OpenAI, перед всеми провайдерами LLM — OpenAI, Anthropic, Google Gemini, AWS Bedrock, Azure OpenAI, DeepSeek и любыми конечными точками, совместимыми с OpenAI. Он даёт командам платформы единое место для маршрутизации, управления, защиты и наблюдения за трафиком LLM с первоклассной потоковой передачей SSE и низкими накладными расходами шлюза.
Он работает как один статический бинарный файл — низкий холодный старт, чтение конфигурации без блокировок и горячая перезагрузка конфигурации без перезапусков: объявляйте ресурсы в одном файле resources.yaml и перезагружайте их по сигналу SIGHUP, или направьте шлюз на etcd для кластера с несколькими репликами. Запускайте открытый шлюз в своей инфраструктуре или подключайте его к AISIX Cloud для централизованного управления с командным управлением, бюджетами, аудитом и панелью управления.
AISIX AI Gateway (этот репозиторий) — это продукт с открытым исходным кодом. Он работает без плоскости управления с использованием декларативной конфигурации или etcd. При подключении к AISIX Cloud тот же шлюз служит плоскостью данных. AISIX Cloud добавляет коммерческую плоскость управления, размещаемую либо API7 (Гибридное облако), либо вами в вашей инфраструктуре (Локально). В обоих вариантах шлюз работает в вашей среде и напрямую вызывает провайдеров; живой трафик ИИ не проходит через плоскость управления или API7. Прокси-API идентичен во всех случаях. Свяжитесь с нами по поводу AISIX Cloud →
Один контейнер. Нет плоскости управления, базы данных или хранилища конфигурации — шлюз считывает все динамические ресурсы из одного декларативного файла 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 \
--platform linux/amd64 \
-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 являются взаимоисключающими.
base_url и переключайте модели без изменения кода.Покрыто 183 файлами сквозных сценариев (496 тестов), которые запускаются на реальных процессах шлюза.
: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-режима, мультимодального ввода (зрение) и контента для рассуждений.POST /v1/messages как полноценный маршрут, работающий с
любым настроенным вышестоящим провайдером: запросы и ответы (включая потоковые) переводятся
в обе стороны, если модель указывает на провайдера, отличного от Anthropic.round_robin
(взвешенный циклический перебор), consistent_hash (привязка сессий по заголовку /
cookie / API-ключу / IP-адресу клиента), failover, а также метрические стратегии least_cost,
least_latency и least_busy. Приоритетные уровни (priority) для целей (активные/резервные пулы),
бюджеты повторных попыток, периоды охлаждения, цели с условными тегами и тайм-ауты на каждую попытку.api_key / model / team /
member / team_member). Счётчики по умолчанию ведутся на уровне процесса или могут быть общими для реплик
с использованием бэкенда Redis.422 content_filter;
в режиме мониторинга фиксируется, что произошло бы без блокировки./mcp с учётными данными,
хранящимися на шлюзе, пространствами имён инструментов для каждого сервера и доступом для каждого вызывающего.
Поддерживает все ревизии Streamable HTTP с 2025-03-26 по 2026-07-28 без сохранения состояния сессий на стороне клиента.
Вышестоящие серверы по умолчанию используют initialize или server/discover с
protocol_version: "2026-07-28". В CI запускаются применимые сценарии протокола только для инструментов из официального набора MCP.
Также предоставляет REST API в виде инструментов MCP из описания OpenAPI./a2a/:agent, обслуживание карточки каждого агента
с перезаписью URL на шлюз через JSON-RPC 2.0./metrics, структурированные логи доступа для каждого запроса, события использования,
экспорт OTLP/GenAI-спанов (Langfuse, Honeycomb, Grafana Cloud или любой OTLP-приёмник),
а также выделенные экспортеры логов для Datadog и Aliyun SLS и телеметрия в объектные хранилища (S3/GCS/Azure Blob).resources.yaml содержит все десять коллекций ресурсов
(ключи провайдеров, модели, ключи вызывающих, защитные барьеры, серверы MCP, A2A-агенты, политики кэширования,
экспортеры наблюдаемости, политики ограничения скорости, OIDC-провайдеры), проверяемые по тем же JSON-схемам,
которые шлюз использует во время выполнения. Команда aisix validate проверяет файл офлайн; SIGHUP
перезагружает его атомарно./livez и /readyz на слушателе прокси; /status/config,Конечные точки /status/ready, /status/models и Prometheus /metrics доступны на выделенном слушателе метрик (:9090). Админский слушатель (:3001) дополнительно предоставляет только для чтения поверхность ресурсов, OpenAPI 3 с интерфейсом Scalar и игровую площадку. Ресурсы управляются декларативно — через файл resources_file (перезагружается по сигналу SIGHUP) или прямыми записями в etcd — а не через админский слушатель; его прежние конечные точки для записи были удалены.
AISIX направляет запросы через пять семейств нативных адаптеров — отдельные мосты протоколов, а не один универсальный релей. Независимо от протокола вышестоящего сервера, клиентский API остаётся в формате OpenAI.
| Семейство адаптеров | Поддерживает | Формат протокола · аутентификация |
|---|---|---|
openai |
OpenAI + любой совместимый с OpenAI вендор — DeepSeek, Groq, Mistral, Together, Fireworks, Perplexity, vLLM, Ollama или собственные конечные точки, совместимые с OpenAI | Чат-завершения OpenAI · Bearer |
anthropic |
Anthropic Claude | Сообщения Anthropic · x-api-key |
bedrock |
AWS Bedrock — Anthropic, Meta Llama, Mistral, Cohere, Amazon Titan/Nova, AI21 | Bedrock Converse + /invoke · SigV4 |
vertex |
Google Vertex AI (Gemini) | Vertex :generateContent · OAuth2 |
azure-openai |
Azure OpenAI | Развёртывания Azure · api-key / Entra ID |
Кроме того, реализована специализированная обработка особенностей вендоров (например, содержимое рассуждений DeepSeek) и выделенные провайдеры переранжирования / эмбеддингов (Cohere, Jina). Подробности в разделе семейства протоколов адаптеров.
Один и тот же бинарный файл шлюза, тот же прокси-API — в любой форме шлюз работает в вашей среде. AISIX Cloud добавляет коммерческую панель управления, размещаемую либо API7 (Гибридное облако), либо в вашей инфраструктуре (Локально).
![]() Обзор — трафик, задержка, частота ошибок и расходы на первый взгляд ![]() Модели — один псевдоним на каждый вышестоящий сервер: OpenAI, Anthropic, Bedrock, DeepSeek… ![]() Защитные механизмы — политики до и после ввода, блокировка при нарушении |
![]() Игровая площадка — тестирование любой модели с учётом токенов и стоимости в реальном времени ![]() Наблюдаемость — отправка трассировок и логов в OTLP, Datadog, объектное хранилище ![]() Бюджеты — жёсткие лимиты расходов с предупреждающими уровнями |
Панель управления AISIX Cloud — обзорные метрики, модели от нескольких провайдеров, защитные механизмы, бюджеты (с жёсткими лимитами расходов) и экспортеры наблюдаемости для всех ваших шлюзов.
▶ Попробуйте демо-панель в действии — aisix-demo.api7.ai
| Шлюз с открытым исходным кодом (этот репозиторий) | AISIX Cloud (Гибридное облако или Локально) | |
|---|---|---|
| Цена | Бесплатно · Apache-2.0 · навсегда | Коммерческая — свяжитесь с нами |
| Конфигурация | Декларативный resources.yaml или etcd для кластера |
Панель управления + Cloud Admin API, мультисреда |
| Мультиарендность | Один экземпляр / пространство имён | Организация → Команда → Участник → Среда |
| Ключи провайдеров | В файле ресурсов как ссылки на переменные окружения ${VAR} или в etcd |
Шифрование конвертом в состоянии покоя, только для записи, ротация на месте |
| Входящая аутентификация | Ключи вызывающей стороны (хешированные SHA-256, списки разрешённых моделей, срок действия) или OIDC/JWT Bearer | То же, плюс маскированное отображение, владение ключами и PAT |
| Бюджеты | — (только ограничения по скорости и токенам) | На ключ / провайдера / среду / организацию / команду, жёсткие лимиты и оповещения |
| RBAC | Админский ключ = поверхность ресурсов только для чтения | Роли организации (владелец / администратор / участник), приглашения |
| Журнал аудита | — | Полный журнал аудита в рамках организации с просмотром изменений |
| Использование и стоимость | Экспорт логов, метрик и событий использования самостоятельно | Управляемые представления использования, каталог цен на модели, отчётность по расходам |
| Поверхность | Конечные точки статуса, поверхность чтения OpenAPI, игровая площадка | Полная панель управления + игровая площадка для каждой среды |
→ Хотите панель управления 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
Основные моменты дорожной карты; отслеживаются в реальном времени в задачах:
Реализовано с момента последнего обновления этого списка: шлюз MCP, шлюз агента A2A, входящая аутентификация OIDC/JWT, распределённое ограничение скорости на базе Redis, а также защитные механизмы Lakera, Presidio, PII и OpenAI Moderation — см. раздел Возможности выше.
Необходимые компоненты: инструментарий Rust, зафиксированный в rust-toolchain.toml. 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 полезен для вас, поставьте ⭐ — это поможет другим инженерам найти его.