В разработке
web
FluxRouter
Корпоративный LLM-хаб: маршрутизирует промпты в OpenAI, Anthropic, Gemini и self-hosted модели через единый API — командные бюджеты, SSO/SCIM и tamper-evident аудит-логи
В цифрах
0
LLM-провайдеров
SSO + SCIM
Стандарты авторизации
hash-chain
Аудит-лог
WebSocket
Протокол стриминга
Проблема
Что я решала
Инженерные команды хотят использовать лучший LLM под задачу — Claude для код-ревью, GPT для общих рассуждений, Gemini для длинного контекста, self-hosted Llama для чувствительных данных. На практике — четыре вкладки, четыре биллинга и четыре набора API-ключей. Нет одного дашборда, кто сколько потратил, нет общей библиотеки промптов, нет аудит-трейла, когда приходит compliance. Существующие инструменты либо привязывают к одному вендору, либо пропускают enterprise-сторону вообще.
Мой подход
Как я делала
Multi-tenant с первого дня. Бэкенд на Laravel 12 с DDD/CQRS — адаптеры провайдеров, биллинг, управление командами и аудит-логирование живут в отдельных доменах и не могут протекать друг в друга. Четыре провайдера (OpenAI, Anthropic, Gemini, self-hosted OSS через vLLM/Ollama) сидят за единым внутренним интерфейсом; добавить пятого — ~50 строк. WebSocket-стриминг даёт настоящее двустороннее управление — клиент отменяет генерацию посреди стрима, не разрывая соединение. Фронт на Next.js 16 + React 19 с Feature-Sliced Design, который проверяется Steiger-линтером. Бюджеты токенов проверяются на сервере, а не только показываются; SSO/SCIM через стандартные SAML2 + OIDC; аудит-лог в append-only PostgreSQL 17 таблицах с hash-chained строками для tamper-evidence.
Выбор технологий
- Laravel 12 + DDD/CQRS— Domain-Driven Design разделяет адаптеры провайдеров, биллинг и логику команд — замена провайдера не трогает код аудита. CQRS держит чтение быстрым для дашбордов, а записи проходят через строгие доменные события.
- WebSocket streaming— SSE был бы проще, но WebSocket даёт двустороннее управление — клиент отменяет генерацию на лету, не закрывая соединение. Важно для enterprise UX: остановить разогнавшийся ответ — это реальные деньги.
- Next.js 16 + React 19 + FSD— Feature-Sliced Design + Steiger-линтер ловят архитектурный дрейф до релиза. Новые transitions и Suspense React 19 делают стриминговый UI родным. Серверные компоненты Next.js 16 держат админку быстрой даже на тысячах строк аудита.
- PostgreSQL 17 + hash-chained audit— Append-only таблицы, где хеш каждой строки включает хеш предыдущей, дают tamper-evidence без отдельного реестра. Compliance может проверить цепочку оффлайн. Инкрементальные бэкапы Postgres 17 делают point-in-time recovery дешёвым.
Результат
Что получилось
[в разработке] Слой маршрутизации провайдеров — все четыре бэкенда стримят через один API; модель данных команд/ролей/бюджетов готова; SSO + SCIM работает end-to-end с Okta и Azure AD; hash-chained аудит-лог с инструментом верификации. Фронт — чат, библиотека промптов и админка команд готовы. В работе: аналитика расходов с атрибуцией по организации, A/B-тестирование качества промптов и пакет on-prem-деплоя.