AI Agent之AutoGen框架部署、测试

发布于:2025-03-21 ⋅ 阅读:(27) ⋅ 点赞:(0)

一、AutoGen studio部署与测试

1、部署与启动

最好是创建一个新的conda环境,然后在环境中进行安装部署。
conda安装和新环境创建具体操作方式:https://blog.csdn.net/lucky_chaichai/article/details/117323715
1、创建AutoGen studio的conda环境
为保证兼容性,建议安装3.10及以上版本的python。

conda create -n autogen_studio python=3.11

2、安装AutoGen studio

#激活对应的conda环境
conda activate autogen_studio 
#安装AutoGen studio
pip install autogenstudio

3、启动AutoGen studio并访问
在autogen_studio 这个环境下,执行:

# 方式1:这种方式只能在本地浏览器访问,默认port是8080
autogenstudio ui --port 8081
# 方式2:可以指定host参数,这样在其他电脑上也能访问ui界面
autogenstudio ui --port 8081 --host replaced by your_ip

上述命令运行后,直接将网址复制到浏览器中打开即可:

方式1网址是:
http://127.0.0.1:8081

方式2网址是:
http://your_ip:8081

其他可选参数还有:

  • --appdir argument to specify the directory where the app files (e.g., database and generated user files) are stored. By default, it is set to the a .autogenstudio directory in the user’s home directory.
  • --reload argument to enable auto-reloading of the server when changes are made to the code. By default, it is set to False.
  • --database-uri argument to specify the database URI. Example values include sqlite:///database.sqlite for SQLite and postgresql+psycopg://user:password@localhost/dbname for PostgreSQL. If this is not specified, the database URIL defaults to a database.sqlite file in the --appdir directory.
  • --upgrade-database argument to upgrade the database schema to the latest version. By default, it is set to False.

2、新建skills、model、Agent、workflow

整体用户界面如下:
在这里插入图片描述

1、新建skils(相当于tool、代码函数)

skills是用户可以自定义的、Agent可以调用来执行任务的python函数。
整体界面如下图,点击“new skills”按钮可以创建自己的skills。
在这里插入图片描述
创建skills其实就是用python代码自定义一个函数,比如下面的这个“generate_and_save_images” skills:

  • 包括两个大部分:左侧python代码块、右侧skill的基本配置;
  • 这个是页面上预置的skills,功能是帮助用户生成并保存图片(使用这个skills之前需要在conda环境中安装matplotlib模块 );
  • 右侧需要定义skills名称(需要与左侧的函数名一致)、描述和环境变量(没有环境变量,不定义也行);
  • 左侧是python代码编辑器,可以根据需求自定义python函数;
  • 使用实例可以看“多智能体最终效果展示”小节中,根据用户输入“Write a python script to plot a sine wave and save it to disc as a png file sine_wave.png”生成的效果。
    在这里插入图片描述

2、新建model(LLM)

model是AI Agent的基座大模型。
整体界面如下,每次点击“new model”之后,即使你关闭了(没有保存),界面上也会显示这个大模型……
在这里插入图片描述
下面是“new model”界面,创建LLM时需要考虑:

  • 大模型可以是openAi的GPT系列模型,也可以指定自己的大模型(我指定的是本地的华知7b_32k模型);
  • 大模型的调用接口需要是open_ai方式封装的,有model_name、API key(我是内网模型用任意值填充了)、base_url;
  • 定义好模型后,点击“test model”可以测试模型定义的是否真确、是否能正常调用。
    在这里插入图片描述

3、新建Agent(智能体)

Agent是集合了model和skills的单智能体。
下面是创建Agent的主界面,点击“new Agent”可以创建自己的Agent。
在这里插入图片描述
我创建了两个Agent(如下图,分别是myuser_huazhimy_assistent_huazhi)用于后面的交互,创建Agent的时候需要考虑:

  • 主要包括三部分:Agent基本配置、指定model、指定skills;
  • 基本配置包括Agent名字、描述、system message等,其中system message起到system prompt的作用;
  • model部分可以点击“add”添加自己之前定义的LLM(比如华知7b_32k模型),可以添加多个;
  • skills部分与model部分类似,点击add添加之前定义好的skills即可(比如generate_and_save_images);
  • myuser_huazhi没有添加任何的model和skills,my_assistent_huazhi添加了华知7b_32k model和generate_and_save_images、generate_and_save_pdf skills
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

4、新建workflow(工作流)

workflow是集合了多个智能体的工作流,可以供playground界面创建session的时候选择来完成具体的任务。
整体界面如下,点击“new workflow”可以创建自己的工作流。
在这里插入图片描述
创建工作流的时候考虑的问题:

  • 第一步是选择工作流的类型,主要两类:autonomous chat类型、sequential类型;
    • autonomous chat类型:需要两个智能体,一个作为Initiator,一个作为Receiver;
    • sequential类型:需要选择多个智能体,且智能体之间是前后顺序关系(也是他们执行任务的顺序),如下图所示:
      在这里插入图片描述
  • 第二步主要包括两部分:基础配置部分、Agent添加部分;
    • 基础配置部分:需要填写工作流名称、描述和总结方式(我选择的llm方式),填好后点击“create workflow”,右侧会出现添加Agent界面;
    • 添加Agent部分: sequential类型是直接顺序添加多个Agent,autonomous chat类型如下图所示:Initiator添加的是myuser_huazhi Agent,Receiver添加的是my_assistent_huazhi Agent。

在这里插入图片描述
在这里插入图片描述

  • 第三步是配置完工作流后,点击“test workflow”进行测试,如下图所示:
    下面这种问题会根据创建Receiver方Agent的时候给的system message内容回复。
    在这里插入图片描述

3、多智能体最终效果展示

上面所有的组成部分创建完成后,就可以在playground界面创建sessions了。

  • 第一步,新建sessions,需要指定工作流、和session name;
    在这里插入图片描述
  • 第二步,创建完sessions,就可以直接使用聊天对话的方式体验智能体了。下面是各种聊天的结果示例;
  • 执行过程中,首先会有意图识别的总结输出,然后结果包括两个部分:
    • Agent messages部分:展示聊天内容,即用户的一问一答聊天内容;
    • results部分是skills的输出文件,包括图片文件、python代码文件。

在这里插入图片描述

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到