Autogen智能体实战-Autogen框架介绍

文章目录

  • 一,Autogen简介
  • 二,Autogen原理
    • 1,Autogen原理图解
    • 2,拆解Autogen是如何完成绘制特斯拉股票趋势图的

这篇文章介绍一个开源的Agent框架-微软的Autogen。

一,Autogen简介

  • 官网:https://microsoft.github.io/autogen/
  • git:http://github.com/microsoft/autogen
  • discord:https://discord.com/invite/pAbnFJrkgZ

GPTs这么强大,不是挺好吗?为什么要开源的智能体Autogen框架呢?那

GPTs背靠OpenAI,的确非常强悍,但是也有弊端,弊端就在于它完全依赖于ChatGPT,而对于ChatGPT,我们只能在应用层调用其API,无法在大模型层面做一些个性化的调整,比如想让大模型在回答问题的过程中调用本地的应用。

GPTs做不到,但是Autogen框架可以做到。

Autogen可以对接商业化模型,如OpenAI;也可以对接开源的模型,比如说本地部署的KoDrama、WitherCoder、DeepSeek、通义千问。

Autogen可以简单理解为是一个GPTs的一个本地化平替。

Autogen提供一个可视化的UI界面Autogen Studio,提供模型配置、能力配置、工作流配置等能力。通过这些能力,可以实现类似GPTs的功能。

二,Autogen原理

1,Autogen原理图解

接下来,先通过官网的一个例子来理解Autogen的设计架构以及工作原理。

下图是官网提供的一个Autogen智能体架构图。

在这里插入图片描述

如上图左侧,Autogen框架默认提供两个agent:

  • 一个用户代理,User Proxy Agent
  • 一个助理代理,Assistant Agent

工作流程描述如下:

  • 用户提出一个需求
  • 用户代理接收到需求后,发给助理
  • 助理接收到需求后,进行总体规划设计,将这个需求拆解为多个步骤,规定每个步骤需要执行的任务
  • 助理将规划整体返回给用户代理
  • 用户代理按照规划按步骤执行,执行的过程中,可以持续、多次与助理进行沟通,调整任务的具体内容

2,拆解Autogen是如何完成绘制特斯拉股票趋势图的

以上图中的业务场景为例,用户要求绘制特斯拉最近一年的股票价格的变化趋势图。

在这里插入图片描述

助理对这个需求进行拆解,之后的交互过程如下:

  • 助理告知用户代理第一个步骤是执行一段代码
  • 用户代理执行助理提供的代码
  • 用户代理将执行的过程中出现错误的错误反馈给助理
  • 助理给出解决方案,提供一个脚本
  • 用户代理执行这个脚本后,重新执行代码,成功画出趋势图
  • 用户代理对结果进行反馈,需要对结果进行调整,要求绘制百分比趋势图
  • 助理接收到反馈后,调整任务内容,给出新的代码
  • 用户代理执行新的代码,绘制出满足要求的趋势图

这就是Autogen的工作原理,两个agent协同工作, 完成用户需求。

这是最简单的场景,只涉及两个智能体的交互,实际上Autogen框架支持多智能体间的复杂交互。

相当于可以创建一个公司,这个公司的工作不是由具体的物理世界的人完成的,而是由多个具有不同能力的智能体完成的,每个智能体就像是一个人一样,他们之间也可以像人一样相互写作,完成一个个复杂的任务。

后续将介绍多智能体的交换案例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/43239.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在idea中查看某个接口的所有实现类图

一、选中某个接口右键 ---> Diagrams ---> show Diagrams,然后就会进入一个新的 tab 页; 二、然后在出来的图上选中某个接口右键 ---> show Implementations,就会显示选中接口的所有实现类列表; 三、最后 ctrl A 全部选…

uniapp父页面调用子页面 组件方法记录

文章目录 导文如何点击父页面,触发子页面函数先写一个子页面的基础内容父元素 如何点击父页面,修改子页面的值先写一个子页面的基础内容父元素 导文 如何点击父页面,触发子页面函数? 如何点击父页面,修改子页面的值&am…

英区PayPal账号3分钟绑定WISE英镑的银行收款账户

正文开始,我们先登录英区PayPal账号后 有很多银行给我们选择,但是没有WISE的选项,所以我们手动输入“WISE”,然后如下图所示点击“Enter Your Bank Detailds”输入银行详细信息按钮。 然后输入我们的WISE英镑账户的收款银行信息&a…

Advanced Electronic Materials:磁性智能皮肤作为人机界面

近年来,电子可穿戴设备的普及率迅速上升,柔性可穿戴设备因其高生物相容性、功能性、适应性和低成本而在人机界面上引起了极大的关注。柔性磁性智能皮肤是这一快速发展的柔性可穿戴电子领域的一部分,为人类感知发展开辟了一条新的道路。磁感是…

SpringCloud第一篇Docker基础

文章目录 一、常见命令二、数据卷三、数据挂载四、自定义镜像五、网络 一、常见命令 Docker最常见的命令就是操作镜像、容器的命令,详见官方文档: https://docs.docker.com/ 需求: 在DockerHub中搜索Nginx镜像,查看镜像的名称 …

k8s集群如kubeadm init和kube-flannel.yam问题

查看k8s中角色内容kubectl get all (显示pod和server以及delment) 删除应用资源选择删除先删除部署查看部署和pod没了服务还在,但资源和功能以及删除,删除服务kubectl delete 服务名(部署名),get pods 获取默认空间的容…

从资金到未来:技术融资如何重塑IT顾问在AI与网络安全的角色?

一方面是人工智能 (AI) 和机器学习 (ML) 的双引擎,另一方面是网络安全和数据泄露威胁中不断变化的威胁形势,IT 格局正在经历翻天覆地的变化。这场数字革命对 IT 顾问来说既是挑战也是机遇,但要成…

解决计算机中mfc140u.dll没有被指定在windows上运行

在打开电脑软件时候出现mfc140u.dll丢失或找不到mfc140u.dll怎么办?遇到这个问题相当困扰,mfc140u.dll到底是什么?为什么会出现这个情况,相信很多人都不知道,今天我给大家详细介绍一下mfc140u.dll是什么,为…

【C++修行之道】string类的使用

目录 一.C语言中的字符串 二、标准库中的string类 (了解) 2.1 string类(了解) 2.2 帮助文档阅读 三、 string类的常用接口说明 3.1 string类对象的常见构造 3.2 string类对象的容量操作 3.3 string类对象的访问及遍历操作 字符串类的简单实现 3.4 string类对象的修改…

【论文阅读笔记】ASPS: Augmented Segment Anything Model for Polyp Segmentation

1.论文介绍 ASPS: Augmented Segment Anything Model for Polyp Segmentation ASPS:用于息肉分割的扩展SAM模型 2024年 arxiv Paper Code 2.摘要 息肉分割在结直肠癌诊断中起着至关重要的作用。最近,Segment Anything Model(SAM)的出现利用其在大规模…

视频压缩软件哪个压缩最小,视频用什么软件压缩最小

在数字媒体时代,视频内容的生产与分享已成为生活常态。但随之而来的问题就是,大视频文件占用过多存储空间,上传和分享也变得不便。本文将为你揭示如何将视频压缩到最小,同时保持画质清晰。让我们一起探索吧! 下载并文件…

剪辑抽帧技巧有哪些 剪辑抽帧怎么做视频 剪辑抽帧补帧怎么操作 剪辑抽帧有什么用 视频剪辑哪个软件好用在哪里学

打破视频节奏,让作品告别平庸。抽帧剪辑可以改变视频叙事节奏,人为制造冲突、转折、卡顿的效果。这种剪辑方式,不仅可以推进剧情发展,还能吸引观众的注意力,有效防止观影疲劳。有关剪辑抽帧技巧有哪些,剪辑…

Typora篇-忍痛开启

语雀专业会员即将到期, 我看着99元的学费款, 我决定重新用回Typora。 虽然里面有一些文件但是我还是舍不得ಥ_ಥ 99元巨款。 下面开启我的Typora整活历程, 大家有什么好用的插件快捷方式一起来分享啊。

MyBatis框架学习笔记(二):原生API 的调用 和 注解的使用

1 MyBatis原生API 1.1 原生API 快速入门需求 在笔记一案例的基础上将增删改查,使用 MyBatis 原生的 API 完成,就是直接通过SqlSession 接口的方法来完成 1.2 原生API 快速入门-代码实现 创建 src\test\java\com\hspedu\mapper\MyBatisNativeTest.jav…

uni-app 封装http请求

1.引言 前面一篇文章写了使用Pinia进行全局状态管理。 这篇文章主要介绍一下封装http请求,发送数据请求到服务端进行数据的获取。 感谢: 1.yudao-mall-uniapp: 芋道商城,基于 Vue Uniapp 实现,支持分销、拼团、砍价、秒杀、优…

实用性提升百分之一百!!!【ONLYOFFICE 8.1版本】全方位深度性能测评

目录 【ONLYOFFICE 8.1 版本】全方位深度性能测评 一、界面与用户体验 二、文字处理功能 表格处理功能 演示文稿功能 协作与共享功能 性能与稳定性 总结 【ONLYOFFICE 8.1 版本】全方位深度性能测评 在当今数字化办公的时代,办公软件的选择对于提高工作效率和…

selenium处理cookie问题实战

1. cookie获取不完整 需要进入的资损平台(web)首页,才会出现有效的ctoken等信息 1.1. 原因说明 未进入指定页面而获取的 cookie 与进入页面后获取的 cookie 可能会有一些差异,这取决于网站的具体实现和 cookie 的设置方式。 通常情况下,一些…

【解决Windows11系统Windows Hello不能使用的问题】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、Windows Hello是什么?二、使用步骤1.购买一个摄像头2.开始配置 三、异常解决1.内置管理员不能使用2.没找到合适的摄像头3.摄像头需要专用驱动4.…

原创作品——教育课程界面设计

教育行业UI界面设计需直观易懂,确保学习者能迅速上手,减少认知负担。布局清晰,导航便捷,功能按钮和图标设计应符合教育场景,直接支持学习目标的达成,促进高效学习体验。 通过丰富的互动元素(如拖…

博途通讯笔记1:1200与1200之间S7通讯

目录 一、添加子网连接二、创建PUT GET三、各个参数的意义 一、添加子网连接 二、创建PUT GET 三、各个参数的意义