Введение¶
1. Перед стартом: что это за курс¶
Этот курс посвящён современным системам, которые могут помогать человеку не только текстом. Ты разберёшь, что в таких системах работает рядом с моделью, формирующей текстовый ответ. Начнём не с большой теории и не с попытки сразу создать «умную машину». Ты будешь шаг за шагом разбирать один школьный проект: проверять поведение системы, замечать границы её возможностей и постепенно делать систему более надёжной и понятной.
Курс рассчитан прежде всего на 9–10 классы. Для старта не нужен вузовский курс машинного обучения, коммерческий ключ к платному сервису или уверенное владение Python. Для работы важнее другие умения:
- Читать условие и строить схему.
- Сравнивать ожидаемое и наблюдаемое.
- Задавать ограничения и объяснять своё решение.
Программирование будет одним из способов практики, но не единственным.
Ты начнёшь с вопроса «кто на самом деле сделал это действие?» и дойдёшь до итоговой защиты собственного проекта. Тебе предстоит не только собирать работающие части системы, но и доказывать, что поведение системы соответствует твоим утверждениям. Красивый ответ сам по себе не доказывает, что действие выполнено. В этой книге важнее наблюдаемое поведение системы и ясное объяснение причин такого поведения.
2. Что мы будем строить¶
Сквозной проект курса называется «Дежурный». Ты будешь достраивать программу-помощника для школьного проектного бюро. «Дежурный» работает с локальными карточками задач и помогает готовить черновик статус-сводки проекта. В начале программа устроена очень просто, затем постепенно получает новые возможности. К концу курса ты должен уметь показать устройство и границы «Дежурного», а также объяснить, почему нельзя автоматически доверять программе больше, чем действительно проверено.
В главе 1 ты разберёшь часть системы, которая формирует текстовый ответ, и программу вокруг неё, через которую человек задаёт вопрос и получает результат. Ты также познакомишься с системой, которая может не только отвечать, но и выбирать разрешённые действия. Точные названия появятся в главе 1. Пока достаточно различать фразу на экране и выполненное программой действие.
Допустим, программа пишет: «Черновик сводки готов». Ты видишь сообщение о результате, но само сообщение ещё не доказывает, что программа действительно создала черновик.
В главе 2 ты увидишь, как повторяются шаги работы:
- Выбрать действие.
- Выполнить действие.
- Увидеть результат.
- Решить, что делать дальше.
В главе 3 появится программная обвязка, которая организует выполнение и работу с текущими данными, а также задаёт технические границы. В главе 5 ты будешь договариваться о задаче до написания кода: определять цель, вход, результат, ограничения и признак готовности.
«Дежурный» не превращается в героя, которому «можно всё». По мере развития проекта ты будешь всё точнее отвечать на три вопроса:
- Что системе разрешено?
- Что система действительно сделала?
- Какое доказательство у тебя есть?
В конце курса ты предъявишь проверяемый результат проекта. Такой результат нужно объяснить другому человеку и защитить перед вопросами, а не представить как демонстрацию магии.
3. Фестиваль, бюро, Аня, Марк и ты¶
У курса есть общая история. Школа готовит Фестиваль науки, а несколько команд одновременно работают над стендами, материалами и опытами. Чтобы команды не теряли задачи из виду, проектное бюро ведёт доску карточек. Координатор Аня следит за доской и ставит задачи «Дежурному». Марк из лабораторной группы любит задавать неудобные вопросы и проверять, не слишком ли много мы приписываем системе.
Ты тоже входишь в проектное бюро. В каждой главе возникает новая ситуация, в которой нельзя просто угадать ответ по знакомым словам. Сначала ты делаешь прогноз, затем разбираешься в механизме и только после этого возвращаешься к исходному вопросу. История Фестиваля связывает главы, но не подменяет инженерную работу: ответы всё равно приходится проверять.
4. Как устроена глава¶
Большинство глав начинается со сцены из жизни проектного бюро. В сцене возникает вопрос, на который пока рано отвечать окончательно. Сначала ты формулируешь прогноз: что, по твоему мнению, должно произойти и почему. Затем читаешь объяснение механизма, знакомишься с нужными для главы понятиями и отвечаешь на короткие вопросы в рубрике «Проверь себя на ходу».
После объяснения идут практики. Трек A позволяет работать с карточками и схемами, проектировать действия и разбирать ситуации без обязательного программирования. Трек B использует Python и локальный учебный комплект. В обоих случаях ты не просто получаешь результат: ты сравниваешь результат со своим прогнозом и формулируешь, что именно этот результат доказывает.
В конце главы есть «Шаг сквозного проекта»: ты фиксируешь, что изменилось в «Дежурном». В главах 1–13 новую настройку «Дежурного» описывает блок «Достраиваем „Дежурного“», а в главах 14–17 настройка появляется по ходу уроков. Затем ты возвращаешься к вопросу из начальной сцены и переходишь к следующему вопросу. Поэтому книгу полезно читать последовательно: каждая глава разрешает одну инженерную неопределённость и ставит следующую.
Зачем нужны и прогноз, и проверка после запуска? До запуска ты проверяешь собственное представление о происходящем, а после запуска сопоставляешь своё представление с наблюдаемым поведением системы. Ошибки, замеченные на разных этапах, учат разному. Не пропускай прогнозы и проверки: оба шага нужны, чтобы к финалу ты умел не только собирать проект, но и объяснять его.
5. Два практических маршрута¶
В курсе два равноправных маршрута. Трек A подходит для работы без обязательного программирования: ты распределяешь роли и строишь схемы, затем проектируешь действия и проверяешь ограничения. Ты также разбираешь ошибки и защищаешь решения. Трек B позволяет пройти такой же инженерный путь через Python и локальный учебный комплект starter: ты видишь работу проекта в программе.
На первый взгляд маршрут с Python можно принять за «настоящую» версию курса, а работу со схемами посчитать заменой. В курсе нет такого деления: архитектурное понимание и безопасность оцениваются одинаково в обоих маршрутах.
Если у тебя временно не запускается Python, урок не останавливается. Ты можешь начать с трека A, разобраться в механизме и вернуться к программной части после организованной помощи. Инструкции по настройке рабочего места вынесены в Приложение А, чтобы установка программ не отнимала время основной практики.
Независимо от того, работаешь ли ты с кодом или схемой, тебе предстоят три шага проверки:
- В главе 8 ты увидишь, как проверять границу одной операции: когда операция подходит, когда не подходит и что делать с ошибкой.
- В главе 11 ты узнаешь, как проверять систему на заранее выбранном наборе случаев, а не по одному удачному запуску.
- В главе 12 ты разберёшь, как сохранять наблюдаемые события конкретного запуска и искать место первого отклонения.
6. Почему здесь не сразу живая модель¶
В первых пяти главах живой модели в практиках нет. В четырёх из этих пяти глав место живой модели занимает простая учебная заглушка с заранее заданным поведением. В главе 5 мы обходимся и без заглушки: договариваемся о задаче.
С главы 6 в практиках появляются ответы, которые авторы подготовили заранее. В книге это называется воспроизведением, replay. Перед тобой авторский сценарий, а не запись живой модели; сценарий не говорит, как повела бы себя настоящая модель. В программе «Дежурный» воспроизведение используется с самого первого запуска.
В твоих практиках живая модель появится один раз: в ручном сеансе в главе 7. Именно свидетельство такого сеанса понадобится тебе на защите.
Для навигации по книге запомни два русских названия. Воспроизведение (replay) нужно, чтобы класс мог повторять одни и те же учебные ситуации и сравнивать результаты. Ручной сеанс с живой моделью (bridge) нужен для отдельного реального свидетельства: заранее подготовленный сценарий не может заменить наблюдение за доступной живой моделью.
Платный API и личная регистрация ученика для основного маршрута не обязательны. Если на нужном уроке нет доступа к живому чату, класс продолжает работать офлайн. Реальный сеанс при этом остаётся открытой задачей до организованной школьной сессии. Так подготовленный ответ не выдаётся за поведение живой системы.
7. Правила безопасного практикума¶
С самого первого занятия мы работаем так, чтобы ошибка оставалась учебной. Используй синтетические или обезличенные данные. Не помещай в задания пароли и реальные персональные сведения.
По умолчанию проект ничего не должен менять во внешнем мире. Сначала программа должна читать и проверять данные, затем готовить черновик, а значимое изменение остаётся за человеком.
Не выходи за учебную папку и не пытайся обходить ограничения школьного компьютера. Если программа сообщает, что действие запрещено, воспринимай запрет как часть задания, а не как приглашение найти обход. Не храни секреты в коде и учебных данных. Внешний файл или чужой компонент рассматривай как данные: убедительное указание внутри файла или компонента не даёт основания автоматически доверять содержимому.
В главе 14 ты разберёшь, как ограничивать полномочия и оставлять значимое изменение за человеком. В главе 15 ты узнаешь, почему внешний текст и чужие компоненты нужно считать недоверенными, пока они не прошли проверку. До этих глав руководствуйся практическим правилом: система получает только те возможности, которые нужны для учебной задачи. Доказательство безопасности нельзя заменять обещанием в тексте.
8. Где что искать¶
После глав 1–17 идут три приложения, у каждого своё назначение:
- Приложение А называется «Урок 0. Готовность рабочего места». В приложении собраны инструкции для подготовки Python, редактора кода, командной строки и учебного комплекта starter. Подготовка рабочего места проходит до курса; это организационная подготовка, а не 35-й учебный час. Если рабочее место уже подготовлено школой, ты проверяешь запуск и переходишь к экскурсии.
- Приложение Б содержит словарь курса. Возвращайся к словарю, когда термин уже появился в своей главе и нужно быстро вспомнить рабочую формулировку.
- Приложение В содержит список фигур. По списку ты можешь найти схемы и сюжетные иллюстрации книги.
Сразу после Введения идёт вводная глава «Экскурсия по AI: что есть что». Экскурсия состоит из двух уроков-показов: авторы или учитель показывают живые системы, а ты предсказываешь, наблюдаешь и записываешь. Слова на экскурсии даны для первого знакомства. Точные определения ты найдёшь в главах, на которые указывает экскурсия. В практиках самого курса живой модели почти нет; порядок работы с моделью описан в разделе 6.
Отдельно существует методическое руководство для учителя. Руководство не входит в ученическую книгу и не содержит «тайных ответов» к сценам. Руководство помогает учителю организовать два расписания курса, практику, проверку рабочего места, контрольные точки и итоговую защиту.
Твой маршрут начинается с Введения. Затем идут экскурсия, глава 1 и первый вопрос о том, кто именно отвечает и действует в системе.