
Що дослідження J-space від Anthropic каже про правильну побудову промптів.
Anthropic нещодавно опублікували дослідження механізму J-space. Це невеликий внутрішній простір, який Claude використовує для складних багатокрокових міркувань. Він не залучається для простого відтворення фактів чи перевірки граматики — J-space вмикається лише тоді, коли модель має щось спланувати, знайти приховану відповідь або помітити помилку.
Ось приклад із роботи: якщо запитати Claude «Кількість лап у тварини, що плете павутину», у J-space активується патерн spider («павук») безпосередньо перед відповіддю «8». Якщо ж під час генерації замінити цей внутрішній патерн на ant («мураха»), відповідь зміниться на «6». Це доводить, що робочий простір справді формує логічний ланцюжок, а не просто дублює вже прийняте рішення.
Найцікавіше — це обсяг. За словами Anthropic, J-space утримує лише кілька десятків концептів одночасно і займає менше десятої частини всієї активності Claude. Крім того, цей простір оновлюється з кожним новим токеном, а не зберігається незмінним протягом усієї розмови.
Я прочитав це як інженер, а не як теоретик. Мене цікавило практичне питання: чи має це змінити те, як я пишу промпти під час розробки? Дослідження не дає прямих порад щодо промптингу, але мої власні тести підтвердили одну стратегію. Якщо коротко: секрет не в деталізації, а в послідовності.
Звичка, якої я позбувся
Раніше я намагався викласти все, що знаю, в одному повідомленні:
Додай логування входу в мій Laravel-застосунок: використовуй events, зберігай IP та user agent, зроби dashboard для перегляду логів, використовуй TDD і не зламай існуючу auth.
Тут одразу шість різних рішень: архітектура подій, дизайн схеми, UI, стратегія тестування, зворотна сумісність і логіка авторизації. Якщо J-space настільки обмежений, такий промпт — це спроба змусити модель розв'язати п'ять задач умі одночасно. У результаті якість рішень знижується.
Поетапне впровадження фічі
Розглянемо реальний кейс: логування спроб входу в Laravel-застосунку, де вже використовується Spatie event sourcing.
Крок 1: Тільки архітектура. Без коду.
Я хочу логувати кожну спробу входу в Laravel-застосунку, який використовує Spatie event sourcing. Де має бути ця логіка: у listener на стандартні події
Illuminate\Auth\Events\LoginтаFailed, чи у повноцінному event-sourced aggregate? Проаналізуй варіанти перед тим, як радити.
Одне рішення — один логічний ланцюжок. Ми визначаємо фундамент, перш ніж рухатися далі.
Крок 2: Розвиваємо прийняте рішення.
Використовуємо підхід із listener. Якою має бути схема запису в лог? Мені важливо мати можливість фільтрувати дані за IP та користувачем.
Нам не потрібно повторювати контекст усієї фічі. Попереднє рішення вже зафіксоване, тож модель фокусується лише на структурі даних.
Крок 3: Чіткі інструкції.
Я завжди використовую TDD, тому додаю цю умову саме тоді, коли вона стає актуальною:
Тепер напиши тести (Pest), що провалюються, для listener та моделі логів.
Дослідники Anthropic помітили: коли ви кажете моделі, про що не треба думати, це не видаляє концепт, а лише послаблює його. Позитивна інструкція («зроби так») працює набагато краще за негативну.
Крок 4: Шаблонний код — без зайвих церемоній.
Не все потребує етапності. Створення файлу міграції чи скелета моделі — це рутина, а не складне міркування. Це можна просити одним махом. Залиште стратегію «одне питання за раз» для архітектурних виборів та складних edge cases.
Короткий чек-ліст
- Цей крок — складне рішення чи просто генерація шаблонного коду? Розбивайте на етапи лише перше.
- Я ставлю одне питання чи приховано п’ять?
- Я будую логіку на основі попередньої відповіді чи знову переказую весь контекст?
- Моя інструкція сформульована як «зроби X» чи «не роби Y»? Обирайте «зроби X».
Застереження
Цей підхід базується на висновках про механіку ШІ, а не на офіційно підтвердженій техніці промптингу. Anthropic обережно трактує J-space як спосіб доступу до інформації, а не як ознаку свідомості моделі. Проте практика підтверджує: менше рішень на один промпт — вища якість коду.
Якщо хочете зануритися в деталі, раджу прочитати повне дослідження: anthropic.com/research/global-workspace.