ExamLab
team02
RED
Service down
Connection failed
Timeout or DNS error
Today (9:00 MSK — 9:00 MSK)
0
Commits
0
PRs Merged
0
PRs Opened
0
Issues Opened
0
Issues Closed
All Time
24
Commits
0
PRs Merged
0
PRs Opened
0
Issues Opened
0
Issues Closed
$16.60
API Usage
7.8
Overall
8
ux
7
functionality
9
performance
ux (8/10)
Интерфейс очень понятный и логично структурированный. Навигация по секциям работает корректно (Возможности, Как работает, Цены). Лендинг хорошо проработан: есть блок с проблемой ('Рутина убивает рост'), решением, функциями, интеграциями, пошаговым процессом работы и тарифами. Call-to-action кнопки яркие и заметные. Мобильная версия адаптирована хорошо. Единственные минусы: ссылки в футере на 'Политику конфиденциальности' и 'Условия использования' ведут в никуда (заглушки), и демонстрационный переключатель План v1/v2 не меняет контент (одинаковые данные).
functionality (7/10)
Лендинг-страница работает корректно. Все CTA-кнопки ведут на работающий Telegram-бот (@exam_lab_bot). Навигация по якорным ссылкам (#features, #how-it-works, #pricing) работает плавно. Интерактивный демо-переключатель планов (v1/v2) кликабелен, но не меняет контент — это скорее UI-демонстрация. Нет форм для ввода данных на самом сайте — весь функционал перенесён в Telegram-бот, что является осознанным архитектурным решением.
performance (9/10)
Страница загружается очень быстро, практически мгновенно. Единственная ошибка в консоли — 404 для favicon.ico (мелкий баг). Прокрутка плавная, переходы между секциями быстрые. Никаких задержек или зависаний не обнаружено.
Findings (20)
high
bug
Ссылка 'Условия использования' ведёт на '#' (заглушка)
high
bug
Переключатель План v1/План v2 не меняет содержимое демо-блока
high
bug
Broken: Ссылка 'Политика конфиденциальности' (заглушка)
high
bug
Broken: Ссылка 'Условия использования' (заглушка)
high
bug
Broken: Переключатель демо-планов (не меняет контент)
Commits & Code Churn
31 Jan — 6 Feb 2026PR Activity
31 Jan — 6 Feb 2026Languages
README
ExamLab

**Telegram-бот для автоматической генерации и корректировки учебных планов подготовки к A-Level**
[Открыть бота](https://t.me/exam_lab_bot) | [Landing Page](https://team02.camp.aitalenthub.ru) | [Документация](#как-это-работает)
О проекте
ExamLab помогает репетиторам и онлайн-школам создавать детальные учебные планы для подготовки к международным экзаменам. Бот использует мультиагентную AI-систему для анализа кодификатора и генерации персонализированного расписания с учётом уровня знаний ученика, даты экзамена и цели занятий.
Ключевые преимущества
| Было | Стало с ExamLab |
|---|---|
| 3-4 часа на создание плана | 2 минуты |
| Ручной пересчёт после отмен | Автокорректировка |
| Планы в Word/Excel вручную | Google Sheets автоматически |
| Забытые темы в syllabus | 100% покрытие |
| Вручную вносить расписание | Подлючение к Google Calendar |
| --- |
Возможности
Генерация плана
- 2-агентная AI-система: Стратег распределяет время, Детальщик создаёт уроки
- Полный syllabus: все разделы экзамена включены, ни одна тема не пропущена
- Персонализация: учёт сильных/слабых сторон и целей ученика
- Домашние задания: конкретные задания с формулами к каждому уроку
- Контрольные работы: тесты после логически связанных тем
- Mock Exams: пробные экзамены в последний месяц подготовки
Корректировка плана
- Анализ прогресса: читает статусы, оценки и комментарии из Google Sheets
- Умная фильтрация: пройденные темы исключаются из нового плана
- Учёт проблем: темы с низкими оценками добавляются на повторение
- Версионирование: каждая корректировка — новый лист (v1, v2, v3...)
- Динамический отчёт: что учтено при корректировке
Google Sheets интеграция
- Автоматическое создание таблицы для каждого ученика
- Защита данных: колонки оценок защищены от случайного редактирования
- Форматирование: цветовая кодировка разделов и тестов
- Статусы уроков: План → Пройден → Перенесён
Google Calendar
- Автоматическое добавление уроков в календарь
- Напоминания об экзамене
Архитектура AI-системы
ExamLab использует мультиагентный подход с разделением ответственности:
┌─────────────────────────────────────────────────────────────┐
│ ORCHESTRATOR (Python) │
│ Координация агентов, валидация, retry-логика │
└─────────────────────────────────────────────────────────────┘
│
┌──────────────────┼──────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ STRATEGIST │ │ DETAILER │ │ BATCH PROC │
│ │ │ │ │ │
│ • Анализ │ │ • Генерация │ │ • Обработка │
│ syllabus │ │ уроков │ │ >30 уроков │
│ • Распред. │ │ • Домашки │ │ • Параллель- │
│ времени │ │ • Тесты │ │ ная генер. │
│ • Стратегия │ │ • Mock exams │ │ │
└───────────────┘ └───────────────┘ └───────────────┘
│ │ │
└──────────────────┴──────────────────┘
│
▼
┌───────────────┐
│ VALIDATION │
│ │
│ • Структура │
│ • Даты │
│ • Покрытие │
└───────────────┘
Почему не LangChain/LangGraph?
- Простота: прямые вызовы OpenRouter API без overhead фреймворков
- Контроль: полное управление промптами и retry-логикой
- Скорость: меньше зависимостей = быстрее старт и выполнение
- Гибкость: легко адаптировать под специфику образовательных планов
Поддерживаемые экзамены
| Экзамен | Предметы | Статус |
|---|---|---|
| A-Level | Physics | ✅ Ready |
| A-Level | Mathematics | ✅ Ready |
| A-Level | Biology | ✅ Ready |
| IB Diploma | Physics, Math, Biology | 🚧 В разработке |
| IGCSE | Physics, Math, Biology | 🚧 В разработке |
Как это работает
┌─────────────────────────────────────────────────────────────┐
│ 1. РЕГИСТРАЦИЯ │
│ └─ Имя, Gmail для доступа к таблицам │
├─────────────────────────────────────────────────────────────┤
│ 2. ДОБАВЛЕНИЕ УЧЕНИКА │
│ └─ Предмет, экзамен, дата, расписание, цель │
├─────────────────────────────────────────────────────────────┤
│ 3. ГЕНЕРАЦИЯ ПЛАНА (~2 мин) │
│ └─ AI создаёт детальный план │
├─────────────────────────────────────────────────────────────┤
│ 4. РАБОТА С ТАБЛИЦЕЙ │
│ └─ Отмечайте прогресс, ставьте оценки │
├─────────────────────────────────────────────────────────────┤
│ 5. КОРРЕКТИРОВКА (по необходимости) │
│ └─ AI пересчитывает план с учётом прогресса │
└─────────────────────────────────────────────────────────────┘
Технологический стек
| Категория | Технология |
|---|---|
| Backend | Python 3.11+, asyncio |
| Telegram | aiogram 3.x |
| Database | SQLAlchemy + Alembic (PostgreSQL) |
| AI/LLM | OpenRouter API (Claude Sonnet) |
| Sheets | Google Sheets API v4 |
| Calendar | Google Calendar API v3 |
Структура проекта
exam-lab/
├── ai/ # AI-модуль генерации планов
│ ├── __init__.py # Загрузка syllabus
│ ├── plan_generator.py # Стратег + Детальщик + Валидация
│ └── syllabuses/ # JSON-файлы syllabus по предметам
├── bot/ # Telegram бот
│ ├── handlers/ # Обработчики команд
│ │ ├── calendar.py # Google Calendar
│ │ ├── plan.py # Генерация и корректировка
│ │ ├── registration.py
│ │ └── students.py
│ ├── keyboards.py # Inline-клавиатуры
│ ├── messages.py # Тексты сообщений
│ └── main.py # Точка входа
├── db/ # База данных
│ ├── models.py # SQLAlchemy модели
│ └── queries.py # CRUD операции
├── sheets/ # Google Sheets интеграция
│ └── client.py # API клиент
├── landing/ # Landing page
│ └── index.html
├── alembic/ # Миграции БД
└── tests/ # Тесты
Команда
Разработано в рамках AI Talent Hub 2026
Лицензия
MIT License. См. LICENSE для деталей.
**[Попробовать бота](https://t.me/exam_lab_bot)** | **[Сообщить о баге](https://github.com/your-org/exam-lab/issues)**
Events History
Total: 24 events
Page 1 of 1