194 lines
No EOL
11 KiB
Markdown
194 lines
No EOL
11 KiB
Markdown
# EGE-Checker — Отчёт о проделанной работе
|
||
|
||
**Период:** март — май 2026
|
||
**Команда:** Лаборатория Лямбда 3.0, МАИ
|
||
|
||
---
|
||
|
||
## 1. Цель проекта
|
||
|
||
Скилл для автоматической проверки заданий ЕГЭ с выставлением баллов по официальным критериям ФИПИ 2026. Два модуля:
|
||
|
||
- **Модуль 1 — Сочинение (русский язык):** OCR рукописных бланков + оценка по критериям К1–К10
|
||
- **Модуль 2 — Говорение (английский язык):** STT аудиозаписей через Whisper + оценка по 4 заданиям
|
||
|
||
Целевой сценарий использования: помощник для эксперта — модель проверяет работу параллельно с человеком, показывает своё мнение по каждому критерию с подробным разбором.
|
||
|
||
---
|
||
|
||
## 2. Архитектура и стек
|
||
|
||
### Стек
|
||
|
||
| Компонент | Инструмент |
|
||
|-----------|-----------|
|
||
| Агент | ZeroClaw (Rust) / OpenClaw |
|
||
| LLM | Qwen3.5-122B (основная), GPT-4o, Claude Opus (тестирование) |
|
||
| OCR рукописи | Vision-возможности LLM (Qwen Vision) |
|
||
| STT аудио | faster-whisper (модель medium, локально) |
|
||
| Интерфейс | Telegram, Matrix |
|
||
|
||
### Файловая структура скилла
|
||
|
||
```
|
||
ege-checker/
|
||
├── SKILL.md # Инструкции и логика агента
|
||
├── recognition.py # STT-модуль (faster-whisper)
|
||
└── references/
|
||
├── russian-essay-criteria.md # Критерии К1–К10, ЕГЭ 2026
|
||
└── english-speaking-criteria.md # Критерии 4 заданий говорения, ЕГЭ 2026
|
||
```
|
||
|
||
### Схема работы (текущая)
|
||
|
||
```
|
||
Telegram / Matrix - сообщение
|
||
↓
|
||
Claw-агент
|
||
↓
|
||
Агент (Qwen3.5-122B) + SKILL.md
|
||
↓
|
||
Ответ в Telegram
|
||
```
|
||
|
||
---
|
||
|
||
## 3. Реализованные компоненты
|
||
|
||
### 3.1. SKILL.md — логика агента
|
||
|
||
Описывает два режима работы для каждого модуля:
|
||
|
||
**Модуль 1 (сочинение):**
|
||
- Только сканы → распознать рукопись, сообщить количество слов, запросить исходный текст
|
||
- Сканы + исходный текст + тема → распознать + оценить К1–К10 с объяснением снятий
|
||
|
||
**Модуль 2 (говорение):**
|
||
- Только аудио → транскрибировать через recognition.py, вывести текст
|
||
- Аудио + задание → транскрибировать + оценить по критериям
|
||
|
||
Поддержка нескольких аудиофайлов (каждое задание отдельно).
|
||
|
||
### 3.2. recognition.py — STT-модуль
|
||
|
||
Транскрибирует аудиофайлы с ответами ученика через faster-whisper. Ключевые возможности:
|
||
|
||
- Автовыбор устройства (CPU / CUDA)
|
||
- VAD-фильтрация тишины и пауз
|
||
- WHISPER_PROMPT с описанием формата ответов для точного распознавания
|
||
- Сегментация с таймкодами
|
||
- Возвращает `TranscriptResult`: текст, язык, длительность, сегменты
|
||
|
||
Поддерживаемые форматы: MP3, WAV, M4A, OGG, WEBM, FLAC.
|
||
|
||
### 3.3. Критерии ЕГЭ 2026
|
||
|
||
**Русский язык (К1–К10), итого 22 балла:**
|
||
|
||
| К1 | К2 | К3 | К4 | К5 | К6 | К7 | К8 | К9 | К10 |
|
||
|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:---:|
|
||
| 1 | 3 | 2 | 1 | 2 | 1 | 3 | 3 | 3 | 3 |
|
||
|
||
**Английский язык — Говорение (4 задания), итого 20 баллов:**
|
||
|
||
| Задание | Тип | Макс. баллов |
|
||
|---------|-----|:------------:|
|
||
| 1 | Чтение вслух | 1 |
|
||
| 2 | Диалог-расспрос (4 вопроса) | 4 |
|
||
| 3 | Диалог-интервью (5 ответов) | 5 |
|
||
| 4 | Монолог (3 критерия: содержание 4б + организация 3б + язык 3б) | 10 |
|
||
|
||
---
|
||
|
||
## 4. Тестирование
|
||
|
||
### 4.1. OCR + оценка сочинения (RESULTS.md)
|
||
|
||
Протестировано на реальных работах учеников с известными баллами экспертов.
|
||
|
||
**Сводка по моделям:**
|
||
|
||
| Модель | Характеристика |
|
||
|--------|---------------|
|
||
| **qwen3.5-122b** | Основная рабочая модель. Хорошее качество, часть работ — точное совпадение с экспертом (±0–1 балл) |
|
||
| **gpt-4o** | Минимальная предвзятость, на ряде работ точнее qwen. Лучший результат: 22/22 |
|
||
| **gpt-5-pro** | Стабильно высокое качество, несколько работ — 21–22/22 |
|
||
| **claude-opus-4-6** | Системно занижает оценки, закончились токены до завершения тестирования |
|
||
|
||
**Примеры результатов (выборка):**
|
||
|
||
| Балл эксперта | Лучший балл модели | Лучшая модель |
|
||
|:-------------:|:-----------------:|---------------|
|
||
| 22 | 22 | qwen3.5-122b |
|
||
| 22 | 22 | qwen3.5-122b |
|
||
| 20 | 22 | qwen3.5-122b |
|
||
| 22 | 22 | gpt-4o |
|
||
| 22 | 22 | gpt-4o / qwen |
|
||
|
||
Типичное расхождение: ±1–3 балла. На сложных работах с плохим OCR (низкий OCR Accuracy) расхождение возрастает.
|
||
|
||
**OCR Accuracy** измерена для части работ. Диапазон: 57–99%. Низкая точность (Бакирова 57%, Агупова 68%) коррелирует с большим расхождением в оценке.
|
||
|
||
### 4.2. Оценка говорения (transcriptions-report.md)
|
||
|
||
Протестировано на 14 учениках из 4 регионов (Адыгея, Башкортостан, Бурятия, Алтай).
|
||
|
||
**Средние показатели по заданиям:**
|
||
|
||
| Метрика | Задание 1 | Задание 2 | Задание 3 | Задание 4 |
|
||
|---------|:---------:|:---------:|:---------:|:---------:|
|
||
| Avg True (эксперт) | 0.786 | 2.429 | 1.857 | 5.857 |
|
||
| Avg Pred (модель) | 0.357 | 2.286 | 1.357 | 7.000 |
|
||
| MAE | **0.429** | **0.143** | **0.500** | **1.143** |
|
||
|
||
**Выводы по заданиям:**
|
||
- **Задание 2** — наиболее точное (MAE 0.143). Объективный критерий (форма вопроса) хорошо распознаётся
|
||
- **Задание 1** — систематическое занижение (Avg Pred 0.357 vs True 0.786). Модель строже экспертов в оценке фонетики
|
||
- **Задание 3** — заметное занижение (MAE 0.500). Проблема: ответы ученика идут сплошным текстом, сложно разбить на 5 отдельных ответов
|
||
- **Задание 4** — систематическое завышение (Avg Pred 7.000 vs True 5.857). Модель щедрее оценивает монолог
|
||
|
||
---
|
||
|
||
## 5. Текущее состояние и открытые вопросы
|
||
|
||
### Работает
|
||
- ✅ recognition.py запускается локально в прокси, транскрипт передаётся агенту готовым
|
||
- ✅ Критерии ЕГЭ 2026 актуализированы (русский + говорение английский)
|
||
- ✅ SKILL.md описывает корректную логику для обоих модулей
|
||
- ✅ OCR + оценка сочинения протестированы на реальных работах
|
||
|
||
### Открытые вопросы
|
||
|
||
**Оценка говорения:**
|
||
- Задание 1 (чтение): систематическое занижение — нужна калибровка критерия фонетики
|
||
- Задание 3 (ответы): нужен метод сегментации сплошного транскрипта на отдельные ответы
|
||
- Задание 4 (монолог): систематическое завышение — нужны few-shot примеры для калибровки
|
||
|
||
**OCR:**
|
||
- Нет золотого стандарта для измерения точности OCR — нужна разметка эталонного датасета
|
||
- Qwen Vision может исправлять рукописные ошибки "на лету", что искажает результат OCR
|
||
|
||
**Инфраструктура:**
|
||
- Контекст задания (исходный текст из ФИПИ) не добавляется автоматически — нужна интеграция или ручная подача
|
||
- Тестирование говорения проводилось на небольшой выборке (14 человек, 4 региона) — нужно расширить
|
||
|
||
---
|
||
|
||
## 6. Соответствие дорожной карте
|
||
|
||
| Фаза | Срок по плану | Статус |
|
||
|------|:-------------:|--------|
|
||
| Ф1: Базовый прототип | 23 марта — 5 апреля | ✅ Выполнено. Скилл работает на тестовом наборе |
|
||
| М1: Первые цифры расхождения | 5 апреля | ✅ RESULTS.md + transcriptions-report.md |
|
||
| Ф2: Улучшение распознавания | 6–19 апреля | ✅ Выполнено. OCR итерации проведены, STT настроен |
|
||
| М2: OCR >90%, STT >85% | 19 апреля | ✅ OCR: достигнут на чистых бланках. STT: выявлены систематические отклонения |
|
||
| Ф3: Стабильность оценки | 20 апреля — 10 мая | ✅ Выполнено. Корректировка критериев проверки |
|
||
| Ф4: Интеграция и финализация | 11–24 мая | 🔄 В процессе. |
|
||
|
||
---
|
||
|
||
## 8. Дальнейшая работа
|
||
|
||
1. **Расширение тестовой выборки:** протестировать говорение на 30+ работах из разных регионов для статистически значимых выводов
|
||
|
||
2. **Интеграция с платформой:** после готовности agent-api от команды платформы — переехать с локального Claw на общего агента |