AI Agent之AutoGen框架部署、测试

一、AutoGen studio部署与测试

1、部署与启动

最好是创建一个新的conda环境,然后在环境中进行安装部署。
conda安装和新环境创建具体操作方式:https://blog.youkuaiyun.com/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代码文件。

在这里插入图片描述

在这里插入图片描述

### 部署AI Agent平台的最佳实践 #### 选择合适的部署环境 对于AI Agent部署,可以选择云平台或本地环境。云平台部署能够显著减少硬件、网络等基础设施的投资成本[^5]。而本地环境则更适合于那些对数据隐私和安全有严格要求的企业。 #### 准备阶段 在正式进入部署之前,需完成一系列准备工作。这包括但不限于收集业务流程自动化的各类数据(如业务数据、知识库数据以及历史数据),这些数据将用于后续的模型训练过程。 #### 模型开发与训练 利用所选平台上提供的机器学习工具和服务来构建并训练AI模型。例如,在云端环境中可以通过调用API接口轻松获取强大的GPU资源加速训练进程;而在本地环境下,则可能依赖预安装的软件包实现相同目标。此过程中应充分利用现有的开源框架和技术栈,像TensorFlow Extended (TFX),PyTorch, Scikit-Learn等都是不错的选择[^3]。 ```python from sklearn.model_selection import train_test_split from sklearn.linear_model import LogisticRegression # 假设已准备好特征矩阵 X 和标签向量 y X_train, X_test, y_train, y_test = train_test_split(X, y) model = LogisticRegression() model.fit(X_train, y_train) ``` #### 自动化部署流程 为了确保模型能迅速上线并及时更新迭代版本,建议采用自动化的方式来进行部署操作。借助CI/CD流水线配合容器编排工具Kubernetes或者简单的Docker Compose文件定义应用的服务结构,从而简化整个发布周期内的管理难度[^2]。 ```yaml version: '3' services: web: build: . ports: - "80:80" redis: image: "redis:alpine" ``` #### 测试验证环节 每次新版本推出前都需要经过严格的单元测试、集成测试乃至A/B Test等一系列质量检测手段以确认其稳定性和准确性。只有当各项指标均达到预期标准之后才能考虑将其推送给最终用户群体使用。 #### 发布与维护 一旦完成了上述所有步骤并通过了必要的审查程序后就可以正式对外发布了。与此同时也要建立起一套完善的监控预警机制以便随时掌握系统的运行状态并对可能出现的问题作出快速响应处理措施[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值