注意:翻译需要符合中文语序、流程、通顺。
Agentok Studio
AutoGen 可视化 - 通过拖放轻松构建多代理应用程序。
⚠️ 警告: 本项目目前处于开发阶段。目前不建议用于生产环境。
🌟 什么是 Agentok Studio
Agentok Studio 是一个基于 AutoGen 的工具,AutoGen 是来自微软和 充满活力的社区贡献者 的强大代理框架。
我们认为 AutoGen 处于下一代多代理应用技术的前沿。Agentok Studio 通过提供直观的可视化工具,使得创建和管理复杂的基于代理的工作流变得更简单,从而将这一概念提升到了一个新的水平。这简化了创作者和开发者的整个过程。
我们致力于创建一个生成原生 Python 代码且依赖性最小的用户友好工具。简单来说,Agentok Studio 是一个基于图表的 autogen 代码生成器。生成的代码是自包含的,可以像普通的 Python 程序一样在任何地方执行,只依赖于官方的 pyautogen
库。
欢迎为此项目做出贡献(问题、拉取请求、文档,甚至是拼写错误修正)!所有贡献者都将被添加到贡献者墙中。
💡 快速入门
要快速探索 Agentok Studio 的功能,请访问 https://studio.agentok.ai。虽然我们提供了此项目的在线部署,但请注意,它不适合生产使用。服务水平协议不作保证,存储的数据可能会因重大变更而被清除。
在以访客身份或使用 OAuth2 账户登录后,您可以点击 Create New Project 按钮创建一个新项目。新项目自带一个示例工作流。您可以点击右下角闪烁的机器人图标开始对话。
由于 GPT-4 和 AutoGen 的限制,这个简单的工作流可能不会如预期那样工作,但它是理解 Agentic App 和 Agentok Studio 基本概念的一个良好起点。
欲了解项目的更多信息,请参阅 快速入门。
🐳 本地运行(使用 Docker)
该项目包含前端(使用 Next.js 构建)和后端服务(使用 Python 中的 FastAPI 构建),并已完全 docker 化。
在运行项目之前,您需要在 ui
和 api
目录中创建 .env
文件并设置环境变量。
cp frontend/.env.sample frontend/.env
cp api/.env.sample api/.env
cp api/OAI_CONFIG_LIST.sample api/OAI_CONFIG_LIST
请注意,Supabase 为每个项目提供 anon 密钥和 service_role 密钥。请确保将 anon 密钥设置为前端的 NEXT_PUBLIC_SUPABASE_ANON_KEY
,并将 service role 密钥设置为后端(api)的 SUPABASE_SERVICE_KEY
。
在本地运行的最简单方法是使用 docker-compose:
docker-compose up -d
您也可以使用 docker 分别构建并运行前端和服务:
docker build -t agentok-api ./api
docker run -d -p 5004:5004 agentok-api
docker build -t agentok-frontend ./frontend
docker run -d -p 2855:2855 agentok-frontend
(默认端口号 2855 是我们第一个办公室的地址。)
🛠️ 本地运行(不使用 Docker)
如果您有兴趣为此项目的发展做出贡献,或希望从源代码运行它,您可以选择独立运行前端和服务。以下是操作方法:
前端
- 进入 ui 目录
cd frontend
。 - 将
.env.sample
重命名为.env.local
,并正确设置变量的值。 - 使用合适的包管理器命令(例如
pnpm install
或yarn
)安装必要的依赖项。 - 使用提供的启动脚本运行 ui 服务(例如
pnpm dev
或yarn dev
)。
后端服务
- 切换到 api 服务目录
cd api
。 - 将
.env.sample
重命名为.env
,OAI_CONFIG_LIST.sample
重命名为OAI_CONFIG_LIST
,并正确设置变量的值。 - 安装 Poetry。
- 使用命令
poetry run uvicorn agentok_api.main:app --reload --port 5004
启动。
REPLICATE_API_TOKEN
是 LLaVa 代理所需的。如果您需要使用此代理,请确保在环境变量中包含此令牌。
重要提示:最新版本的 AutoGen 默认要求使用 Docker 进行代码执行。要继续操作,您必须:
- 在本地机器上安装 Docker,或
- 通过在
api/.env
文件中设置AUTOGEN_USE_DOCKER=False
来禁用此要求。
注意:由于此项目的默认部署已 docker 化,因此此要求默认是禁用的。
Supabase(数据库服务)
此项目依赖 Supabase 进行用户身份验证和数据存储。要开始使用,请在 https://supabase.com/ 上创建一个 Supabase 项目,并在 .env
文件中设置环境变量(带有 SUPABASE 名称的变量)。如果您愿意,也可以部署自己的 Supabase 实例,但这超出了本文档的范围。
按照前面提到的步骤启动 ui 和 api 服务后,您可以通过以下网址在浏览器中访问应用程序:
- api: http://localhost:5004(OpenAPI 文档地址为 http://localhost:5004/docs)
- frontend: http://localhost:2855
如果您的服务成功启动并运行在预期的端口上,您应该会看到用户界面或通过该 URL 接收到 api 服务的响应。
👨💻 贡献
欢迎贡献!不仅限于代码,还包括文档和项目的其他方面。您可以打开一个 [GitHub