Платформа устного тестирования с распознаванием речи, RAG и оценкой ответов через Yandex AI Studio.
Быстрый запуск · Возможности · Сценарии · Архитектура · Проверка
Обычные тесты проверяют выбор правильного варианта. TuneAI проверяет устный ответ: как человек формулирует мысль, насколько полно раскрывает тему, где ошибается и какие материалы стоит повторить.
- устные ответы через микрофон;
- расшифровка речи через Yandex SpeechKit;
- поиск по учебным материалам через RAG;
- оценка ответа по критериям преподавателя;
- понятная обратная связь: ошибки, пропущенные пункты и рекомендации;
- роли студента, экзаменуемого, преподавателя и администратора;
- скрытие вопросов до начала попытки и последовательное открытие;
- очередь фоновой обработки через RabbitMQ и Transactional Outbox;
- безопасный mock-режим без расходов на API.
- Студент записывает ответ с микрофона.
- Yandex SpeechKit превращает речь в текст.
- Yandex Text Embeddings помогают найти релевантные фрагменты материалов для RAG.
- YandexGPT проверяет ответ по критериям и формирует понятную обратную связь.
- Спорные результаты отправляются преподавателю на ручную проверку.
- Yandex SpeechKit — распознавание устной речи и получение текстовой расшифровки ответа.
- Yandex Text Embeddings — векторизация учебных материалов и запросов для RAG-поиска.
- YandexGPT — оценка ответа, поиск ошибок, пропущенных пунктов и генерация рекомендаций.
- Yandex AI Studio — единая платформа для подключения моделей Яндекса к приложению.
Самоподготовка. Студент создает тренировку, загружает материалы, отвечает голосом и получает разбор слабых тем.
Устный экзамен. Экзаменуемый видит только назначенные тесты, вопросы открываются по одному, преподаватель получает отчет.
Интервью. Система задает вопросы кандидату, анализирует ответы и формирует структурированный итог для рекрутера.
cp .env.example .env
docker compose up --build -d
docker compose --profile demo run --rm seedОткройте локально: http://localhost:3000
Демо-аккаунты:
student@tuneai.dev / password123
admin@tuneai.dev / password123
По умолчанию проект запускается в mock-режиме. Чтобы включить реальные модели Яндекса, заполните .env:
YANDEX_MOCK=false
YANDEX_FOLDER_ID=<folder-id>
YANDEX_API_KEY=<api-key>Ключ используется только backend и worker. В браузер он не передается.
frontend -> backend -> RabbitMQ -> worker -> Yandex AI Studio
| |
PostgreSQL MinIO
Основной стек: Next.js, FastAPI, PostgreSQL, RabbitMQ, MinIO и Docker Compose.
cd backend
pip install -r requirements-dev.txt
pytestFrontend собирается командой:
cd frontend
npm run buildИсходный код доступен для ознакомления в рамках демонстрации проекта. Все права принадлежат CRUDoshleps. Подробнее см. LICENSE.
