
Проблема и актуальность проекта
Школьники часто задают одни и те же вопросы по учебным предметам: даты исторических событий, формулы, правила русского языка. Учителю не всегда удобно повторять одно и то же, особенно на перемене или при подготовке к контрольной. Чат-бот, созданный в Scratch, может автоматически отвечать на типовые вопросы и освободить время учителя. Такой проект актуален ещё и потому, что знакомит с основами искусственного интеллекта на доступном для семиклассника уровне.
Цель и задачи проекта
Цель — разработать простого чат-бота в Scratch, который отвечает на вопросы по школьной программе для 7 класса.
Задачи:
- Выяснить, какие вопросы чаще всего задают одноклассники по разным предметам.
- Изучить возможные способы реализации бота в Scratch.
- Создать алгоритм, который распознаёт ключевые слова в вопросах.
- Составить базу ответов и запрограммировать бота.
- Протестировать бота и исправить ошибки.
- Подготовить презентацию и защиту проекта.
Гипотеза
Гипотеза: если научить чат-бота распознавать ключевые слова из школьных вопросов, то он сможет давать правильные ответы в большинстве случаев и уменьшить нагрузку на учителя.
Методы исследования
Для работы над проектом используются следующие методы:
- Анкетирование одноклассников для сбора часто задаваемых вопросов.
- Сравнение возможных способов реализации бота (условные операторы, списки, блоки «содержит»).
- Тестирование созданного продукта на контрольных вопросах.
В ходе анкетирования можно выявить самые популярные вопросы, например: «Как найти площадь прямоугольника?», «Кто написал "Бородино"?», «Что такое атмосферное давление?». На основе этих данных составляется база ответов.
Этапы работы над проектом
- Подготовительный этап: выбор темы, формулировка проблемы и цели.
- Исследовательский этап: опрос школьников, сбор и анализ вопросов.
- Проектирование: описание логики бота, составление блок-схемы.
- Практический этап: создание бота в Scratch.
- Тестирование: проверка работы на школьных вопросах.
- Заключительный этап: подготовка речи и презентации.
Разработка чат-бота в Scratch: алгоритм и примеры
Рассмотрим конкретную реализацию. Создайте новый проект в Scratch, назовите его «Школьный чат-бот». Выберите спрайт, например кота, и фон. Добавьте переменные: «вопрос» и «ответ». Основной скрипт будет выглядеть так:
Когда зелёный флажок нажат, спрайт спрашивает «Задай свой вопрос» и ждёт ввода. Введённый текст сохраняется в ответ. Далее идут условия с оператором «содержит». Например:
когда щёлкнут по зелёному флагу спросить (Задай свой вопрос) и ждать если <ответ содержит [столица]>, то сказать (Столица России — Москва.) в течение 2 секунд иначе сказать (Извини, я не знаю ответа на этот вопрос.) в течение 2 секундОднако такой подход быстро разрастается. Для расширения базы лучше использовать списки. Создайте два списка: «Вопросы» и «Ответы». В «Вопросах» храните полные формулировки, например «Какая столица России?», а в «Ответах» — соответствующие ответы. При поиске используйте цикл «для каждого элемента списка» и проверяйте, содержится ли ключевое слово из вопроса. Такой способ позволяет легко добавлять новые пары вопрос-ответ.
Примерный алгоритм:
- Спросить «Задай свой вопрос» и сохранить в переменную.
- Привести текст к нижнему регистру, чтобы бот понимал разные варианты написания.
- Перебрать список ключевых слов и найти совпадение.
- Если совпадение найдено, выдать соответствующий ответ.
- Если совпадений нет, выдать сообщение «Я ещё не знаю ответа на этот вопрос. Попробуй спросить иначе».
Типичные ошибки при создании чат-бота
| Ошибка | Как избежать |
|---|---|
| Бот реагирует только на точное совпадение вопроса | Использовать блок «содержит» и обрабатывать ключевые слова, а не полный текст. |
| Нет ответа, если вопрос не распознан | Добавить универсальный ответ-заглушку. |
| Игнорирование регистра и знаков препинания | Приводить введённый текст к нижнему регистру. |
| Слишком много повторяющихся условий | Использовать списки для хранения вопросов и ответов. |
| Бот не запоминает ответы | Добавить блок «добавить [...] в список», чтобы пользователь мог обучать бота новым вопросам. |
Подготовка к защите проекта
На защите нужно показать созданный чат-бот и объяснить его устройство. Подготовьте короткую демонстрацию: задайте боту 2–3 вопроса, покажите реакцию. Расскажите, какие задачи решает проект, как вы проводили опрос, какие результаты получили. Постарайтесь уложиться в 5–7 минут. Заранее продумайте ответы на возможные вопросы учителя: почему выбрали именно этот способ реализации, что узнали в ходе работы, как можно улучшить бота.
Чек-лист самопроверки
- Сформулированы проблема, цель, задачи, гипотеза.
- Проведён опрос одноклассников.
- Чат-бот отвечает на типовые вопросы.
- Есть обработка ситуации, когда бот не знает ответа.
- Проект протестирован не менее чем на 10 вопросах.
- Подготовлены текст выступления и презентация.
- Соблюдены требования к оформлению проекта (титульный лист, разделы, выводы).
Не забывайте, что важна не только техническая часть, но и умение ясно объяснить свой замысел. Практикуйтесь выступать перед зеркалом или друзьями, чтобы защита прошла уверенно.