使用 AutoGen Studio
AutoGen Studio 支持声明式创建代理工作流程,可以在聊天界面中指定任务并运行,以供代理完成。预期的使用行为是开发人员可以创建技能和模型, 将它们“关联”到代理上,并将代理组合成可以在聊天界面中进行交互测试的工作流程。
构建代理工作流程
AutoGen Studio 实现了几个最终组合成工作流程的实体。
技能
技能是实现任务解决方案的 Python 函数。一般来说,一个好的技能应该有一个描述性的名称(例如 generate_images),详细的文档字符串和良好的默认值(例如,将文件写入磁盘以进行持久化和重用)。技能可以与代理规范“关联”或“附加”。
模型
模型是指 LLM 的配置。与技能类似,模型可以附加到代理规范上。AutoGen Studio 接口支持多种模型类型,包括 OpenAI 模型(以及任何支持 OpenAI 端点规范的其他模型端点提供者)、Azure OpenAI 模型和 Gemini 模型。
代理
代理实体以声明方式指定 AutoGen 代理的属性(大部分但不是全部与基本的 AutoGen Conversable 代理类成员相对应)。目前支持 UserProxyAgent
、AssistantAgent
和 GroupChat
代理抽象。
创建代理后,可以将现有的模型或技能“添加”到代理中。
工作流程
代理工作流程是一组代理(代理团队)的规范,它们可以共同完成一个任务。AutoGen Studio 支持两种高级工作流程模式:
自主对话:
该工作流程实现了一种范式,其中定义了代理并启动了代理之间的对话以完成任务。AutoGen 将其简化为定义一个“发起者”代理和一个“接收者”代理,其中接收者代理是从先前创建的代理列表中选择的。请注意,当接收者是一个“GroupChat”代理(即包含多个代理)时,这些代理之间的通信模式由“GroupChat”代理配置中的“speaker_selection_method”参数确定。
顺序对话
这个工作流允许用户指定一个AssistantAgent
代理的列表,这些代理按顺序执行以完成任务。运行时的行为遵循以下模式:在每个步骤中,每个AssistantAgent
都与一个UserProxyAgent
配对,并启动聊天以处理输入任务。这个交流的结果被总结并提供给下一个AssistantAgent
,它也与一个UserProxyAgent
配对,并将它们的总结结果传递给序列中的下一个AssistantAgent
。这个过程一直持续到达序列中的最后一个AssistantAgent
。
测试代理工作流程
AutoGen Studio允许用户在任务上进行交互式测试工作流程,并查看生成的工件(如图像、代码和文档)。
用户 还可以查看代理工作流程在处理任务时的“内心独白”,以及查看与运行相关的成本(如轮次数、令牌数等)和代理操作(如是否调用了工具和代码执行的结果)等分析信息。
导出代理工作流程
用户可以下载他们创建的技能、代理和工作流程配置,并共享和重用这些工件。AutoGen Studio还提供了一个无缝的流程,可以将工作流程导出并部署为应用程序编程接口(API),以便在部署工作流程为API的其他应用程序中使用。
导出工作流程
AutoGen Studio允许您将选定的工作流程导出为JSON配置文件。
构建 -> 工作流程 -> (在工作流程卡上) -> 导出