Эволюция ИИ: от чат-ботов к автономным агентам SpaceX

🤖 Эволюция ИИ: от чата к автономным агентам внутри SpaceX

Эволюция ИИ: от чат-ботов к автономным агентам SpaceX

Стэнфорд опубликовал 45-минутную лекцию от SpaceX о том, как на самом деле работает Grok Bot. Это своего рода мастер-класс по harness engineering. Если вам лень смотреть, то я уже сделал краткий конспект на русском:

Ли, инженер из команды разработки в SpaceX, представил разбор архитектуры новых типов AI-агентов — систем, которые работают постоянно, проактивно и обладают собственной памятью. Это следующий шаг после простых чат-ботов, требующих ежеминутного контроля пользователя.

📈 Четыре эпохи разработки с ИИ

Копипаст: Ранние дни ChatGPT, ручной перенос кода.

Простые харнессы: Модели научились вызывать инструменты в терминале. Но процесс останавливался при закрытии ноутбука.

Параллельные агенты: Запуск ботов в облаке. Пользователь оставался «бутылочным горлышком», одобрждая каждую команду во избежание ошибок.

«Всегда включенные» агенты (Current Era): Боты живут на сервере, имеют свой Linux-компьютер и браузер. Они работают фоном неделями. Вы больше не стоите в очереди команд, а управляете агентом, как коллегой. Можно сказать: «Проверь тред», а через секунду добавить: «А вообще сделай это в четверг». Современные модели понимают такой контекст без путаницы.

⚙ Архитектура: Тонкий клиент, толстый сервер

Ключевой принцип — разделение ответственности.

Сервер: Хранит логику агента, состояние диалога, память и маршрутизацию сообщений. Здесь находится цикл вызова инструментов (tool loop). Размещение логики на сервере позволяет быстро обновлять код без переписывания приложений у пользователей и эффективно масштабироваться под нагрузку.

Компьютер агента (VM): Каждый агент получает изолированную виртуальную машину (Linux box) с Firecracker VM. Она может спать, экономя ресурсы, и просыпаться по триггеру (Slack, email, таймер). Агент имеет доступ к файловой системе, Chrome и может создавать скриншоты или записывать видео для демонстрации работы.

🧠 Контекстный инжиниринг и управление памятью

Главная проблема длинных задач — ограничение контекстного окна. Решения включают:

Суб-агенты (Helpers): Основной агент выступает оркестратором. Для тяжелых задач он делегирует работу суб-агенту с свежим контекстом, получая только результат. Это создает иллюзию бесконечной памяти.

Динамическое обнаружение инструментов: Вместо загрузки схем всех плагинов в каждый запрос, модель видит только названия инструментов. Описание читается из файла по необходимости. Это экономит токены и снижает стоимость.

Compaction (Сжатие истории): При достижении лимита система суммаризирует старые сообщения. Важно делать это пока «кэш подсказок» (prompt cache) еще теплый, чтобы минимизировать расходы на повторную обработку токенов.

Файлы как внешняя память: Долгие выводы сохраняются в файлы на диске агента. Модель отлично умеет искать информацию через grep и shell-команды, обращаясь к архиву знаний по мере надобности.

🛡 Безопасность и Auto-Review

Доверие к автономным агентам требует строгих мер:

Auto-review: Отдельная AI-модель проверяет каждую команду перед исполнением. Парадоксально, но ИИ часто надежнее человека, уставшего от монотонного одобрения сотен команд.

Защита от инъекций: Непроверенные входные данные (письма, вебхуки) не должны интерпретироваться как инструкции пользователя.

Необратимые действия: Перед отправкой писем или оплатой сервисов агент запрашивает подтверждение у пользователя. Пароли хранятся вне контекста модели.

🔮 Взгляд в будущее

В ближайшие 6–12 месяцев мы увидим:

Агентов, работающих неделями без вмешательства.

Интерфейсы, смещающиеся в сторону голосового общения и носимых устройств.

Обучение моделей непосредственно на данных использования харнессов (RLHF), что улучшит следование инструкциям и выбор навыков.

Новую норму разработки: каждое приложение должно иметь агентскую интеграцию или становиться источником данных для других агентов.

💡 Совет инженерам: Не бойтесь удалять сложный UI. Стройте простые интерфейсы, позволяющие моделям думать и действовать самим.