AgentGPT — автономные AI-агенты прямо в браузере

· 1 мин чтения
ai-agents autonomous-agents nextjs fastapi open-source
📂 Исходный код на GitHub

AgentGPT — open-source платформа на Next.js и FastAPI для сборки, настройки и запуска автономных AI-агентов в браузере.

AgentGPT — автономные AI-агенты прямо в браузере

AgentGPT — open-source платформа, которая собирает, настраивает и запускает автономных AI-агентов прямо в браузере. Вы придумываете агенту имя и задаёте ему любую цель. Дальше агент работает сам: он придумывает задачи, выполняет их по очереди и учится на результатах. Проект разработан командой Reworkd AI и распространяется по лицензии GPL-3.0.

Что такое автономный агент

Обычный чат с LLM отвечает на один вопрос за раз. Вы пишете промпт — модель отвечает. Диалог на этом заканчивается. AgentGPT устроен иначе.

Вы формулируете цель — например, «составь план запуска продукта» или «изучи тему и подготовь конспект». Агент превращает цель в список конкретных задач. Затем он берёт задачи по одной и выполняет их. Каждый результат агент оценивает. На основе увиденного он корректирует следующие шаги.

Цикл «придумал задачу — выполнил — сделал выводы» повторяется, пока цель не будет достигнута. Такой режим работы называют автономным. Человек только ставит цель. Пошаговых команд он не даёт. Роль человека больше похожа на роль руководителя: он следит за ходом работы и может вмешаться в любой момент.

Вот как выглядит такой цикл на упрощённом примере. Цель — «подбери три книги про рынок ИИ». Агент разбивает её на задачи: найти известные книги, проверить года издания, выбрать самые свежие, составить итоговый список. Он выполняет первый шаг и смотрит на результат. Допустим, нашёл пять книг вместо трёх. Тогда следующей задачей он ставит отсечение лишних. Так агент сам строит план, а не следует жёсткому сценарию.

Два способа попробовать

Самый быстрый путь — демо на сайте проекта. Ничего устанавливать не нужно. Вы сразу задаёте имя агенту, формулируете цель и запускаете его. Так удобно оценить идею за пару минут.

Ввод агента при этом везде одинаковый: имя и цель. Смена облака на свой сервер ничего не меняет в самом подходе. Разница только в том, чьи ключи и чья база данных используются.

Второй путь — развернуть AgentGPT у себя. Этот вариант даёт полный контроль. Вы используете свои ключи API и храните данные в своей базе. Своё развёртывание также открывает код: можно менять логику агентов и встраивать платформу в свои продукты. Ниже разберём именно его.

Самостоятельная установка

Проект идёт с установочным CLI. Скрипт настраивает всё автоматически: переменные окружения и ключи API, базу данных MySQL, бэкенд и фронтенд. Заготовка для переменных окружения лежит в файле .env.example.

Для работы понадобится:

  • Node.js версии 18 или новее;
  • Git;
  • Docker. После установки создайте аккаунт и войдите в приложение;
  • редактор кода на ваш вкус, например VS Code;
  • ключ OpenAI API;
  • опционально: ключ Serper и токен Replicate.

Пара слов про ключи. OpenAI — основной: без него агент не сможет думать. Serper — это API доступа к веб-поиску, а Replicate — платформа для запуска ML-моделей. Эти два ключа необязательны: они нужны для расширенных сценариев.

Склонируйте репозиторий и запустите скрипт. Для macOS и Linux:

git clone https://github.com/reworkd/AgentGPT.git
cd AgentGPT
./setup.sh

Для Windows:

git clone https://github.com/reworkd/AgentGPT.git
cd AgentGPT
./setup.bat

Скрипт задаст вопросы и подскажет, что вводить. Он спросит ключи API и сам поднимет все сервисы. Когда установка закончится, откройте в браузере адрес http://localhost:3000 — интерфейс AgentGPT готов к работе.

Стек технологий

Проект собран из зрелых инструментов, знакомых большинству веб-разработчиков.

Задача Технология
Каркас проекта create-t3-app + FastAPI-template
Фронтенд Next.js 13 + TypeScript
Бэкенд FastAPI
Аутентификация Next-Auth.js
ORM Prisma и SQLModel
База данных MySQL (Planetscale)
Стили TailwindCSS + HeadlessUI
Валидация схем Zod и Pydantic
Работа с LLM LangChain

Здесь два мира. Фронтенд написан на TypeScript, бэкенд — на Python. Для каждого языка выбрана своя пара инструментов: Zod и Pydantic проверяют данные, Prisma и SQLModel работают с базой. Так команды на каждом языке используют привычные решения.

LangChain берёт на себя логику общения с языковой моделью. Благодаря этому ядро агента не привязано жёстко к одному провайдеру LLM.

Архитектура проекта

В репозитории три основных каталога. Каталог next содержит фронтенд на Next.js: интерфейс, страницы и аутентификацию через Next-Auth. Каталог platform — это бэкенд на FastAPI. Здесь живёт логика агентов и работа с LLM через LangChain. Каталог db хранит схемы базы данных MySQL. Доступ к данным идёт через Prisma на фронтенде и SQLModel на бэкенде.

Такое разделение удобно для доработок. Можно заменить фронтенд, не трогая логику агентов. Или добавить свою интеграцию на бэкенде, не вникая в интерфейс. Схема базы отделена от кода, поэтому миграции видны отдельно.

Лицензия и сообщество

Код опубликован под лицензией GPL-3.0. Это значит, что производные проекты тоже обязаны оставаться открытыми. Если возьмёте код AgentGPT как основу своего продукта, исходники придётся опубликовать.

Проект развивается при поддержке сообщества. У AgentGPT есть документация, Discord-сервер и Twitter команды. README переведён на китайский и венгерский языки — проект собирает разработчиков со всего мира. Свои изменения можно отправлять через обычные pull request'ы в репозиторий.

Кому подойдёт AgentGPT

Платформа полезна в трёх случаях.

Первое — вы хотите на практике понять, как устроены автономные агенты. Цикл «цель — задачи — рефлексия» проще один раз увидеть вживую, чем десять раз прочитать в статьях.

Второе — вам нужен готовый каркас для своего агентного продукта. Стек на Next.js и FastAPI экономит недели работы: аутентификация, база данных и интерфейс уже настроены.

Третье — вы изучаете, как связывать LLM с базой данных и внешними сервисами через LangChain. Здесь всё это собрано в одном работающем приложении.

Стоит помнить

У автономных агентов есть общие особенности, и AgentGPT здесь не исключение.

Каждая итерация цикла — это обращение к языковой модели. Длинные цели означают больше задач, а больше задач — больше расходов на API. Поэтому цель лучше формулировать конкретно. «Расскажи про маркетинг» породит расплывчатые задачи. «Составь чек-лист запуска рассылки из десяти пунктов» даст понятный и измеримый результат.

Второй момент — контроль. Агент действует сам, но следить за ним стоит. Он может уйти в сторону от цели или зациклиться на одной задаче. Ход выполнения виден в интерфейсе, поэтому вмешаться можно в любой момент.

AgentGPT не решает все задачи за вас. Но как отправная точка в мире AI-агентов он работает отлично: подняли проект за вечер — и уже экспериментируете со своими первыми автономными агентами.

Источник: https://github.com/reworkd/AgentGPT