Разработчик Антон Плискин опубликовал подробное руководство по работе с промптами под названием Fable 5. Методика нацелена на поиск «неизвестных неизвестных» — скрытых факторов, которые влияют на результат работы языковой модели, но не осознаются пользователем.

Ключевая идея Fable 5 — различать «карту» (представление задачи в промпте) и «территорию» (реальную кодовую базу и ограничения). Разницу между ними автор называет неизвестными. Чем сложнее задача, тем больше таких неизвестных может встретить модель. Методика предлагает итеративный процесс: выявлять их до, во время и после реализации.

КатегорияОписание
Known KnownsТо, что явно указано в промпте
Known UnknownsОсознаваемые пробелы в знаниях
Unknown KnownsОчевидные вещи, не записанные в промпте
Unknown UnknownsТо, о чём пользователь не подозревает

Все неизвестные делятся на четыре категории: - Known Knowns — то, что явно указано в промпте. - Known Unknowns — осознаваемые пробелы в знаниях. - Unknown Knowns — очевидные для автора вещи, которые он не записал, но узнал бы, увидев. - Unknown Unknowns — то, о чём пользователь даже не задумывался.

Включает четыре категории: известные известные, известные неизвестные, неизвестные известные и неизвестные неизвестные.

Автор отмечает, что лучшие агентные разработчики отличаются малым количеством неизвестных. Однако даже они закладываются на неопределённости. Навык сокращения неизвестных, по мнению Плискина, и есть суть агентного программирования.

Для практики предлагается техника «проход по слепым зонам» (blind spot pass). Нужно попросить модель помочь найти неизвестные неизвестные, сообщив ей свой контекст и уровень знаний. Например: «Я работаю над добавлением нового auth-провайдера, но не знаком с модулями авторизации в этой кодовой базе. Сделай проход по слепым зонам». После этого модель задаст релевантные вопросы и укажет на пробелы.

Плискин также рекомендует использовать HTML-артефакты для визуализации неизвестных — по его опыту, это эффективнее всего. И хотя методика Fable 5 иллюстрируется на примерах с Claude, она применима к любым большим языковым моделям. Главное — осознать, что карта не равна территории, и научиться замечать её слепые зоны.