Самая дорогая строчка в микросервисе с LLM — model="gpt-4o". За ней тянутся свой ключ вендора, свои ретраи и счёт, который потом некому разобрать.
Расскажу об одной идее, которая это убирает: сервис не должен знать, какая модель ему отвечает. Вокруг неё четыре механизма: правила маршрутизации, автоматический выбор сложности, поведение при сбоях вендоров и контроль денег. Всё это есть в Keystone. The Model Switchboard. (KTMS), нашем open-source LLM-шлюзе на Go, и примеры кода ниже из него. Но саму схему можно повторить в любом шлюзе.
Проблема: имя модели в сорока местах
Типичная история. Первый сервис, которому понадобилась LLM, получает ключ OpenAI и строчку model="gpt-4o". Через полгода таких сервисов сорок. У каждого свой ключ в своём секрете, своя обёртка ретраев, свой способ считать токены.