体验 AutoGen Studio - 微软推出的友好多智能体协作框架
体验 AutoGen Studio - 微软推出的友好多智能体协作框架 - 知乎
最近分别体验了CrewAI、MetaGPT v0.6、Autogen Studio,了解了AI Agent 相关的知识。
它们的区别

可能有人要问:AutoGen我知道,那Autogen Studio是什么?
https://github.com/microsoft/autogen/tree/main/samples/apps/autogen-studio
AutoGen和AutoGen Studio都是由微软研究团队开发的,用于创建和管理人工智能(AI)智能体。
AutoGen是一个更底层的工具,它提供了创建和管理AI智能体的框架,而AutoGen Studio则提供了一个更直观的用户界面,使得用户可以更容易地使用AutoGen框架来创建和管理AI智能体。
AutoGen Studio简介
https://microsoft.github.io/autogen/blog/2023/12/01/AutoGenStudio/
主要特性
- 智能体和工作流定义修改:用户可以在界面上定义和修改智能体的参数,以及它们之间的通信方式。
- 与智能体的互动:通过UI创建聊天会话,与指定的智能体交互。
- 增加智能体技能:用户可以显式地为他们的智能体添加技能,以完成更多任务。
- 发布会话:用户可以将他们的会话发布到本地画廊。
使用和安装

注:启动Web UI前,Mac电脑需要export OPENAI_API_KEY=<your_api_key>。
进入后首页

AutoGen Studio的组成
- 构建部分(Build):定义智能体属性和工作流。
- 游乐场(Playground):与在构建部分定义的智能体工作流进行互动。
- 画廊(Gallery):分享和重用工作流配置和会话。

默认的三个Skill是生成图片、获取个人网页正文、找Arxiv的论文。


以上都是AutoGen Studio默认的页面。

AutoGen Studio的General Agent Workflow默认的提示词:

AutoGen Studio的Visualization Agent Workflow默认的提示词:

Autogen Studio的Playground给出了提示词示例,我选择它的提示词体验了下。



注:图片的AI绘图提示词来自http://x.com博主Umesh。

提交可视化示例里的提示词,并没有获得有效图表,我请GPT总结终端里的输出内容。

后查询了解到 yfinance 是从Yahoo获取市场数据的工具,我电脑网络一直访问不了Yahoo,大概是这个原因,我没有获得最终结果。
Autogen Studio是支持创建各种Skill的,给出的示例都是代码,看来要想运用好,需要有一定代码基础,当然你也可以和Autogen Studio的workflow对话,让它帮你完成某项任务,复制生成后的代码,变成新的Skill,然后我们就可以迭代完成更复杂的任务。

对比CrewAI、MetaGPT,Autogen Studio提供了可视化界面,操作起来还是很清晰的。
使用 AutoGen Studio 的应用示例
1. 自动化文档生成和管理
- 场景:公司需要创建和管理大量技术文档,这通常是一个耗时且重复的工作。
- 如何使用 AutoGen Studio:
- 创建智能体:开发一个专门的智能体,用于从数据库和其他资源自动提取信息,生成文档。
- 定义工作流:设置一个工作流程,该流程涉及从技术团队收集输入、利用智能体处理这些信息,然后生成更新的文档。
- 结果:自动更新的技术文档,减少了人工编辑的需求,提高了文档准确性和及时性。
2. 多智能体协作的客户服务
- 场景:提高客户服务效率,处理大量客户查询。
- 如何使用 AutoGen Studio:
- 建立客户服务智能体:设计多个智能体,每个智能体专注于不同类型的客户问题(如订单问题、技术支持、反馈收集等)。
- 设置智能体工作流:当客户提交查询时,初始智能体会评估问题类型并将其转发给相应的专门智能体。
- 结果:提高了客户服务的响应时间和解决方案的质量,同时减轻了客服团队的压力。
3. 数据分析和报告
- 场景:企业需要定期进行市场分析和内部数据报告。
- 如何使用 AutoGen Studio:
- 开发数据分析智能体:创建智能体来收集、整理和分析来自不同来源(如社交媒体、内部数据库等)的数据。
- 设计报告生成工作流:通过智能体自动编写和更新报告,包括数据视觉化和关键指标汇总。
- 结果:实时更新的数据报告,帮助决策者快速获取洞察,更好地理解市场趋势和业务表现。
4. 教育和培训
- 场景:在线教育平台需要为不同学习风格的学生提供定制化学习材料。
- 如何使用 AutoGen Studio:
- 创建个性化学习智能体:开发智能体来分析学生的学习习惯和表现,提供定制化的学习资源和练习。
- 实施互动学习工作流:设置智能体与学生互动,根据学生的进度和反馈调整教学内容和难度。
- 结果:提供更个性化、适应性强的在线教育体验,提高学生的学习效率和成果。
5. 创意内容生成
- 场景:广告公司需要快速生成创意内容以响应市场趋势。
- 如何使用 AutoGen Studio:
- 开发内容生成智能体:设计智能体根据最新的市场趋势和用户偏好来生成创意文案和视觉内容。
- 配置创意工作流:智能体分析市场数据,生成创意提案,并通过团队反馈进行迭代。
- 结果:快速响应市场变化,生成吸引人的广告内容,提高广告效果和用户参与度。
总结一下:
1. AutoGen和AutoGen Studio都是微软研究团队开发的工具,用于创建和管理AI智能体。AutoGen提供底层框架,AutoGen Studio提供直观的用户界面。
2. AutoGen Studio的主要特性包括定义和修改智能体、与智能体互动、增加技能、发布会话等。
3. 与CrewAI和MetaGPT相比,AutoGen Studio提供了可视化界面,对新手更友好。
4. AutoGen Studio可应用于文档管理、客户服务、数据分析、教育培训、创意内容生成等场景,助力任务自动化。
5. AutoGen Studio是一个有潜力的工具,需要结合具体场景和需求来选择使用。
了解更多内容,请看这里:
Open Interpreter:自然语言界面控制计算机 | 分享使用体验
用 Poe-API-wrapper 连接 DALLE、ChatGPT,批量完成AI绘图或文字创作
CrewAI:适用本地大模型AI自动化协作框架
LM Studio-简化安装和使用开源大模型 | OpenAI API 文字转语音本地运行程序分享
实测在Mac上使用Ollama与AI对话的过程 - 模型选择、安装、集成使用记,从Mixtral8x7b到Yi-34B-Chat
相关文章:
体验 AutoGen Studio - 微软推出的友好多智能体协作框架
体验 AutoGen Studio - 微软推出的友好多智能体协作框架 - 知乎 最近分别体验了CrewAI、MetaGPT v0.6、Autogen Studio,了解了AI Agent 相关的知识。 它们的区别 可能有人要问:AutoGen我知道,那Autogen Studio是什么? https://g…...
超简单的正则表达式从入门到精通
正则表达式,又称规则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。 概念 正则表达式是对字…...
webpack常用配置
1.webpack概念 本质上,webpack 是一个用于现代 JavaScript 应用程序的 静态模块打包工具。当 webpack 处理应用程序时,它会在内部从一个或多个入口点构建一个 依赖图(dependency graph),然后将你项目中所需的每一个模块组合成一个或多个 …...
nodejs学习计划--(六)包管理工具
包管理工具 1. 介绍 包是什么 『包』英文单词是 package ,代表了一组特定功能的源码集合包管理工具 管理『包』的应用软件,可以对「包」进行 下载安装 , 更新 , 删除 , 上传 等操作 借助包管理工具,可以快…...
数字地球开放平台农作物长势监测解决方案
数字地球开放平台农作物长势监测解决方案 利用遥感技术进行产量预测是一种高效而准确的方法,通过监测植被的生长状况、土地利用、气象等因素,可以为农业决策提供有力支持。数字地球开放平台拥有200颗卫星,为您提供一站式卫星遥感服务。 农情监…...
react hooks 的useState:
React 的 useState Hook 是一种用于在函数组件中管理状态的机制。它可以让函数组件具有类似于类组件的状态管理能力。 useState Hook 接收一个初始值作为参数,并返回一个包含状态值和更新状态值的数组。 import { useState } from react;const [state, setState] …...
编程那么难,为什么不弄一个大众一学就会的计算机语言呢?
大家好!今天要和大家聊聊一个有趣的想法: 想象一下,如果编程变得像拼乐高积木一样简单,那将是多么美妙的事情啊!不需要费尽心思去学习繁杂的语法规则和复杂的逻辑,只需要将代码块像积木一样拼接起来&#x…...
论文阅读2---多线激光lidar内参标定原理
前言:该论文介绍多线激光lidar的标定内参的原理,有兴趣的,可研读原论文。 1、标定参数 rotCorrection:旋转修正角,每束激光的方位角偏移(与当前旋转角度的偏移,正值表示激光束逆时针旋转&…...
Ubuntu 22.04 apt 安装 ros1 ros Noetic Ninjemys
众所周知 ros2还有很多功能没有移植,而ros1官方不再支持 ubuntu 20.04 之后的版本。另一方面Ubuntu 22.04 更新了很多对新硬件的驱动,有更好的兼容性和体验,这就变的很纠结。 如果想在 22.04 使用最新版本的 ros noetic 只有自己编译一个办法…...
单片机学习笔记---矩阵键盘
目录 矩阵键盘的介绍 独立按键和矩阵按键的相同之处: 矩阵按键的扫描 代码演示 代码模块化移植 Keil自定义模板步骤: 代码编写 矩阵键盘就是开发板上右下角的这个模块 这一节的代码是基于上一节讲的LCD1602液晶显示屏驱动代码进行的 矩阵键盘的介…...
第八篇 交叉编译华为云Iot SDK到Orangepi3B
本篇主要内容: 一、交叉编译华为云Iot SDK依赖1.宿主机安装交叉编译工具链(1)选择下载交叉编译工具链(2)解压、添加环境变量、重启2.交叉编译依赖库(0) 准备工作(1) 交叉…...
软件工程测试2
1.【单选】“数据流的分解一般达到2层数据流就截止”的说法是否正确 A. 正确 B. 错误 答案:B 2.【单选】 在类图中,哪种关系表达总体与局部的关系 A. 泛化 B. 实现 C. 聚合 D. 依赖 答案:C 3.【多选】从UML时序图中我们能够得到(…...
31.【TypeScript 教程】混入(Mixins)
TypeScript 混入(Mixins) 混入(Mixins)是面向对象编程中的一个比较重要的概念。本节将会通过一个实例逐步介绍混入是如何在 TypeScript 中使用的。 1. 解释 在 TypeScript 中,可以根据不同的功能定义多个可复用的类,它们将作为 …...
C语言常见面试题:什么是联合体,联合体的作用是什么?
联合体(union)是一种特殊的数据类型,它可以在同一块内存单元中存储不同的数据类型。联合体的作用在于能够节省内存空间,并且可以用来实现数据的共享和交换。 联合体的定义方式是在C语言中通过关键字union来定义,例如&…...
Nginx进阶篇【五】
Nginx进阶篇【五】 八、Nginx实现服务器端集群搭建8.1.Nginx与Tomcat部署8.1.1.环境准备(Tomcat)8.1.1.1.浏览器访问:8.1.1.2.获取动态资源的链接地址:8.1.1.3.在Centos上准备一个Tomcat作为后台web服务器8.1.1.4.准备一个web项目,将其打包为war8.1.1.5.启动tomcat进…...
IndexedDB
Web SQL Database | Can I use... Support tables for HTML5, CSS3, etc IndexedDB | Can I use... Support tables for HTML5, CSS3, etc 为什么websql被废弃?_笔记大全_设计学院 WebSQL有兼容、性能、安全问题,要考虑使用IndexedDB替代。 一文看懂 In…...
git用法总结
以gitee为例,GitHub也可参考本文 创建远程仓库 在自己的gitee主页 创建本地仓库 在文件夹下,右键→git bash here git init添加gitignore vi .gitignoregitignore里的内容根据自己实际情况设置,这里举个例子 # #开头的是注释 # Prer…...
统计学-R语言-7.3
文章目录 前言总体方差的检验一个总体方差的检验两个总体方差比的检验 非参数检验总体分布的检验正态性检验的图示法Shapiro-Wilk和K-S正态性检验总体位置参数的检验 练习 前言 本篇文章继续对总体方差的检验进行介绍。 总体方差的检验 一个总体方差的检验 在生产和生活的许多…...
在Idea中使用git查看历史版本
idea查git历史 背景查看步骤总结 背景 有好几次同事到我电脑用idea查看git管理的历史记录,每次都说我的idea看不了历史版本,叫我到他电脑上去看,很晕,为什么,原来是我自己把显示历史文件的视图覆盖了,下面我们来一起学…...
书籍 - 《华杉讲透孙子兵法》 - 11
第十章 地形第十 六种地形的用兵之道(一):先占有利地形 我们读兵法,会发现很多时候,等待都是最好的策略。你一定要懂得等,等得起。有的人不能等,总以为等待就是不作为,那就容易“胡作…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
