Услуги / AI · LLM
Разработка AI/LLM-систем
Вызов LLM API — это один запрос. AI-продукт — это всё, что вокруг него: маршрутизация между провайдерами, память, оценка качества, лимиты, стоимость, поведение при сбоях и бизнес-логика. Closeflow проектирует и строит эту инфраструктуру, а не чат-бота поверх одного API.
02Что строим
Что мы разрабатываем
LLM-шлюзы и маршрутизация между провайдерами
Единая точка входа к нескольким провайдерам с выбором модели по задаче, стоимости и доступности.
RAG и семантический поиск
Поиск по вашим данным с помощью embeddings и pgvector, сборка контекста для ответа.
Embeddings и долговременная память
Что система помнит о пользователе и сессии, как это извлекается и как попадает в промпт.
Агентные и workflow-пайплайны
Многошаговая обработка с разными моделями, фоновыми задачами и контролем на каждом шаге.
AI-функции внутри существующих продуктов
Подключение к вашему backend, правам доступа и биллингу без отдельной параллельной системы.
Внутренние AI-инструменты
Например, аналитик, который отвечает по данным через read-only сессию БД и готовит отчёты для операционной команды.
Оценка качества
Сравнение моделей и промптов на реальных сценариях, проверки на регрессию.
Биллинг и квоты
Учёт токенов, предоплаченный баланс, лимиты по тарифам и пользователям.
Модерация и guard-пайплайны
Проверки запроса и ответа: попытки обхода ограничений, выход из заданной роли.
03Шлюз
LLM-шлюз: путь запроса
Обобщённая схема шлюза, который мы строили в AI-платформах под NDA.
Circuit breaker на каждого провайдера: если один начинает отвечать ошибками или медленно, запросы перестают идти туда и не копят очередь таймаутов.
Fallback: при недоступности провайдера запрос уходит в другую модель того же класса. Для пользователя это короткая пауза, а не ошибка.
Маршрутизация по уровню и намерению: простые запросы идут в дешёвые модели, сложные — в более сильные. Решение принимается по типу задачи и стоимости.
Деградация: если модель недоступна, система предлагает доступную замену, а не падает целиком. Стриминг ответа идёт через WebSocket или SSE.
04Память
Память, поиск и контекст
Здесь речь о том, как система хранит и находит информацию, а не об обучении моделей.
Три слоя памяти
Краткосрочный контекст диалога в Redis, структурированные факты в PostgreSQL, семантический поиск по embeddings в pgvector.
Семантический кэш
Похожие запросы получают ранее найденный ответ из Postgres + pgvector, не обращаясь к провайдеру повторно.
Суммаризация сессий
Длинная история сжимается в краткое резюме, а важное сохраняется в долговременную память.
Сборка промпта под лимит токенов
Контекст собирается из слоёв с приоритетами так, чтобы укладываться в бюджет токенов, а не обрезаться случайно.
RAG и извлечение
Поиск релевантных фрагментов по смыслу и подстановка их в запрос с ссылкой на источник.
05Оценка качества
Качество измеряется, а не предполагается
Смена модели или промпта без проверки — это эксперимент на пользователях.
Сравнение моделей
Одни и те же сценарии прогоняются через разные модели и сравниваются по качеству и цене.
LLM-as-judge
Модель-оценщик ранжирует ответы по заданным критериям. Это быстрая проверка, которую дополняют разметкой людьми.
Проверка регрессий
Перед переключением модели или правкой промпта набор сценариев показывает, что стало хуже.
A/B-эксперименты
Варианты сравниваются на реальных сценариях использования, а не на синтетических примерах.
06Workflow
Пайплайны из узлов
В одной из AI-платформ мы реализовали визуальный редактор узлов: пользователь собирает пайплайн на канвасе, а шаги выполняют серверные воркеры. Это не универсальный движок workflow, а прикладной инструмент под конкретные сценарии платформы.
Для каждого узла можно выбрать провайдера и модель. По каждому шагу видны статус, время и результат, поэтому при сбое понятно, где остановилась обработка. Долгие шаги идут в фоне, не блокируя интерфейс.
07Стоимость и надёжность
Стоимость, лимиты и надёжность
Предоплаченный баланс с holds в Redis
Сумма резервируется до вызова модели и списывается по факту, поэтому параллельные запросы не уводят баланс в минус.
Воркер сверки платежей
Платежи провайдера и записи в системе сравниваются по расписанию, подписи проверяются на входе.
Fallback между провайдерами
Недоступность одного провайдера не останавливает продукт.
Учёт токенов
Стоимость каждого запроса записывается и привязывается к пользователю, модели и тарифу.
Наблюдаемость
Дашборды Prometheus и Grafana по ошибкам, задержкам и расходам помогают заметить проблему до жалобы.
08Стек
Что используем
Сервер
Python — там, где он нужен.
Интерфейс
Данные
Эксплуатация
09Границы
Чем мы не занимаемся
Closeflow не исследовательская лаборатория и не обучает крупные модели с нуля. Наша работа — инженерия AI-продуктов: инфраструктура вокруг моделей и их надёжная интеграция в приложения.
10Когда подходит
Когда стоит обращаться
Прототип должен стать надёжной функцией
Демо работает, но нет лимитов, повторов, мониторинга и понятного поведения при ошибке.
Стоимость и качество непредсказуемы
Расходы растут, а какая модель лучше для какой задачи — неясно.
Нужно подключить несколько провайдеров
Хочется не зависеть от одного API и выбирать модель под задачу.
AI нужен внутри существующего backend
Функциональность должна использовать ваши данные, права и биллинг.
Есть AI-задача?
Расскажите, что должна делать функциональность и где сейчас упирается. Разберём архитектуру и скажем, что реально сделать.
Обсудить AI-функциональность12Контакт
Расскажите, что
должно работать.
Опишите задачу, текущую систему и ограничения. Если проект подходит по профилю — предложим следующий шаг: обычно это короткий созвон с вопросами о данных, интеграциях и сроках.
- Telegram@missuk2003
- Emailceo@closeflow.ru
- GitHubHusqvarnalox