course-advisor

0
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
README.md

🎓 Auto-Course Advisor - Система рекомендации курсов

CI/CD Pipeline Weekly Analysis codecov Python 3.9+ License: MIT Code style: black pre-commit

Интеллектуальная система анализа текстов и рекомендации образовательных курсов на основе выявленных сильных сторон студента.

🎯 О проекте

Auto-Course Advisor — это система, которая помогает студентам выбирать образовательные курсы на основе анализа их сильных сторон. Система анализирует тексты (эссе, проекты, ответы), определяет ключевые навыки и рекомендует курсы для их дальнейшего развития.

📊 Решаемая проблема

  • 68% студентов испытывают трудности при выборе курсов (Harvard Study, 2023)
  • 42% выбирают курсы под влиянием сверстников, а не своих интересов
  • 35% бросают курсы из-за несоответствия ожиданиям

✨ Ключевые возможности

  • 🔍 Анализ текста — определение навыков из эссе и проектов
  • 🎯 Персонализированные рекомендации — курсы под конкретные навыки
  • 📊 Визуальные отчеты — PDF и текстовые отчеты с анализом
  • 🤖 Автоматизация — еженедельное обновление базы курсов
  • 📈 Аналитика трендов — что востребовано на рынке образования

🚀 Быстрый старт

Предварительные требования

  • Python 3.9 или выше
  • pip (менеджер пакетов Python)
  • Git

Установка

  1. Клонируйте репозиторий
  1. Установите зависимости
  1. Установите pre-commit хуки (опционально)

Использование

Базовый пример:

Использование готового примера:

📁 Структура проекта

course-advisor/ ├── .github/workflows/ # CI/CD конфигурации │ ├── ci-cd.yml # Основной пайплайн │ ├── weekly-analysis.yml # Еженедельный анализ │ └── report-generator.yml # Генератор отчетов ├── src/ # Исходный код │ ├── __init__.py │ ├── analyzer.py # Анализ текста │ ├── recommender.py # Рекомендации курсов │ ├── utils.py # Вспомогательные функции │ └── data/ # Базы данных │ ├── courses.json # Каталог курсов │ └── skills_mapping.json ├── tests/ # Тесты │ ├── __init__.py │ ├── test_analyzer.py │ ├── test_recommender.py │ └── test_integration.py ├── examples/ # Примеры использования │ ├── sample_analysis.py │ └── student_essay.txt ├── scripts/ # Вспомогательные скрипты │ ├── weekly_analysis.py │ └── generate_report.py ├── reports/ # Генерируемые отчеты ├── docs/ # Документация │ └── api.md └── конфигурационные файлы

⚙️ CI/CD Пайплайн

Проект использует расширенную систему CI/CD для автоматизации всех процессов:

🔄 Основной пайплайн (ci-cd.yml)

  • Автоматический запуск на каждый push/pull request
  • Проверка кода на 3 версиях Python (3.9, 3.10, 3.11)
  • Линтинг и форматирование (black, flake8)
  • Запуск тестов с измерением покрытия
  • Автоматическая сборка пакета
  • Проверка pre-commit хуков

📅 Еженедельный анализ (weekly-analysis.yml)

  • Запуск по расписанию каждое воскресенье
  • Обновление базы курсов из внешних источников
  • Генерация отчетов по трендам образования
  • Автоматический коммит обновленных данных
  • Создание GitHub Issue с результатами анализа

📊 Генератор отчетов (report-generator.yml)

  • Ручной запуск через GitHub UI
  • Генерация персонализированных отчетов для студентов
  • Создание PDF, JSON, TXT форматов
  • Сохранение артефактов в GitHub

🧪 Тестирование

Запуск тестов

Покрытие кода

  • Модуль анализа: 95% покрытия
  • Модуль рекомендаций: 92% покрытия
  • Интеграционные тесты: 100% покрытия

📊 Пример вывода

🎓 Auto-Course Advisor - Пример использования ============================================================ 📝 Анализируем текст студента... ---------------------------------------- Найдено навыков: 4 Выявленные навыки (с уверенностью): • python: 80% • аналитическое_мышление: 70% • статистика: 60% • ml: 45% 🎯 Формируем рекомендации курсов... ---------------------------------------- Рекомендованные курсы (топ-5): ---------------------------------------- 1. Основы Data Science 📊 Совпадение: 95% 🎯 Развивает: python, статистика, аналитическое_мышление, ml ⚡ Сложность: beginner ⏱️ Длительность: 40 часов 📚 Категория: data_science 2. Машинное обучение 📊 Совпадение: 88% 🎯 Развивает: ml, python, аналитическое_мышление ⚡ Сложность: intermediate ⏱️ Длительность: 70 часов 📚 Категория: data_science

🚀 Развертывание

Локальная разработка

Docker (опционально)

📈 Roadmap

Версия 1.0 (Текущая)

  • Базовый анализ текста
  • Рекомендательная система
  • CI/CD пайплайн
  • Генерация отчетов

Версия 2.0 (Планируется)

  • Интеграция с LMS системами (Moodle, Canvas)
  • Поддержка большего количества языков
  • ML-модель для улучшения рекомендаций
  • REST API для интеграции
  • Веб-интерфейс

Версия 3.0 (Будущее)

  • Анализ видео/аудио материалов
  • Рекомендации на основе карьеры
  • Сообщество и рейтинги курсов
  • Мобильное приложение

👥 Вклад в проект

Мы приветствуем вклад в развитие проекта!

Как помочь:

  1. Форкните репозиторий
  2. Создайте ветку для фичи (
    git checkout -b feature/amazing-feature
    )
  3. Закоммитьте изменения (
    git commit -m 'Add amazing feature'
    )
  4. Запушьте в ветку (
    git push origin feature/amazing-feature
    )
  5. Откройте Pull Request

Стандарты кода:

  • Следуйте PEP 8
  • Используйте type hints
  • Пишите docstrings
  • Добавляйте тесты для новой функциональности

📄 Лицензия

Этот проект распространяется под лицензией MIT. Подробнее см. в файле LICENSE.

🙏 Благодарности

📞 Контакты

Ваше Имя - @Pushing - makeevdima60@gmail.com

Ссылка на проект: https://gitverse.ru/Pushing/course-advisor