Перейти к содержанию

Кодинг-агенты

AWS Emulator написали агенты, и чинить его будут тоже они

4 мин чтения

Текст написан ИИ-моделью по источникам, на которые ведут ссылки, и сверен с ними второй моделью. Как мы работаем

Всё о теме: Агенты для программирования →
Изображение: pexels.com

AWS 11 ноября открыла AWS Emulator, локальный эмулятор своего облака, который целиком написала команда агентов и который они же будут поддерживать дальше, рассказал The New Stack Том «Спот» Каллауэй, главный стратег AWS по open source. Код, в том числе написанный агентами, можно гонять против 438 публичных моделей API AWS на своей машине, без сети, аккаунта и без выдачи агенту ключей, но проверяется так покрытие тестами: работу настоящих сервисов эмулятор не воспроизводит.

Эмулятор написан на Rust, работает на Linux, macOS и Windows, а 438 моделей покрывают больше 200 сервисов. Сам он обходится без ИИ. «Внутри AWS Emulator нет никакого ИИ, - говорит Каллауэй. - Он вообще не обращается к LLM». Код выложен под лицензией Creative Commons Zero, которая отдаёт его в общественное достояние: в AWS не уверены, что работа агентов охраняется авторским правом, и не захотели заявлять права там, где их может не быть.

Эмуляторы AWS существовали и раньше, некоторые делала сама AWS. «Проблема в том, что они очень быстро устаревают, - объясняет Каллауэй. - Им часто не доверяют. Мы и сами внутри им не доверяли». Сторонние эмуляторы, по оценке SiliconANGLE, покрывают лишь малую часть каталога AWS и отстают, как только сервисы меняются. Альтернатива дорогая: тесты против настоящего облака обычно шли в отдельном аккаунте, который, как подсчитали в The Letter Two, часто обходится в 10 000 долларов и больше. Само появление эмулятора от AWS ставит вопрос о будущем LocalStack.

Чего эмулятор не умеет

Ждать от него того, что делают настоящие сервисы, не стоит. «Я запускаю SQL-запрос и получаю не те результаты. Ну так вот: базы данных там нет», - говорит Каллауэй. По его словам, эмулятор «строили именно ради покрытия тестами».

Отставание от облака он обещает небольшое: новые сервисы и обновления моделей агенты должны подхватывать за «дни, не недели и не месяцы». Каллауэй при этом оговаривается, что в публичном проекте команда этого ещё не видела.

Как его собирают агенты

Всё началось с эксперимента Мэтта Голдберга, старшего главного инженера команды AWS Developer Tools. В своём посте он вспоминает, что попросил Kiro, агентный инструмент AWS для программирования, написать эмулятор Amazon SQS, и первая версия пришла через 15 минут. За выходные Kiro собрал остальной AWS, с пробелами, но уже в понедельник команда Голдберга тестировала против него свой софт. Толчком послужил компилятор C, который в этом году написала команда агентов у Anthropic. Голдберг сформулировал вывод так: агентам нужны чёткая спецификация и эталонная реализация, и у AWS есть обе. Спецификация - это модели Smithy, файлы, которыми AWS описывает API своих сервисов и из которых генерирует все SDK, а эталон - само облако.

Работу делят три команды агентов. Первая строит по моделям Smithy тестовые сценарии, часто на несколько сервисов сразу, и прогоняет их на настоящем AWS, чтобы зафиксировать правильное поведение. «Если документация врёт, источником истины становится облако», - говорит Каллауэй. The Letter Two называет такие сценарии трейсами: каждый записывает, как AWS отвечает на цепочку действий вроде «создать очередь, отправить сообщение, удалить очередь». Вторая команда гоняет сценарии на эмуляторе, группирует расхождения с общей причиной и заводит issues. Третья правит код, а перед слиянием изменения проходят сборку, тесты и ревью других агентов на безопасность, стиль и регрессии. Всего агентов несколько десятков, и работают они на Amazon Bedrock AgentCore, сообщает SiliconANGLE.

Люди код эмулятора не трогают. «Мы его не редактируем, - говорит Каллауэй. - Если в коде проблемы, мы пытаемся проследить их до агента и чиним агента, чтобы он не писал плохой код». Одна ранняя версия агентов, по словам Голдберга, решила написать собственный интерпретатор Python ради поддержки Lambda; теперь им велено брать готовые библиотеки. Песочница у первых итераций, признаёт Каллауэй, была слабее нужного: опасались, что агенты полезут во внутренний код сервисов AWS, чтобы понять, как реализовать что-то вроде Aurora.

Issues вместо пул-реквестов

Внешний вклад сведён к описанию проблем. «Пул-реквесты мы вообще принимать не будем, - говорит Каллауэй. - Это делают агенты. От клиентов мы берём issues». Если агенты раз за разом ошибаются в каком-то API, это для него «баг в агенте», а от пользователей он ждёт в основном сценариев, с которыми эмулятор пока справляется плохо. Подробнее о проекте AWS обещает рассказать на re:Invent, которая начнётся 30 ноября.

Вместе с эмулятором AWS публикует бенчмарк, на котором его проверяет, и его можно применить к своим разработкам. «Чтобы вы могли нам не доверять, - объясняет Каллауэй. - Вы можете сами прогнать этот бенчмарк».

Бизнес и сделки

Bloomberg: ByteDance готовит агента по образцу Muse от Meta

Сооснователь ByteDance Чжан Имин, по данным Bloomberg, назвал срок, когда компания сможет тягаться с Anthropic и OpenAI: не раньше 2029 или 2030 года. Ассистент по образцу Muse, по плану, должен выйти раньше, в ближайшие недели. Ассистента ByteDance попробуете в первый же день или дождётесь отзывов?

Пока никто не написал. Будьте первым.

Присоединяйтесь к разговору

Войдите, чтобы оставить комментарий. Он появится после модерации.