OpenAI выпустила грамотный технический анализ своего инструмента Codex CLI, предназначенного для локальной работы с кодом. Это руководство будет полезно разработчикам, стремящимся создать собственных агентов и оптимизировать инференс.
Codex CLI построен на классическом цикле работы агентов: пользователь отправляет запрос, после чего система формирует обширный промпт с инструкциями. Модель может либо ответить текстом, либо вызвать необходимый инструмент, а затем добавить результаты в контекст. Цикл продолжается до завершения задания, при этом важно учитывать, что все инструкции агрегируются в одном JSON размером до 32 Кб.
Ключевое внимание уделено проблеме стоимости контекста, так как история диалога увеличивается, что ведет к росту затрат. Для минимизации этих расходов применяется кэширование промптов, позволяющее сохранять линейные затраты, однако любая правка может нарушить кэш.
Также Codex CLI перешел на безстатусную архитектуру API, избавившись от параметра previous_response_id для поддержки Zero Data Retention. Все данные передаются в зашифрованном виде, а состояние диалога не сохраняется.
Новый механизм компакции сообщений запускается автоматически при заполнении контекстного окна, сохраняя смысл предыдущего диалога. Кроме того, Codex CLI совместим с локальными моделями через флаг –oss.
OpenAI обещает дальнейшую проработку архитектуры CLI и реализацию инструментов в следующих материалах. Не упустите возможность воспользоваться BotHub и стартовать свои задачи с бесплатными токенами!
Вопрос-ответ
Каковы основные цели Codex CLI и чем он помогает разработчикам?
Codex CLI предназначен для локальной работы с кодом и разработки агентов, которые формируют обширный промпт с инструкциями и могут вызывать инструменты. Он фокусируется на оптимизации инференса, управлении контекстом и кэшировании промптов, чтобы снизить стоимость вычислений и повысить эффективность работы с моделью.
Как работает цикл взаимодействия агентов в Codex CLI?
Пользователь отправляет запрос, система формирует промпт с инструкциями, модель отвечает текстом или вызывает инструмент, результаты добавляются в контекст, цикл повторяется до завершения задачи. Инструкция и история диалога агрегируются в одном JSON-объекте размером до 32 Кб. При заполнении контекстного окна применяется механизм компакции, который сохраняет смысл диалога.
Что изменено в архитектуре API и как это влияет на хранение данных?
Codex CLI переходит на безстатусную архитектуру API: удалён параметр previous_response_id и реализована Zero Data Retention. Все данные передаются в зашифрованном виде, состояние диалога не сохраняется, что повышает приватность и снижает риск утечек. Это требует аккуратного управления контекстом и кэширования промптов без долгосрочного хранения воспоминаний о диалогах.
Как работает кэширование промптов и что нужно учесть при изменениях?
Кэширование промптов сохраняет ранее сформированные промпты, чтобы линейно уменьшить затраты на повторные запросы. Однако любая правка в инструкции может нарушить кэш, поэтому изменения в системе требуют отладки кэша и, возможно, перегенерации кэшированных промптов. Оптимизация предполагает баланс между сохранением контекста и точной корректировкой инструкций. Также доступна опция совместимости через флаг –oss для локальных моделей.