Технічний КЕРІВНИЦТВО

Пісочниці виконання коду для агентів

Пісочниця виконання коду — це ізольоване середовище, де агент штучного інтелекту може запускати код, який він пише, не маючи змоги завдати шкоди головній машині, отримати доступ до даних, які він не повинен бачити, або використовувати необмежені ресурси.

  • 4 хвилини читання
  • Останнє оновлення
На цій сторінці4 хвилини читання
  1. Огляд
  2. Глибоке занурення
  3. Стратегічний вплив
  4. Майбутнє пісочниці виконання коду для агентів
  5. Реалізація в реальному світі
  6. Ризики та огорожі
  7. Дорожня карта впровадження
  8. Продовжуйте досліджувати
  9. Часті запитання

Огляд

Це важливо, тому що агент, який може виконувати код, є набагато більш спроможним (він може обчислювати, аналізувати файли та перевіряти власну роботу), але код, написаний на моделі, не є надійним за замовчуванням і може бути помилковим, марнотратним або маніпулювати шляхом швидкого впровадження.

Глибоке занурення

Коли агент генерує код, щось має виконувати його. Запуск цього коду безпосередньо на ноутбуці розробника чи робочому сервері є ризикованим: код може видаляти файли, читати облікові дані зі змінних середовища, інсталювати програмне забезпечення, майнити криптовалюту або відкривати мережеві з’єднання. Пісочниця встановлює межу між кодом і всім іншим. Є кілька рівнів ізоляції з різними компромісами. Стандартні контейнери (наприклад, Docker) використовують простори імен і контрольні групи Linux, щоб надати коду власний погляд на процеси, файли та мережу, а також обмежити ЦП і пам’ять. Вони запускаються швидко, але кожен контейнер використовує ядро ​​хоста, тому вразливість ядра може дозволити коду вийти. gVisor, проект із відкритим вихідним кодом від Google, додає ядро ​​простору користувача, яке перехоплює системні виклики, зменшуючи те, що ненадійний код може торкатися справжнього ядра. Такі мікровіртуальні машини, як Firecracker, спочатку створені AWS для Lambda та Fargate, надають кожному робочому навантаженню власну легку віртуальну машину та ядро, але завантажуються за частки секунди. Розміщені сервіси ізольованого програмного середовища для агентів, наприклад E2B, базуються на цьому підході microVM. У найпростішому випадку середовища виконання WebAssembly і такі інструменти, як Pyodide, можуть запускати Python у браузері чи пісочниці Wasm без прямого доступу до системи. Технологія ізоляції - це лише половина конструкції. Хороші пісочниці також обмежують мережу (часто забороняють за замовчуванням із дозволеним списком), монтують файлову систему лише для читання, за винятком початкового каталогу, повністю зберігають секрети від середовища та застосовують обмеження на час, пам’ять, кількість процесів і диск. Зазвичай вони ефемерні: створюються для кожного завдання й знищуються після цього. Поширеною помилкою є те, що пісочниця робить агента безпечним. Це обмежує шкоду від самого коду, але не заважає агенту видавати неправильні відповіді, і будь-який інструмент або облікові дані, які ви передаєте в пісочницю, стають доступними будь-яким кодом, який там виконується, включаючи код, написаний у відповідь на введені інструкції.

Стратегічний вплив

Вартість і бюджет

Архітектурні рішення збільшують продуктивність і експлуатаційні витрати протягом багатьох років.

Чіткіші рішення

Технічна освіта допомагає командам вибрати правильний стек, а не лише найновіший.

Контроль якості

Кращий інженерний вибір зменшує проблеми з надійністю у виробництві.

Майбутнє пісочниці виконання коду для агентів

Виконання коду стає стандартною можливістю для помічників і агентів зі штучним інтелектом, тому пісочниця, швидше за все, стане скоріше товарною послугою з розумними параметрами за замовчуванням, а не чимось, що кожна команда створює з нуля. Очікуйте продовження роботи над швидшим запуском, знімком і відновленням, а також більш детальними політиками для доступу до мережі та файлів, які можна налаштувати для кожного завдання. Складнішою відкритою проблемою є політика, а не ізоляція: рішення про те, до чого має дозволити агент, і інформування користувачів, коли агенти виконують довші автономні дії. Ізоляція залишатиметься одним із кількох рівнів разом із дозволами, веденням журналів і перевіркою людьми.

Реалізація в реальному світі

Помічник з аналізу даних отримує завантажений файл CSV, пише код pandas для його очищення та побудови тенденцій і запускає цей код в одноразовій пісочниці, яка видаляється після завершення сеансу.

Агент кодування запускає набір тестів сховища всередині контейнера без вихідного доступу до мережі, тому зловмисний сценарій залежності не може надсилати вихідний код або секрети на зовнішній сервер.

Освітня платформа дозволяє студентам попросити репетитора зі штучного інтелекту запустити приклади Python, причому кожен запуск обмежується декількома секундами процесора та фіксованим обмеженням пам’яті, щоб випадковий нескінченний цикл не міг зупинити службу.

Дослідницька група надає агенту microVM із доступною лише для читання копією набору даних і єдиною вихідною папкою, доступною для запису, тож агент може отримувати результати, не змінюючи чи видаляючи вихідні дані.

Ризики та огорожі

  • Оптимізація одного тесту може приховати ширші слабкі сторони системи.

  • Витрати на інфраструктуру та обслуговування часто недооцінюються.

  • Прогалини в безпеці та спостережуваності можуть зростати в міру ускладнення систем.

Дорожня карта впровадження

  1. Визначте цільові показники затримки, якості та вартості перед впровадженням.

  2. Тест за реалістичних умов навантаження та даних.

  3. Моніторинг інструментів на наявність помилок, дрейфу та впливу користувача.

  4. Перед масштабуванням підготуйте шляхи відкату та реагування на інциденти.

Продовжуйте досліджувати

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Code Execution Sandboxes for Agents quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Розпочати вікторину

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Часті запитання

Що таке пісочниці виконання коду для агентів?

Пісочниця виконання коду — це ізольоване середовище, де агент штучного інтелекту може запускати код, який він пише, не маючи змоги завдати шкоди головній машині, отримати доступ до даних, які він не повинен бачити, або використовувати необмежені ресурси. Це важливо, тому що агент, який може виконувати код, є набагато більш спроможним (він може обчислювати, аналізувати файли та перевіряти власну роботу), але код, написаний на моделі, не є надійним за замовчуванням і може бути помилковим, марнотратним або маніпулювати шляхом швидкого впровадження.

Чому код, написаний агентом ШІ, за замовчуванням вважається ненадійним?

Посібник пояснює, що код, написаний за моделлю, може містити помилки, споживати надлишок ресурсів або слідувати впровадженим інструкціям, тому його слід запускати всередині кордону, а не безпосередньо на хості.

У чому головна слабкість безпеки стандартних контейнерів порівняно з microVM?

Контейнери використовують простори імен і контрольні групи, але всі вони спільно використовують ядро ​​хоста, тому вразливість ядра може дозволити вихід. MicroVM надають кожному робочому навантаженню власне ядро.

Що додає gVisor для зменшення ризику від ненадійного коду?

gVisor від Google запускає ядро ​​простору користувача, яке обробляє системні виклики, зменшуючи кількість ненадійного коду реального ядра хоста.

МікроВМ Firecracker спочатку були створені AWS для забезпечення яких служб?

Firecracker створено для безсерверних робочих навантажень AWS, таких як Lambda та Fargate, де багато ізольованих робочих навантажень повинні запускатися швидко.

Чому обмеження вихідного доступу до мережі часто вважається найважливішим контролем ізольованого програмного середовища, коли можливе швидке впровадження?

Якщо введені інструкції змушують агента писати шкідливий код, мережа заборони за замовчуванням зупиняє цей код від викрадання даних.