Місце
Self-hosted · Hetzner
Роль
Sole architect and builder
Команда
1
Стек
FastAPI · Python 3.12

Запускаючи два AI-продукти з одного сервера — Vera (персональний асистент) та Stepan (Instagram-агент продажів) — повторюваною проблемою було розростання API-ключів та невидимі витрати. AIbroker — єдина управляюча площина: кожен LLM-виклик по всіх проєктах маршрутизується через неї, з обмеженнями витрат на проєкт, автоматичним охолодженням на 429-их та Telegram-алертом в момент смерті ключа.

Інцидент з витратами, що зробив це необхідним

У червні 2026 року застарілий множник витрат у LiteLLM призвів до того, що провайдерські виклики логувалися по 1/20 реальної ціни. Охоронник витрат думав, що бюджет залишився; його не було. Прийшов рахунок на $25. AIbroker вже перебував у розробці; інцидент перевів його з «корисного експерименту» в «вимогу продакшену». Брокер читає реальні USD з журналів використання, а не оцінки по рівню моделі.

Два режими для двох проблем

Режим проксі: брокер викликає провайдера через LiteLLM SDK, повертає відповідь, логує витрати. Клієнтський проєкт ніколи не бачить API-ключ. Режим видачі: брокер видає короткострокову оренду ключа; клієнт викликає провайдера напряму, звітує про використання при звільненні. Видача обробляє провайдерів, несумісних з OpenAI-інтерфейсом.

Що працює в продакшені

LRU-aware вибір ключів уникає гарячої ротації одного ключа, поки інші простоюють. Денні та місячні обмеження витрат на проєкт забезпечують бюджетну дисципліну по всіх підключених клієнтах. Монітор здоров'я запускається кожні 10 хвилин — найдешевший валідний виклик на провайдера — і негайно відмічає мертві ключі Telegram-алертом. Жива панель показує витрати, здоров'я ключів та використання по проєктах.

Посилання

← До всіх робіт