TL;DR
EDUADAPT — первый бенчмарк для проверки как LLM адаптируют ответы под школьные классы (Grades 1-12). Почти 48 тысяч вопросов по 9 предметам, сгруппированных в 4 уровня сложности. Исследователи тестировали модели от 1.5B до 24B параметров — все показали один паттерн: на старших классах (9-12) модели выдают 85% качества, на младших (1-5) проваливаются до 60-70%.
Главная находка: Даже когда промпт явно указывает "ответь для ученика 2 класса", модели выдают слишком сложный язык, абстрактные концепции и термины которые 7-летка не поймет. Маленькие модели (1.5-3B) особенно беспомощны — галлюцинации, уход от темы, выдуманные детали. Большие модели (14-24B) лучше справляются с фактами, но все равно не могут по-настоящему упростить объяснение до уровня младшеклассника. Проблема не в знаниях — проблема в адаптации стиля, словаря и глубины под возраст.
Как создавали датасет: Взяли статьи Wikipedia → классифицировали по уровню сложности через Phi-4 → сгенерировали QA-пары для каждого класса → запустили self-reflection (модель оценивает свой выход по 5 критериям: язык, соответствие классу, релевантность, ясность, точность предмета) → отфильтровали только пары с оценкой 8+ по всем критериям → проверили выборку людьми. Из 166k пар после фильтрации осталось 48k качественных.
Схема оценки качества (Self-Reflection)
ШАГ 1: Генерация Модель создает QA-пару для указанного класса
ШАГ 2: Self-Reflection
Та же модель оценивает свой выход по 5 критериям (шкала 1-10):
- Language appropriateness (простота языка)
- Grade alignment (соответствие классу)
- Relevance (релевантность теме)
- Clarity (ясность)
- Subject fit (точность по предмету)
ШАГ 3: Фильтрация Оставить только пары где ВСЕ оценки ≥ 8
Пример применения
Задача: Нужно объяснить ребенку 7 лет (2 класс) что такое фотосинтез для домашнего задания по окружающему миру.
Промпт:
Объясни что такое фотосинтез простыми словами для ученика 2 класса (7-8 лет).
Потом оцени свое объяснение по критериям:
1. Язык простой, короткие предложения, слова которые знает второклассник?
2. Соответствует тому что проходят во 2 классе?
3. Про растения и свет, не уходит в сторону?
4. Понятно без дополнительных объяснений?
5. Научно правильно для этого возраста?
Дай оценку от 1 до 10 по каждому критерию. Если хоть одна оценка меньше 8 — переделай объяснение.
Результат:
Модель выдаст объяснение, потом оценит его сама. Если поставит себе меньше 8 хотя бы по одному критерию — переформулирует. Обычно со 2-3 итерации получается текст который:
- Использует знакомые слова ("солнышко", "питание", "расти" вместо "энергия", "процесс", "синтез")
- Короткие предложения без сложных конструкций
- Сравнения с тем что ребенок видел ("как ты ешь обед чтобы быть сильным")
- Без галлюцинаций и лишних деталей
Почему это работает
Слабость LLM: Модели обучены на взрослых текстах — Wikipedia, научные статьи, форумы. Даже когда промпт говорит "для 2 класса", модель тянет привычные паттерны: термины, абстракции, сложные конструкции. Она знает ответ, но не умеет переформулировать под конкретный возраст. В исследовании показали: модели чаще всего fail на двух вещах — (1) слишком сложный язык и (2) концепции не по возрасту.
Сильная сторона LLM: Модель хорошо оценивает текст по заданным критериям. Она понимает что значит "простой язык для 7-летки" в теории — просто не применяет это автоматически при генерации. Когда ей дают текст и просят оценить "насколько это подходит второкласснику" — она справляется.
Как метод использует это: Self-reflection превращает слабость в инструмент улучшения. Модель генерирует → оценивает свой выход по критериям → видит где провалилась (например "язык сложный — 5/10") → генерирует заново с учетом этого. Это как включить внутреннего редактора который проверяет "а правда ли это для второклассника?"
Рычаги управления:
- Критерии оценки: Добавь/убери критерии под свою задачу. Например, для бизнес-текста замени "grade alignment" на "tone alignment" (официальный / дружеский)
- Порог фильтрации: Вместо "все критерии ≥ 8" можно "средняя оценка ≥ 7" — если нужно быстрее, не так строго
- Число итераций: Явно укажи "если меньше 8 — переделай до 3 раз максимум" чтобы не зациклилось
- Вес критериев: Можно явно сказать "clarity важнее всего, остальные могут быть 7+"
Шаблон промпта
{задача}
Потом оцени свой ответ по критериям:
1. {критерий_1} — да/нет или оценка 1-10?
2. {критерий_2} — да/нет или оценка 1-10?
3. {критерий_3} — да/нет или оценка 1-10?
[добавь критерии под свою задачу]
Дай оценку по каждому критерию. Если {условие_неуспеха}, переделай ответ с учетом слабых мест.
Что подставлять:
{задача}— твой запрос с явным указанием аудитории/формата ("объясни для ребенка 7 лет", "напиши email в официальном тоне"){критерий_X}— конкретные проверки под задачу (простота языка, тон, структура, полнота, точность){условие_неуспеха}— когда переделывать ("хоть одна оценка < 8", "средняя < 7", "критерий X меньше 9")
Примеры критериев для разных задач:
- Для детей: язык простой? соответствует возрасту? понятно без взрослого?
- Для клиента: тон уважительный? все вопросы покрыты? конкретные шаги есть?
- Для питча: цепляет с первой фразы? понятно за 30 секунд? есть конкретные цифры?
- Для техдоки: структура логичная? термины объяснены? можно воспроизвести по инструкции?
Ограничения
⚠️ Барьер адаптации: Чем младше аудитория, тем хуже работает. Для классов 1-5 даже большие модели (14-24B) проваливают язык и концепции — выдают термины и абстракции которые дети не поймут. Для классов 9-12 работает намного лучше (85% vs 60-70%).
⚠️ Размер модели важен: Маленькие модели (1.5-3B) показали критические проблемы — галлюцинации, уход от темы, выдуманные детали. Даже с self-reflection они не дотягивают до приемлемого качества для младших классов. Минимум 7B параметров для адекватной работы.
⚠️ Self-reflection не магия: Модель может неправильно оценить свой выход. Например, поставить 9/10 за "простоту языка" когда там термины вроде "фотосинтез" или "экосистема" для второклашки. Критерии помогают, но не гарантируют идеальную адаптацию.
⚠️ Субъективные критерии: "Подходит ли для 7-летки" — размытая штука. Один ребенок читает энциклопедии, другой с трудом осиливает "Колобка". Self-reflection работает на "средний уровень", но не учитывает индивидуальные различия.
Как исследовали
Команда собрала статьи Wikipedia по 9 предметам (биология, физика, химия и т.д.) и пропустила их через Phi-4 (14B модель) чтобы определить для какого класса подходит текст. Результат подтвердил известную проблему: 85% текстов Wikipedia оказались для классов 6-12, только 14% для младших классов 1-5. Это объясняет почему Wikipedia плохой источник для детского контента — слишком сложный язык по умолчанию.
Дальше использовали тот же Phi-4 чтобы сгенерировать QA-пары для каждого уровня. Для каждого класса написали отдельный промпт с указаниями в духе "используй простые короткие предложения для 6-8 летних детей" (для классов 1-2) или "фокусируйся на моделировании систем и количественных отношениях" (для классов 9-12). Всего намайнили 166 тысяч пар.
Потом запустили self-reflection: та же модель оценивала каждую пару по 5 критериям (язык, соответствие классу, релевантность, ясность, точность предмета) по шкале 1-10. Оставили только те где ВСЕ оценки ≥ 8. Это жесткий фильтр — из 166k осталось всего 48k пар (29%). Значит 71% сгенерированного контента провалили хотя бы один критерий.
Что удивило: Когда разобрали отбракованные пары, увидели четкий паттерн. Пары с оценками ниже 5 проваливали grade alignment — либо слишком сложные концепции для младших классов, либо слишком примитивные для старших. Пары с оценками 5-8 были лучше по языку, но дрейфовали по теме — вместо научных концептов фокусировались на бытовых деталях (для младших классов) или наоборот уходили в слишком техническую специфику (для старших).
Инсайт для практики: Даже модель которая создает контент для определенного класса не может автоматически проверить его качество без явных критериев. Self-reflection помог отфильтровать 71% неподходящего контента — но это значит что с первого раза модель промахивается в 7 случаях из 10.
Потом взяли выборку (10% = 1000 пар) и дали трем живым людям с опытом в образовательном контенте. Они проверили по тем же критериям и поставили в среднем 7.7-8.9 баллов в зависимости от класса (младшие классы хуже, старшие лучше). Между экспертами была высокая согласованность (Fleiss' Kappa 0.67-0.86) — значит критерии работают, не размытые.
На этом датасете протестировали 9 open-source моделей от SmolLM-1.7B до Mistral-24B. Для MCQ считали точность ответов. Для открытых вопросов использовали LLM-as-a-Judge — три модели (GPT-4o, Qwen2.5-72B, Llama3.3-70B) независимо оценивали каждый ответ по тем же критериям, усреднение давало финальный скор.
Результаты показали драматический провал на младших классах: даже лучшие модели (Qwen2.5-14B, Mistral-24B) выдавали только 60-70% качества на классах 1-5 против 85% на классах 9-12. Маленькие модели показали катастрофу — Gemma-2B на младших классах выдавал только 40% качества с критическими проблемами: галлюцинации, выдуманные детали, уход от темы, сложные термины.
Почему это важно: Исследование количественно подтвердило то что многие родители/учителя интуитивно чувствовали — LLM плохо работают с маленькими детьми. Даже когда промпт явно говорит "для 2 класса", модель тянет сложный язык и концепции. И это не решается просто большей моделью — разница между 14B и 24B не драматическая, фундаментальная проблема в том что модели не обучены адаптировать стиль под возраст.
Ресурсы
Оригинальная работа: EDUADAPT: A Question Answer Benchmark Dataset for Evaluating Grade-Level Adaptability in LLMs
Код и датасет: https://github.com/NaumanNaeem/EduAdapt
Авторы: Numaan Naeem (MBZUAI), Abdellah El Mekki, Muhammad Abdul-Mageed (University of British Columbia)
