Збереження коду агентів під час стиснення контексту в ChatGPT Work
Саймон Віллісон протестував ChatGPT Work із моделлю GPT-6 Astra для побудови маршрутів OpenStreetMap. Агент успішно створив візуалізацію на D3 та GPX-файли за 27 хвилин, але стиснення контексту стерло вихідний код Python.

Вплив: Середній
Чому це важливо
Налаштовуйте довготривалих агентів на обов'язковий запис Python-скриптів на диск, щоб автоматичне стиснення контексту не знищувало відтворюваність.
TL;DR
- 01ChatGPT Work здатен автономно виконувати тривалі пайплайни з використанням API Overpass і Nominatim.
- 02Візуалізація в ChatGPT Work обмежена CSP і дозволяє завантаження скриптів лише з перевірених CDN (jsDelivr, cdnjs, unpkg).
- 03Стиснення контексту знищує вихідний код Python; агентів слід змушувати записувати робочі скрипти у файли.
Ключові факти
- Час виконання
- 27 хвилин
- Базова модель
- GPT-6 Astra (Max)
- Створені артефакти
- GPX, GeoJSON, HTML-візуалізація
- Рушій візуалізації
- D3 v7.9.0
Тривале виконання з інтеграцією зовнішніх API
Саймон Віллісон протестував можливості ChatGPT Work на базі GPT-6 Astra (Max) у комплексному сценарії геопросторової обробки даних. Агент отримав завдання розрахувати замкнені бігові маршрути на 5 та 10 км від житлової адреси з використанням даних OpenStreetMap. Протягом 27 хвилин агент робив запити до Nominatim для геокодування, використовував Overpass API для вивантаження дорожніх мереж і локально прораховував геометрію кілець.
Результатом роботи стали готові до завантаження файли GPX та GeoJSON, а також інтерактивний веб-компонент, збережений у /workspace/el-granada-5k-share.html. Карта маршруту була вбудована у діалог через інструмент visualize з підключенням бібліотеки D3 (версія 7.9.0).
Обмеження Content Security Policy
Вбудована навичка visualize діє в межах жорсткої політики Content Security Policy (CSP). Скрипти та стилі дозволено завантажувати лише з обмеженого переліку CDN:
cdnjs.cloudflare.comesm.shcdn.jsdelivr.netunpkg.comfonts.googleapis.comтаfonts.gstatic.comfonts.bunny.net
Будь-які ресурси з інших доменів блокуються без попереджень, тому агентські інструменти мають опиратися виключно на дозволені мережі доставки контенту.
Пастка стиснення контексту
Експеримент виявив серйозну проблему архітектури агентів: компактифікацію контексту. Інтерфейс ChatGPT приховує деталі виконання коду під час роботи, а після автоматичного стиснення гілки діалогу агент втратив доступ до коду Python, який робив розрахунки через Overpass. Для надійної інженерії агентів важливо примусово записувати всі сирі виклики інструментів і код на диск до того, як модель виконає очищення пам'яті контексту.
Спробуй за 2 хвилини
You are generating a long-running data pipeline. Save all intermediate Python scripts to /workspace/scripts/ before executing them, and ensure all HTML visualizations import libraries exclusively from cdn.jsdelivr.net or cdnjs.cloudflare.com.markdown
✓ Коли використовувати
- Для побудови агентних сценаріїв, що взаємодіють із відкритими API (Nominatim, Overpass) та експортують просторові дані.
- Для миттєвого рендерингу інтерактивних графіків і карт на D3 безпосередньо всередині робочого простору.
✕ Коли НЕ варто
- Не використовуйте історію чату як сховище коду для тривалих завдань, де неминуче спрацює стиснення контексту.
- Не намагайтеся підключати скрипти з довільних сторонніх джерел у візуалізаціях поза білим списком CDN.
Що зробити сьогодні
- Додайте у системний промпт вимогу зберігати всі створені Python-скрипти як окремі файли у /workspace.
- Перевірте, що всі CDN-залежності для візуалізацій використовують дозволені домени, такі як jsdelivr або unpkg.
- Експортуйте логи виконання інструментів до того, як діалог досягне ліміту токенів і запуститься стиснення.
Джерела