AIEvo:创建多智能体协作应用的高效框架
일반 소개
AIEvo是蚂蚁集团开源的多代理框架,旨在高效创建多代理应用。该框架严格遵循SOP任务图,提升复杂任务的执行成功率,并通过反馈和监控机制确保高灵活性和可扩展性。AIEvo已在蚂蚁集团内部生产环境中验证,具有稳定性和可靠性。用户可以利用AIEvo创建多种多代理应用,如辩论比赛、狼人杀游戏、卧底游戏等,也可以创建单代理应用,如完成代码编写任务的工程师代理。

기능 목록
- 高SOP合规性:严格遵循SOP任务图执行复杂任务。
- 高执行成功率:通过反馈和监控机制提升任务成功率。
- 高灵活性:支持基于任务属性的动态任务创建和订阅设置。
- 可扩展性:提供众多扩展点,支持自定义增强框架。
- 企业验证:在蚂蚁集团内部生产环境中验证,确保框架的稳定性和可靠性。
- 多代理应用示例:支持创建辩论比赛、狼人杀游戏、卧底游戏等多代理应用。
- 单代理应用示例:支持创建完成代码编写任务的工程师代理。
도움말 사용
설치 프로세스
- 클론 창고:在终端中运行以下命令克隆AIEvo仓库:
git clone https://github.com/antgroup/aievo.git
- 进入目录:进入克隆的AIEvo目录:
cd aievo
- 종속성 설치:根据项目的依赖文件安装所需依赖:
go mod tidy
사용 가이드라인
创建多代理应用
- 初始化基础模型客户端::
client, err := openai.New(openai.WithToken(os.Getenv("OPENAI_API_KEY")), openai.WithModel(os.Getenv("OPENAI_MODEL")), openai.WithBaseURL(os.Getenv("OPENAI_BASE_URL")))
if err != nil {
log.Fatal(err)
}
- 文件操作相关工具::
fileTools, _ := file.GetFileRelatedTools(workspace)
- 命令执行工具::
bashTool, _ := bash.New()
- 构建工具集::
engineerTools := make([]tool.Tool, 0)
engineerTools = append(engineerTools, fileTools...)
engineerTools = append(engineerTools, bashTool)
- 回调处理器::
callbackHandler := &CallbackHandler{}
- 定义环境::
env := environment.NewEnv()
- 构建代理::
engineer, _ := agent.NewBaseAgent(
agent.WithName("engineer"),
agent.WithDesc(EngineerDescription),
agent.WithPrompt(EngineerPrompt),
agent.WithInstruction(SingleAgentInstructions),
agent.WithVars("sop", Workflow),
agent.WithVars("workspace", workspace),
agent.WithTools(engineerTools),
)
创建单代理应用
- 初始化基础模型客户端::
client, err := openai.New(openai.WithToken(os.Getenv("OPENAI_API_KEY")), openai.WithModel(os.Getenv("OPENAI_MODEL")), openai.WithBaseURL(os.Getenv("OPENAI_BASE_URL")))
if err != nil {
log.Fatal(err)
}
- 文件操作相关工具::
fileTools, _ := file.GetFileRelatedTools(workspace)
- 命令执行工具::
bashTool, _ := bash.New()
- 构建工具集::
engineerTools := make([]tool.Tool, 0)
engineerTools = append(engineerTools, fileTools...)
engineerTools = append(engineerTools, bashTool)
- 回调处理器::
callbackHandler := &CallbackHandler{}
- 定义环境::
env := environment.NewEnv()
- 构建代理::
engineer, _ := agent.NewBaseAgent(
agent.WithName("engineer"),
agent.WithDesc(EngineerDescription),
agent.WithPrompt(EngineerPrompt),
agent.WithInstruction(SingleAgentInstructions),
agent.WithVars("sop", Workflow),
agent.WithVars("workspace", workspace),
agent.WithTools(engineerTools),
)
示例应用
- 辩论比赛:多个代理参与辩论比赛。
- 狼人杀游戏:多个代理参与狼人杀游戏。
- 卧底游戏:多个代理参与卧底游戏。
- 论文写作:多个代理协作撰写论文。
- 工程师代理:单个代理完成代码编写任务。
주의
- 确保在使用前已正确配置环境变量,如
OPENAI_API_KEY
및OPENAI_MODEL
및OPENAI_BASE_URL
등 - 根据具体需求自定义代理的描述、提示和指令。
- 使用回调处理器分析代理的执行过程,优化任务执行效果。
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...