Автор на мероприятии AWS создал AI-агента с помощью Strands SDK и Amazon Bedrock. Хотя процесс казался простым — всего несколько строчек кода на Python, реальное обучение пришло через решение множества ошибок. В статье представлен опыт разработки, каждая ошибка на пути и способы их устранения.
Структура проекта и начальная настройка
Проект подразумевал создание агента, способного выполнять три задачи: определять текущее время, выполнять вычисления и подсчитывать количество букв в слове. Для его разработки была использована следующая структура папок: Agent/, в которой присутствовали файлы agent.py и requirements.txt.
Первым шагом было создание виртуальной среды:
python -m venv .venv
.venvScriptsActivate.ps1
Затем установили необходимые пакеты:
pip install strands-agents strands-agents-tools
Код агента и возникающие проблемы
Код агента был достаточно прост, но при его исполнении возникли несколько ошибок. Первая проблема возникла с использованием модели Claude Sonnet 4 из-за необходимости заполнения формы применения модели для новой учетной записи:
botocore.errorfactory.ResourceNotFoundException: Model use case details have not been submitted for this account.
Ошибка была устранена через консоль AWS, через несколько шагов заполнения формы для утверждения использования модели.
Следующая проблема связана с отсутствием зависимости для авторизации AWS:
botocore.exceptions.MissingDependencyException: Using the login credential provider requires an additional dependency.
Эта ошибка была решена установкой пакета: pip install "botocore[crt]".
Третья ошибка вызывала проблему с недействительным идентификатором модели, что также было решено путем уточнения необходимых данных в коде.
Практические выводы для разработчиков
Опыт показывает, что при разработке на таких платформах, как Amazon Bedrock, важно быть готовым к непредвиденным ситуациям с модельными идентификаторами и зависимостями. Стартовые инструкции могут быть обманчиво простыми, и наличие пошаговых процедур для устранения проблем может существенно сэкономить время и усилия разработчиков.
Для российских специалистов в сфере AI это сигнал: необходимо заранее прорабатывать все возможные ошибки и их решения, чтобы не упускать возможности на старте проектов. Тщательная подготовка и понимание используемых инструментов — залог успешной разработки.
Следующий шаг будет связан с тестированием и улучшением функциональности агента, а также интеграцией дополнительных функций в соответствии с потребностями пользователей.