ARDIFIT AI Engine
Движок тренировочных программ, где травмы на первом месте: план строят детерминированные правила, а объясняет его GPT-4-тренер с жёсткими ограничениями.
- Слой клинической безопасности
- Детерминированный движок правил
- GPT-4-тренер с ограничителями
- 5 языков, включая арабский RTL
- Клиент
- ARDIFIT
- Год
- 2025–26
- Авторство
- Собственная разработка
- Статус
- Роль
- Единственный бэкенд-инженер и AI-интегратор: движок, слои безопасности, тренер, тесты, деплой и передача.
- Платформы
- REST API · демо- и админ-интерфейс · десктоп и мобильные
- Языки
- EN · RU · AR · ES · DE
- Стек
- Python · FastAPI · Pydantic · SQLAlchemy · OpenAI GPT-4 · pytest · Docker · Render · Vanilla JS demo UI
- Ссылки
- Демонстрация по запросу
Изыскания — контекст и задача.
Задача
Превратить анкету в безопасный многонедельный план — травмы прежде всего — и добавить AI-тренера, который знает, в чём отказать.
ARDIFIT — фитнес-стартап, который строит персональные тренировочные программы. Пользователи заполняют анкету на WordPress-сайте клиента — цели, опыт, оборудование, расписание, тариф и, что важнее всего, травмы — и ждут в ответ безопасный план на несколько недель.
Безопасность определила всё. Пользователь с серьёзной травмой поясницы и больным коленом не должен получить ни одного упражнения, нагружающего эти зоны, — и при этом в каждом тренировочном дне должна оставаться настоящая тренировка, а не набор растяжек. Клиент предоставил пакеты данных упражнений и правила тренировочной логики; нужен был движок, который применяет эти правила точно и предсказуемо — и может доказать это тестами.
Ещё клиент хотел AI-тренера — но с чёткими границами. Он должен объяснять, почему выбрано упражнение, и предлагать безопасные замены, отказываясь ставить диагнозы, составлять планы питания и самовольно перестраивать программу. Фронтенд на WordPress делал другой разработчик, поэтому движок должен был стать чистым, документированным API.
План — сначала — чертёж системы.
Решение
Движок на FastAPI: слой клинической безопасности, генератор программ на правилах с гарантией минимальной тренировки и GPT-4-тренер за строгими ограничителями — всё покрыто 183 тестами.
Движок — сервис на FastAPI; по документации клиента соотношение примерно 90% детерминированных правил и 10% языковой модели. Анкета из WordPress сначала проходит слой клинической безопасности: при серьёзной травме зона переходит на белый список упражнений, при умеренной — на список ограничений, а при нескольких травмах упражнение должно быть безопасно для каждой травмированной зоны. Генератор программ переводит цели и опыт в сплит и недельный объём, подборщик сопоставляет двигательные паттерны с доступным оборудованием с трёхуровневым запасным вариантом, а гарантия минимальной тренировки оставляет в каждом тренировочном дне как минимум два настоящих силовых движения. Затем — модели прогрессии и автоматические разгрузочные недели. Только после этого подключается GPT-4: он объясняет план и предлагает безопасные замены — за классификацией намерений, отказами, очисткой тона и валидатором ответов. Демо-интерфейс и документация Swagger позволяют проверить весь поток.
Ключ модулей
- Схема анкеты: 8 целей, 3 уровня опыта, 10 видов оборудования, 9 зон травм × 3 степени тяжести
- Режимы белого списка и списка ограничений при травмах; контроль объёма при тяжёлых травмах
- Генератор программ с моделями прогрессии и автоматическими разгрузочными неделями
- Мастер-библиотека из 300 упражнений на основе пакетов данных клиента
- GPT-4-тренер с классификацией намерений, отказами и проверкой ответов
- Лимиты по тарифам: 5, 20 и 100 вопросов тренеру в день
- GIF упражнений через ExerciseDB с запасным вариантом при сбое API
- Демо-интерфейс и API-тестер на EN, RU, AR (RTL), ES и DE; документация Swagger
Ключевые решения
-
Почему 90% правил и 10% языковой модели
Безопасность и повторяемость не могут зависеть от случайной выборки. План строят правила, его поведение закрепляют тесты, а модель только объясняет.
-
Почему безопасность проверяется до подбора
Сначала отсеять опасные упражнения, потом подбирать — значит, ни один следующий шаг не вернёт рискованное движение. При нескольких травмах упражнение должно пройти проверку по каждой зоне.
-
Почему в каждом дне остаётся минимальная тренировка
Иначе при строгих ограничениях день мог бы свестись к упражнениям на мобильность. Гарантия оставляет как минимум два осознанных силовых, изометрических или темповых движения.
-
Почему тренер отказывает по замыслу
Диагнозы, планы питания и самовольные изменения программы — вне его компетенции. Отказы, фильтр запрещённых фраз, резервные ответы и дневные лимиты по тарифам удерживают его в рамках задачи клиента.
Фасады — экраны для компьютера.
Все фасады 04
-
Рис. 4.1 Карточки дней сгенерированной программы: каждое упражнение с подходами × повторами, отдыхом и метками травмированных зон, для которых оно безопасно. -
Рис. 4.2 Библиотека упражнений с поиском, фильтрами и счётчиками по сложности; на карточках — двигательный паттерн, целевые мышцы, объём по умолчанию, уровень прогрессии и подсказки тренера. -
Рис. 4.3 Встроенный API-тестер вызывает эндпоинт шаблонов упражнений и показывает HTTP-статус, задержку и подсвеченный JSON-ответ. -
Рис. 4.4 Документация FastAPI Swagger с эндпоинтами движка правил, текстов OpenAI и онбординга пользователей.
Детали — мобильные экраны.
Все мобильные экраны 06
Ведомость материалов — стек и почему он.
| Слой | Материал | Почему |
|---|---|---|
| 01Данные | SQLAlchemy · SQLite / Postgres · 300-exercise library | Пакеты данных клиента загружены в реляционную модель, которая работает и локально, и в продакшене. |
| 02Логика | Python rule engine · clinical-safety layer · progression & deload | Детерминированные, проверяемые решения: один и тот же профиль всегда даёт один и тот же безопасный план. |
| 03Интеллект | OpenAI GPT-4 behind guardrails | Объяснения на естественном языке — без права модели ставить диагнозы или перестраивать программу. |
| 04Интерфейс | FastAPI · Swagger · demo UI in 5 languages | Документированный JSON API для WordPress-фронтенда клиента и демо, чтобы пройти весь сценарий. |
| 05Инфраструктура | Docker · Render · Vercel / Railway configs · pytest | Переносимые варианты деплоя и 183 теста, переданные вместе с кодом. |
Стек
Сдача — итог и ссылки.
Проверенные факты
- автотеста
- 183
- Источник: по данным репозитория, сентябрь 2026
- упражнений в мастер-библиотеке
- 300
- Источник: по данным репозитория, сентябрь 2026
- зон травм × степени тяжести
- 9 × 3
- Источник: по данным репозитория, сентябрь 2026
- языков интерфейса, включая арабский RTL
- 5
- Источник: по данным репозитория, сентябрь 2026
Ссылки
Сдан
Демонстрация по запросу
Хотите увидеть систему в работе?
Покажу систему вживую на демо-данных и расскажу о решениях, которые за ней стоят.
Запросить демонстрацию





