Об этом проекте
LearnMate AI — это ИИ-помощник для учёбы, который организует учебные материалы в Пространства и Проекты, обрабатывает загруженные PDF-файлы и предоставляет Репетитора, отвечающего на вопросы только на основе загруженного контента с указанием страниц. Если материал не охватывает вопрос, система явно возвращает ответ «недостаточно доказательств». Тест нацелен на слабые концепции, оценивает ответы в свободной форме с обратной связью и обновляет баллы освоения по каждой концепции. Фоновые задания генерируют Рекомендации, основанные на собственном материале пользователя, а панель Роста показывает тенденции.
Архитектура сочетает фронтенд на React/Vite с API на Node.js/Express и фоновыми рабочими процессами BullMQ. PDF-файлы обрабатываются постранично: извлечение текста, разбиение на фрагменты, создание эмбеддингов через BAAI/bge-small-en-v1.5 в pgvector и извлечение концепций. Ответы репетитора используют поиск по сходству среди фрагментов проекта и проверенный по схеме JSON для обеспечения достаточности доказательств. Выбор вопросов теста оценивает концепции по разрыву в освоении, недостаточной практике, давности и ошибкам. Освоение использует историю только с добавлением с весовым коэффициентом 60/40 для новых данных.
Стек включает Prisma с PostgreSQL (Neon) и pgvector, Redis (Upstash) для очередей заданий, Groq для вызовов LLM, Hugging Face для размещённых эмбеддингов, Cloudinary для хранения PDF и JWT-аутентификацию с HTTP-only куки. Локальная настройка требует Node.js 20+, базу данных Postgres с pgvector, Redis и ключи API для Groq, Hugging Face и Cloudinary. Проект включает интеграционные тесты с реальной инфраструктурой, охватывающие изоляцию между пользователями, доступ администратора, математику освоения, адаптивный выбор, обоснованность репетитора и идемпотентность обработки материалов. Развёртывание документировано для Vercel (фронтенд) и Render (объединённый API и рабочий процесс).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.