AutoGen通过GPTAssistantAgent
实现了多个ChatGPT之间的协作,用于处理复杂任务。
TL;DR
现在,通过GPTAssistantAgent
,OpenAI助手已经集成到AutoGen中。
这使得多个OpenAI助手(作为现在流行的GPT的后端)能够协作处理复杂任务。
可以参考以下示例笔记本:
简介
上周,OpenAI推出了GPT,使用户能够创建适合自己的定制ChatGPT。 但是,如果这些个体GPT能够合作做更多事情呢? 幸运的是,由于AutoGen,这已经成为现实! AutoGen从今年年初开始就一直在开创代理人并支持多代理人工作流,现在(从版本0.2.0b5开始)我们引入了与助手API的兼容性,该API目前处于beta预览阶段。
为了实现这一点,我们添加了一个新的(实验性的)代理人,称为GPTAssistantAgent
,它可以无缝地将这些新的OpenAI助手添加到基于AutoGen的多代理人工作流中。
这种集成显示出巨大的潜力和协同效应,我们计划继续增强它。
安装
pip install pyautogen==0.2.0b5
基本示例
下面是一个基本示例,使用UserProxyAgent
允许与GPTAssistantAgent
进行交互。
首先,导入新的代理人并设置config_list
:
from autogen import config_list_from_json
from autogen.agentchat.contrib.gpt_assistant_agent import GPTAssistantAgent
from autogen import UserProxyAgent
config_list = config_list_from_json("OAI_CONFIG_LIST")
然后简单地定义OpenAI助手代理人并给它任务!
# 使用助手API创建新助手
gpt_assistant = GPTAssistantAgent(
name="assistant",
llm_config={
"config_list": config_list,
"assistant_id": None
})
user_proxy = UserProxyAgent(name="user_proxy",
code_execution_config={
"work_dir": "coding"
},
human_input_mode="NEVER")
user_proxy.initiate_chat(gpt_assistant, message="打印Hello World")
GPTAssistantAgent
支持创建新的OpenAI助手或重用现有助手
(例如,通过提供assistant_id
)。
代码解释器示例
GPTAssistantAgent
允许您指定一个OpenAI工具,
(例如,函数调用,代码解释器等)。下面的示例演示了如何使用 OpenAI 代码解释器创建一个能够解决任务的助手。
# 使用 Assistant API 创建新的助手
gpt_assistant = GPTAssistantAgent(
name="assistant",
llm_config={
"config_list": config_list,
"assistant_id": None,
"tools": [
{
"type": "code_interpreter"
}
],
})
user_proxy = UserProxyAgent(name="user_proxy",
code_execution_config={
"work_dir": "coding"
},
human_input_mode="NEVER")
user_proxy.initiate_chat(gpt_assistant, message="Print hello world")
在这里查看更多示例。
限制和未来工作
- 使用 GPT 助手的群聊管理器尚未完成。
- 具备多模态能力的 GPT 助手尚未发布,但我们致力于支持它们。
致谢
GPTAssistantAgent
是与 @IANTHEREAL、Jiale Liu、Yiran Wu、Qingyun Wu、Chi Wang 和其他 AutoGen 维护者合作完成的。