openai

Агент ушёл в веб за файлом из локальной папки

Promtime

openai

Codex отправился в интернет за файлом application_settings.cmake из репозитория seL4_tools, хотя тот же репозиторий уже лежал в локальном чекауте: системный промпт агента требует проверять в сети любое допущение, у которого есть хотя бы небольшой, свыше 10%, шанс устареть. Случай описан 8 сентября в разборе Spader, автор которого просил агента разобраться с исходниками микроядра seL4.

Коротко

  • Сам агент объяснил обращение к сети тем, что механически применил правило о проверке нишевых технических фактов онлайн, хотя читал локальные исходники и восстанавливать факты по памяти не требовалось.
  • В системном промпте Codex перечислено около полудюжины сценариев обязательного выхода в сеть, среди них неуверенность в факте и нишевые или новые темы, а в спорных случаях предписано склоняться к поиску.
  • Проверить формулировку удалось потому, что Codex распространяется с открытым исходным кодом: автор склонировал репозиторий и нашёл инструкцию в тексте промпта на GitHub, тогда как Claude Code остаётся закрытым.

Промпт, который принуждает агента выходить в сеть при любом сомнении, меняет поведение инструмента в самом частом сценарии его работы: чтении локального кода. Побочные эффекты здесь не только про лишние секунды, но и про сетевые запросы из среды, где разработчик мог рассчитывать на изоляцию. Судя по описанному случаю, порог в 10% на практике срабатывает почти всегда, и открытость промпта Codex остаётся редкой возможностью это проверить.

Агент запросил application_settings.cmake через raw.githubusercontent.com при локальном чекауте seL4_tools

В запросе автор указал два локальных каталога, /mnt/storage/seL4 и /mnt/storage/seL4_tools, и попросил разобраться в исходниках и инструментах seL4: найти самый прямой способ запустить только что собранное ядро, заодно проверить корректность сборки и попробовать запустить результат. Речь шла о ядре и программе, скомпилированных незадолго до этого.

Через некоторое время работы с файлами в терминале появились строки о поиске в вебе. Агент запрашивал raw.githubusercontent.com/seL4/seL4_tools/master/cmake-tool/helpers/application_settings.cmake, то есть файл из репозитория seL4_tools, который был назван в запросе и откуда Codex уже читал файлы напрямую с диска. В выводе это две строки: сообщение о начатом поиске и адрес запроса.

Автор отмечает, что редко обращается к Codex и взял его для разовой задачи, а после увиденного в терминале начал выяснять, откуда у агента такой рефлекс. Первым шагом он спросил у самого Codex, зачем тот пошёл в сеть за файлами из чекаута на диске.

Codex объяснил запрос правилом о 10% шансе ошибиться при воспроизведении факта

Codex ответил, что механически применил обобщённое правило проверять нишевые технические факты онлайн. Источником формулировки он назвал инструкцию уровня разработчика, прикреплённую к веб-инструменту, которая, по его словам, идёт под заголовком о ситуациях обязательного выхода в интернет. Процитировал он её так:

You’re unsure about a fact, the topic is niche or emerging, or you suspect there’s at least a 10% chance you will incorrectly recall it

Приведённое агентом условие описывает три случая: неуверенность в факте, нишевая или новая тема, а также подозрение, что вероятность неверно воспроизвести факт по памяти составляет не менее 10%. Сам Codex признал, что применил правило напрасно, поскольку читал реальные локальные исходники и опираться на память не требовалось.

В открытом репозитории Codex порог сформулирован как шанс выше 10%, что факт изменился

Поиски инструкции на своей машине автор описывает как безрезультатные. Codex, в отличие от Claude Code, публикуется OpenAI с открытым исходным кодом, поэтому он склонировал репозиторий и нашёл нужный фрагмент в тексте системного промпта на GitHub. Первым там идёт указание подчиняться явной просьбе пользователя искать или не искать в интернете.

When you make an assumption, always consider whether it is temporally stable; i.e. whether there’s even a small (>10%) chance it has changed. If it is unstable, you must verify with browsing the internet for verification.

Дальше промпт перечисляет сценарии, в которых выход в интернет обязателен, примерно полдюжины пунктов, среди них неуверенность агента в факте и нишевые или новые темы. Отдельной строкой указано, что при сомнениях агент обязан склоняться к поиску в сети, причём требование выделено капслоком.

Останется ли формулировка в промпте: в разборе об этом не говорится, как и о том, менялся ли текст инструкции после публикации 8 сентября. Автор ограничивается одним наблюдавшимся случаем с seL4_tools и других примеров такого поведения Codex не приводит. Приведённые цитаты относятся к той версии промпта, которую он склонировал из открытого репозитория Codex на GitHub, где текст системного промпта лежит в исходном виде.

Комментарии

Пока никто не написал. Будьте первым.

Присоединяйтесь к разговору

Войдите через Google, чтобы оставить комментарий. Имя и аватар подставятся из вашего профиля Google, а комментарий появится после модерации.

Из Google мы используем только имя и аватар. Почту не сохраняем.