Команда, що творить майбутнє: як Strands Agents готують бізнес-звіти, які пишуть роботи
Минулого тижня мій товариш, завзятий ентузіаст штучного інтелекту, зателефонував мені з новиною, яку я запам’ятаю: “Лілю, ти не повіриш, що вони вигадали! Це як зібрати команду супергероїв, де кожен володіє унікальною здатністю, але замість плащів – алгоритми!” І знаєте, він мав рацію. Ця нова технологія, Strands Agents від Amazon Web Services, змусила мене по-новому поглянути на майбутнє бізнес-аналітики та контенту.
Уявіть: ви робите каву, а ваша персональна робоча група вже моніторить свіжі новинки в інтернеті, аналізує настрої в соцмережах, оцінює ринкові тенденції та готує вам детальний бізнес-звіт. І все це – українською! Сьогодні ми глибше зануримося у світ Strands Agents, дізнаємося, як функціонує ця “команда супергероїв”, і як ви можете скористатися її допомогою.
Знайомимося з “обличчям” команди
Перш ніж збирати команду, потрібно підготувати “робоче місце”. Уявіть, що ви переїжджаєте до нового міста і вам потрібно облаштувати затишний дім – створити особистий простір, куди приємно повертатися. Для роботи зі Strands Agents знадобиться дещо:
- Python: мова, якою “спілкуються” наші “роботи”.
- Strands Agents: сам “скелет” для нашої команди, основа, на якій усе триматиметься. Він, до речі, безкоштовний і відкритий – як безкоштовний Wi-Fi у кав’ярні, де ми зараз з вами “розмовляємо”.
- IDE (Integrated Development Environment): наш “робочий стіл”, де ми будемо писати код. Наприклад, Cursor – він дуже розумний і допомагає з автодоповненням коду, ніби ваш надійний помічник.
Мій друг-розробник почав з того, що створив файли: requirements.txt (список необхідного, як список продуктів перед походом в магазин) та .env (секретна скринька, де зберігаються ключі доступу, щоб ніхто не використав нашу “тех-скарбницю”). А магія відбувалася у файлі strands_demo.py.
Як працює “перший робітник”: простий розрахунок
Здавалося б, що може бути простіше, ніж попросити комп’ютер порахувати? Але кому пояснити комп’ютеру, що саме він повинен робити? Тут на допомогу приходять Strands Agents. Ось чотири рядки коду:
“`python
from strands.agent import Agent
from strands.tools.calculator import calculator_tool
agent = Agent(tools=[calculator_tool])
result = agent.run(“What is the square root of 1764?”)
print(result)
“`
Це як попросити дитину: “Ось тобі іграшка-калькулятор, порахуй, будь ласка”. Ми імпортуємо “каркас” та наш “калькулятор” (який, до речі, вже вбудований у Strands!), створюємо “агента” (нашого працівника) і даємо йому завдання. Все просто, як двічі по два… поки не стикаєшся з помилкою.
Цікавий факт: Strands Agents не прив’язані до конкретної мовної моделі. Бажаєте “поспілкуватися” з GPT-3.5? Без проблем! Хочете використати щось від AWS Bedrock? Немає питань! Це як мати універсальний ключ, що підходить до багатьох замків.
Коли система не знає, хто вона: про credentials
Виявилося, що перший запуск призвів до помилки: unable to locate credentials. Це означає, що наш “робітник” не знає, хто його найняв та які у нього права. Щоб це виправити, потрібно отримати “ідентифікатор” від AWS. Це як отримати перепустку на підприємство.
І ось тут починається справжня подорож:
- AWS Console: заходимо на сайт AWS [AWS Console].
- IAM (Identity and Access Management): відділ кадрів, де ми створюємо “працівника” (користувача) і даємо йому “права”.
- Bedrock Policy: Призначаємо права для доступу до Bedrock – сервісу, що надає доступ до різних мовних моделей [Bedrock].
- Access Key: Генеруємо унікальний ключ – “печатку” нашого працівника.
Отримавши ці “секретні інгредієнти”, ми додаємо їх у наш .env файл. І вуаля! Наш перший тест пройшов успішно:
The square root of 1764 is 42.
Неймовірно! Ми змусили ШІ з п’яти рядків коду зробити розрахунок, використовуючи можливості AWS Bedrock. Це як навчити кошеня рахувати – незвично, але можливо!
Додаємо інструменти: коли одного працівника замало
Але нам потрібна не одна, а ціла команда! Strands дозволяє додавати кастомні інструменти, тобто нові “навички” для наших агентів. Уявіть, що наш “бухгалтер” раптом навчився робити каву – це ж чудово!
Створити інструмент – дуже просто. Ми використовуємо декоратор @tool та описуємо, що саме робить нова функція. Для агента це як отримати новий функціонал у додатку:
“`python
from strands.tools import tool
@tool
def add_numbers(a: int, b: int) -> int:
“””Adds two numbers.”””
return a + b
“`
І тепер наш агент вміє не тільки рахувати корені, а й додавати числа. Ми можемо навіть створити кілька агентів з різними наборами інструментів. Наприклад, “математичний агент” з функціями додавання та множення, і “текстовий агент” для підрахунку слів.
Ми даємо їм завдання: “математику” додати 15 і 25, а “текстовому” – порахувати слова в реченні “AW strands is powerful”. Після цього “математик” множить кількість слів на два. Це вже справжня командна робота!
- Математичний агент: “15 + 25 = 40”
- Текстовий агент: “AW strands is powerful” містить 4 слова.
- Математичний агент: 4 * 2 = 8.
Схоже на невеликий конвеєр, де кожен крок залежить від попереднього.
Справжня команда: бізнес-аналітика на аутсорсі
А тепер – найцікавіше! Наша мета – створити систему, яка робить бізнес-звіти на будь-яку тему, використовуючи команду спеціалізованих агентів. Це ніби зібрати цілий аналітичний відділ, але в цифровому форматі.
У нас з’являються такі “супергерої”:
- Контент-агент: шукає актуальну інформацію з новинних сайтів.
- Соціальний медіа-аналітик: імітує настрої в соцмережах (без реального “прослуховування” ваших постів, звісно!).
- Дослідник: збирає фонову інформацію, ключових гравців та таймлайни.
- Стратегічний експерт: аналізує ринки, конкурентів та можливості.
- Аналітик настроїв: оцінює емоційний тон, психологію та ставлення стейкхолдерів.
- Рекомендаційний агент: створює конкретні поради та кроки для впровадження.
- Синтезатор для керівництва: об’єднує все в один зрозумілий звіт.
Ми створюємо нову папку, новий проєкт, файли requirements.txt та .env.
Один із перших кастомних інструментів – Get AI headlines. Це наш “журналіст”, який може дізнатися, що нового в світі ШІ. Ми описуємо, що він робить, які аргументи приймає (адже ШІ має розуміти, що можна просити!), і що має повернути – список заголовків, розділених між собою вертикальною рискою.
“`python
Це приклад, як може виглядати інструмент для отримання заголовків
from strands.tools import tool
import requests
@tool
def get_ai_headlines(techcrunch_url: str = “https://techcrunch.com”) -> str:
“””Fetches AI news headlines from TechCrunch articles.”””
# … тут код для отримання заголовків …
return “Headline 1 | Headline 2 | Headline 3”
“`
Далі ми “навчаємо” кожного агента:
- Контент-агент: “Ти – експерт з технологічного бізнесу, шукай актуальні новини.”
- Соціальний медіа-аналітик: “Ти – аналітик соцмереж, симулюй онлайн-розмови.”
- Дослідник: “Ти – старший аналітик, спеціалізуєшся на ринках та бізнесі.”
І так далі для кожного члена команди. Ми описуємо їхню роль, даємо інструменти, і вони готові до роботи.
Інтерактив: запитаймо про все, що цікавить
Найкрутіше, що ця система може бути інтерактивною! Коли ми запускаємо сценарій, він запитує: “Про що ти хочеш дізнатися?”. Ми, наприклад, вводимо: “Що відбувається з OpenAI зараз?”.
І тут починається справжній танець:
- Агент 1 (Контент): Йде на TechCrunch, шукає новини про OpenAI.
- Агент 2 (Соцмережі): Симулює, що люди думають про OpenAI (повідомлення, пости).
- Агент 3 (Дослідник): Збирає інформацію про їхній розвиток.
- Агент 4 (Стратег): Оцінює ринкові позиції.
- Агент 5 (Аналітик настроїв): Аналізує, чи позитивно чи негативно сприймають OpenAI.
- Агент 6 (Рекомендатор): Формує поради, що робити бізнесу з цією інформацією.
- Агент 7 (Синтезатор): Останній штрих – об’єднує все в один звіт.
І ось, за кілька хвилин перед вами – майже двосторінковий, добре написаний звіт. Звісно, форматування потребує доопрацювання, але суть – аналіз, висновки, рекомендації – все на місці!
Не просто інструменти, а справжня “симфонія”: Swarm vs Graph
Strands Agents пропонують два основні підходи до оркестрації команди: Swarm (рій) і Graph (граф).
- Graph: Уявіть собі чіткий план дій, як в рецепті. Кожен крок виконується послідовно, один за одним, і результат попереднього кроку передається наступному. Це ідеально підходить, коли вам потрібен чіткий, передбачуваний процес.
- Swarm: Це як зграя бджіл, які працюють одночасно над різними завданнями. Фактично, вони можуть виконувати щось паралельно, а в кінці їхні результати об’єднуються. Це більше для досліджень, коли не завжди зрозуміло, який шлях буде найкращим.
Найкрутіше, що ви можете перемикатися між цими режимами, як між різними інструментами у майстерні, залежно від завдання.
Не тільки AWS: гнучкість – наше все!
Ще один ключовий момент: Strands Agents – модель-агностики. Це означає, що ви можете використовувати не тільки моделі від AWS Bedrock (Nova Pro, Nova Lite, Claude Sonnet 4 тощо), але й будь-які інші. Можна навіть зробити так, щоб агент сам обирав, яку модель йому використати для певного завдання, базуючись на її сильних сторонах! Уявіть, що ви наймаєте команду, де кожен спеціалізується у своєму напрямі.
Куди далі? Наша команда в дії!
Отже, ми розібралися з основами. Тепер ви маєте уявлення, як створити власну “команду супергероїв” за допомогою Strands Agents. Це відкритий, гнучкий та абсолютно безкоштовний інструмент, який може полегшити створення контенту, аналіз даних та багато іншого.
Ваше завдання, якщо ви готові його прийняти:
- Вивчити GitHub-репозиторій Strands Agents [Strands Agents]. Там є вся необхідна інформація для старту.
- Спробувати створити свого першого агента. Почніть з простого завдання, як-от розрахунок або відповідь на запитання.
- Експериментуйте з різними моделями. Відчуйте різницю у відповідях.
- Спробуйте створити команду з 2-3 агентів. Подивіться, як вони взаємодіють.
Пам’ятайте, що технології – це інструменти, а справжня магія відбувається, коли ми вчимося ними користуватися. Strands Agents – чудовий крок у майбутнє, де штучний інтелект стає нашим потужним помічником, а не просто абстрактним поняттям.
Підсумовуючи, Strands Agents від AWS – це потужний, гнучкий та відкритий фреймворк для створення багатоагентних систем. Він дозволяє легко інтегрувати різні мовні моделі, створювати власні інструменти та оркеструвати складні робочі процеси, що призводить до створення вичерпних звітів та аналітичних матеріалів.
Заклик до дії: Не бійтеся експериментувати! Створіть свою першу команду агентів вже сьогодні. Розділіться з друзями, обмінюйтеся досвідом – і хто знає, можливо, саме ви відкриєте нові горизонти у використанні штучного інтелекту. Майбутнє вже тут, і воно чекає, щоб ви його створили!







