Keystone 1.0 упростил выбор LLM и защиту ключей
Вышла Keystone 1.0 — open source шлюз между сервисами и LLM-вендорами, который убирает выбор модели и ключей из кода. Он помогает автоматически подбирать модель под сложность задачи, переключаться на резервные варианты и при этом работать даже на собственных GPU.
Что делает Keystone и зачем он нужен
Keystone, или KTMS, работает как единая точка входа для приложений, которым нужны большие языковые модели. Вместо того чтобы зашивать в код название конкретной модели, сервис передаёт шлюзу только уровень сложности задачи и нужные атрибуты, а дальше Keystone сам решает, к кому обратиться: к внешнему провайдеру или к вашей собственной инфраструктуре.
Такой подход особенно полезен командам, у которых много микросервисов. Когда у провайдера выходит новая модель или старая перестаёт подходить, не нужно менять код в каждом сервисе по отдельности — достаточно обновить правила маршрутизации в одном месте. Это экономит время разработчиков и снижает риск ошибок в конфигурациях.
Как он защищает ключи и держит систему живой
Keystone хранит API-ключи в Postgres и шифрует их AES-256-GCM, поэтому клиентам они не показываются. Система умеет ограничивать запросы, токены и расходы по ключам, пользователям, командам и организациям, а также отправляет события о каждом вызове в сервис учёта light-tokenmeter.
Если вендор отвечает с ошибкой или начинает ограничивать трафик, шлюз может переключиться на следующую модель из заранее заданной цепочки. Встроены circuit breaker, пауза модели по Retry-After и поведение, рассчитанное на сбои Postgres и Redis: часть функций продолжает работать, а учёт и маршрутизация не разваливаются при проблемах с зависимостями.
Что появилось в версии 1.0 и как это может пригодиться
Вместе с Keystone 1.0 вышли веб-консоль ktms-admin и инструмент учёта расходов light-tokenmeter. Все три проекта написаны на Go и распространяются под лицензией Apache 2.0. У шлюза есть gRPC API и OpenAI-совместимый HTTP-интерфейс, так что существующие приложения можно подключать через смену base_url, не переписывая логику работы с моделью.
Практическая польза здесь понятна бизнесу и разработчикам: меньше ручной рутины, проще контроль бюджета, легче включать собственные GPU-ноды и быстрее тестировать новые модели. Keystone также даёт инструменты для наблюдения и эксплуатации — от метрик и алертов до Helm-чарта и подписанных образов, что удобно для команд, которые разворачивают ИИ-сервисы у себя.