Инструменты2 сентября 2026 г., 21:16 МСК🤖 Auto

NVIDIA Switchyard: Rust-прокси для маршрутизации LLM-трафика между OpenAI и Anthropic

NVIDIA выпустила pre-alpha версию Switchyard — прокси на Rust, который транслирует запросы между API OpenAI и Anthropic, позволяя агентам использовать любые модели без переписывания кода.

Баннер новости 6613

Проблема фрагментации API

Команды, разрабатывающие AI-агенты, сталкиваются с архитектурным тупиком: Claude Code использует Anthropic Messages API, Codex CLI — OpenAI, а целевые модели часто развернуты через vLLM, NVIDIA NIM или Ollama. Переписывать агенты под каждый провайдер невозможно. NVIDIA решает эту проблему через Switchyard — открытый прокси и библиотеку на Rust, которая работает как слой абстракции, скрывая различия в форматах запросов и ответов.

Как работает трансляция

Switchyard принимает входящие запросы в трех форматах: OpenAI Chat Completions, OpenAI Responses и Anthropic Messages. Прокси декодирует запрос в провайдер-независимые типы Rust, выбирает бэкенд через алгоритм маршрутизации, перекодирует запрос в формат целевого API, выполняет вызов и транслирует ответ (включая стриминг) обратно в формат клиента. Это позволяет агенту «не знать», какая именно модель обслуживает запрос.

Алгоритмы маршрутизации

Ключевая ценность Switchyard — гибкая маршрутизация. Поддерживаются четыре типа алгоритмов, позволяющие оптимизировать стоимость и качество:

Алгоритм Описание и применение
passthrough Отправляет все запросы на один целевой бэкенд. Базовый режим.
random Распределяет трафик между бэкендами с весами. Идеально для A/B-тестирования и экспериментов с затратами.
llm_classifier Использует классификатор для оценки задачи. Маршрутизирует на «слабую» (дешевую) или «сильную» (точную) модель. Поддерживает режим эскалации, если уверенность классификатора низкая.
stage_router Оценивает сигналы прогресса агента и результаты инструментов. Выбирает цель на основе контекста, избегая лишних вызовов классификатора.

Метрики и наблюдаемость

Прокси интегрируется с OpenTelemetry и предоставляет метрики в формате Prometheus. Особый интерес представляет метрика switchyard_routing_overhead_ms, которая изолирует время работы алгоритма маршрутизации от времени ответа модели. Это позволяет точно оценивать накладные расходы прокси. Также доступны метрики по латентности, количеству токенов (prompt/completion/cached), ошибкам и статус-кодам HTTP.

Статус релиза и установка

Проект выпущен под лицензией Apache 2.0 и находится в стадии pre-alpha. NVIDIA прямо предупреждает, что решение не готово для production-использования: API и алгоритмы могут измениться до выхода v1.0. Документация доступна на docs.nvidia.com/nemo/switchyard.

Установка возможна тремя путями:

  • Launcher (для агентов): uv tool install --python 3.12 "nemo-switchyard[cli]"
  • Server (прокси): cargo install --locked switchyard-server
  • Library (встраивание в Rust): switchyard-lib

Конфигурация хранится в TOML-файлах, где секреты (API-ключи) указываются через переменные окружения, а не хранятся в открытом виде.

Источник: MarkTechPost ↗