Иногда мне приходится проверять домашнее задание у детей. Как правило, я не смотрю в тетрадь, а начинаю диалог с фразы “А почему ты так сделал?”.
Детям не всегда нравится такой подход, но он определенно дает результат. Чтобы перевести негатив с себя на бездушную машину, я решил сделать приложение для проверки усвоения материала.
Возник вопрос: как же построить диалог с нейросетью, чтобы он был полезным? Здесь мне на помощь пришел университетский курс философии – можно попробовать построить сократический диалог.
Основные этапы и принципы работы такого диалога
-
Инициация (Постановка проблемы).
Учитель задает открытый вопрос, побуждающий к дискуссии. Ученик высказывает свое первоначальное мнение или гипотезу. -
Ирония (Обнаружение противоречий).
Учитель не критикует ответ напрямую. Он задает новые вопросы, которые выявляют скрытые логические ошибки или слабые места в позиции ученика. Ученик осознает свое незнание или заблуждение. -
Майевтика (Рождение знания).
Учитель через серию наводящих, структурированных вопросов помогает ученику самостоятельно переосмыслить проблему. Ученик шаг за шагом формулирует правильный вывод и находит истину.
Первый промт был примерно таким
Режим: обучение по методу Сократа.
– Не давай готовый ответ сразу. Веди наводящими вопросами, проверяй ход мыслей.
– Короткие реплики (2–5 предложений). Адаптируй сложность под ответы ученика.
Диалог получался неплохим, но быстро заканчивался и в нем не было изюминки. Я решил поискать, что же могут предложить … маркетологи для вовлечения ученика. В итоге были выбраны несколько интересных концепций.
Curiosity loop (петля любопытства). Психологический и поведенческий механизм, при котором сильное желание узнать что-то новое побуждает человека к действию, а получение информации вызывает прилив дофамина и заставляет повторять этот цикл снова и снова.
Провалиться в кроличью нору можно за 4 шага
-
Информационный разрыв (Trigger): человек сталкивается с загадкой, незавершенной историей или кликбейтом. Возникает дискомфорт от осознания “я чего-то не знаю”.
-
Действие (Action): чтобы устранить этот дискомфорт, человек совершает действие – кликает на ссылку, дочитывает главу, открывает уведомление.
-
Вознаграждение (Reward): получение ответа или новой порции информации. В мозге происходит выброс дофамина – гормона удовольствия и предвкушения.
-
Инвестиция (Investment / Next Trigger): полученный ответ не закрывает тему полностью, а открывает новые вопросы, запуская следующий виток петли.
Для тех кто попал в петлю, можно добавить немного разнообразия в виде misconceptions.
В контексте обучения этот термин означает ложные убеждения, которые формируются у человека на основе поверхностного опыта, искаженной информации или интуитивной логики.
Также неплохо было бы добавить проверку через самообъяснение (метод Фейнмана).
Метод Фейнмана (Feynman Technique) – это ментальная модель и техника обучения, которая позволяет быстро понять и намертво запомнить любую сложную тему. В основе метода лежит простое правило: Если вы не можете объяснить это простыми словами, значит, вы этого не понимаете.
Итоговый промт стал примерно таким (пропущены некоторые технические детали и уточнения)
Режим: обучение по методу Сократа.
– Не давай готовый ответ сразу. Веди наводящими вопросами, проверяй ход мыслей.
– Короткие реплики (2–5 предложений). Адаптируй сложность под ответы ученика.
– Создавай curiosity loop: недоговаривай, задавай “что будет если”, проси сделать предположение, а затем объясняй.
– Проси пересказать своими словами: “объясни своими словами”, “объясни как для младшего класса”.
– Используй misconceptions для ловушек и контрпримеров – не называй их списком ученику.
Результат можно посмотреть ниже.
Как внутри устроены педагогические техники
1. Петля любопытства (curiosity loop)
Модель получает правило:
Никогда не давай ответ сразу. Каждый раз, когда ученик что-то ответил, задавай новый вопрос, который открывает следующий слой темы. Используй фразы: “А что будет, если…”, “Как думаешь, почему…”, “Предположи, а потом я объясню”.
В реальности это работает так:
Ученик спрашивает “Что такое демос?”. Модель не говорит: “Это народ”. Она говорит: “Это народ. А как ты думаешь, любой ли житель Афин входил в этот народ?” – и диалог продолжается.
2. Ловушки на типичные ошибки (misconceptions)
Для каждой темы в системную инструкцию загружается список типичных заблуждений (не показывается ученику).
Модели даётся инструкция:
Если ученик в своём ответе повторил одну из таких ошибок, не говори “Это неправильно”. Задай уточняющий вопрос, который приведёт к противоречию.
Пример: ученик говорит “Демократия в Афинах работала так же, как сейчас”. Модель отвечает: “Интересно. А кто именно голосовал в Афинах – все взрослые или только мужчины с определённым статусом?”
3. Метод Фейнмана (объясни простыми словами)
Модель получает правило:
Примерно раз в 3–4 реплики проси ученика пересказать тему своими словами. Если он использует сложные термины – попроси объяснить так, будто слушаешь младшеклассника.
Пример: “Ты правильно описал остракизм. А теперь представь, что объясняешь это десятилетнему брату. Как бы ты это сказал?”
4. Сократовская ирония и майевтика
Если в ответе ученика есть противоречие – не указывай на него прямо. Задай вопрос, который заставит заметить противоречие самому. Не переходи к следующей теме, пока ученик не сформулировал правильный вывод своими словами.
На мой взгляд, получился достаточно интересный инструмент. Очевидно, что сервис не волшебная палочка. Если ребенок не горит желанием изучать Древнюю Грецию, то никакие ухищрения не помогут. Но если вдруг он проявит интерес – у него будет отличный инструмент для удовлетворения любопытства.
Для всех любознательных, дочитавших статью до конца, привожу технические датали.
Базовые параметры API
|
Параметр |
Значение |
Зачем так |
|---|---|---|
|
|
|
Стандартная чат-модель DeepSeek через API |
|
|
0 |
Минимум случайности – диалог идёт по заданным правилам, а не “фантазирует”. В первых версиях ставил выше, но диалог часто срывался в прямое объяснение. |
|
|
1 |
Один вариант ответа |
|
|
8192 |
Потолок длины ответа (и tool-loop в одном ходе) |
|
|
не передаётся |
Дефолт API |
|
|
не передаётся |
Дефолт API |
|
|
|
Стриминг в UI theory-chat |
Почему temperature = 0, а не выше?
Я перепробовал несколько значений:
|
Настройка |
Что получилось |
|---|---|
|
|
Стабильно. Диалог идёт по правилам, но иногда суховат. Сейчас использую этот вариант. |
|
|
Диалог живее, петля любопытства работает ярче, но каждый пятый диалог срывался – модель начинала просто объяснять, а не спрашивать. |
|
|
Слишком хаотично. Модель начинала спорить или выдавала ответы до того, как ученик успевал подумать. |
Как хранится и передаётся история диалога
При каждом новом сообщении ученика в модель отправляется:
-
Системная инструкция – целиком. В ней прописаны все педагогические правила: как задавать вопросы, где использовать любопытство, как ловить ошибки и т.д.
-
Последние 24 сообщения (ученика и наставника). Всё, что было раньше, “забывается” – это сделано намеренно, чтобы диалог не перегружал контекст и не тормозил.
При этом:
-
Длинные учебные материалы остаются в системной инструкции, поэтому тема не теряется, даже если старые сообщения отпали.
-
Вызовы инструментов (например, “запустить тест” или “получить последний результат”) не засоряют историю – они происходят внутри одного запроса и не показываются ученику в ленте сообщений.
Первый шаг диалога (приветственное сообщение наставника) генерируется без вызова модели – просто собирается из первого блока теории и цепляющей фразы для вовлечения.
Структура сообщений (роли)
|
Роль |
Что содержит |
|---|---|
|
|
Полная педагогическая инструкция + учебные материалы + текущее состояние теста |
|
|
То, что написал ученик |
|
|
Ответ наставника (сохраняется в историю) |
Инструменты (запустить тест, показать ревью) вызываются внутри одного обращения к модели и не попадают в постоянную историю диалога.
Автор: alex_uda


