Skip to content

CRUDoshleps/TuneAI

Repository files navigation

Главная страница TuneAI

TuneAI

Платформа устного тестирования с распознаванием речи, RAG и оценкой ответов через Yandex AI Studio.

Next.js FastAPI PostgreSQL RabbitMQ Docker Yandex AI Studio

Быстрый запуск · Возможности · Сценарии · Архитектура · Проверка


Обычные тесты проверяют выбор правильного варианта. TuneAI проверяет устный ответ: как человек формулирует мысль, насколько полно раскрывает тему, где ошибается и какие материалы стоит повторить.

Возможности

  • устные ответы через микрофон;
  • расшифровка речи через Yandex SpeechKit;
  • поиск по учебным материалам через RAG;
  • оценка ответа по критериям преподавателя;
  • понятная обратная связь: ошибки, пропущенные пункты и рекомендации;
  • роли студента, экзаменуемого, преподавателя и администратора;
  • скрытие вопросов до начала попытки и последовательное открытие;
  • очередь фоновой обработки через RabbitMQ и Transactional Outbox;
  • безопасный mock-режим без расходов на API.

Как это работает

  1. Студент записывает ответ с микрофона.
  2. Yandex SpeechKit превращает речь в текст.
  3. Yandex Text Embeddings помогают найти релевантные фрагменты материалов для RAG.
  4. YandexGPT проверяет ответ по критериям и формирует понятную обратную связь.
  5. Спорные результаты отправляются преподавателю на ручную проверку.

Разбор ответа и итог преподавателя

Технологии Яндекса

  • 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

Yandex AI Studio

По умолчанию проект запускается в 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
pytest

Frontend собирается командой:

cd frontend
npm run build

Лицензия

Исходный код доступен для ознакомления в рамках демонстрации проекта. Все права принадлежат CRUDoshleps. Подробнее см. LICENSE.

About

Система автоматизированной проверки устных ответов с Yandex SpeechKit, YandexGPT и поиском по учебным материалам.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages