【AI Agent系列】【阿里AgentScope框架】0. 快速上手:AgentScope框架简介与你的第一个AgentScope程序

简介: 【AI Agent系列】【阿里AgentScope框架】0. 快速上手:AgentScope框架简介与你的第一个AgentScope程序
  • 大家好,我是 同学小张,日常分享AI知识和实战案例
  • 欢迎 点赞 + 关注 👏,持续学习持续干货输出
  • 一起交流💬,一起进步💪。
  • 微信公众号也可搜【同学小张】 🙏

本站文章一览:


这是我们学习的第四款智能体框架了。

前面我们学习了 AutoGPT、MetaGPT、LangGraph 等智能体应用开发框架,各有优缺点。今天我们开始学习AgentScope这一款多智能体开发框架。在AI快速发展的现在,多上手体验一下各个框架,更能加深对AI大模型应用开发中各种知识的深入理解。AI界大佬吴恩达也督促大家今年关注 AI Agent 工作流的发展和应用。所以,卷起来吧,多看看,多用用,没坏处。

0. AgentScope简介

AgentScope是阿里开源的一款全新的多智能体协同的Multi-Agent应用框架,旨在帮助开发者更轻松地构建基于大语言模型的多智能体应用程序。它具有以下特点:

  1. 易用性:AgentScope注重易用性,为开发者提供了简洁明了的编程模式,丰富的语法工具和内置资源,使得编程多智能体应用程序变得更加轻松愉快。
  2. 鲁棒性:AgentScope集成了全面的服务级重试机制和规则性修正工具,以处理LLMs响应中的明显格式问题。此外,AgentScope还提供了可定制的容错配置,使开发者能够通过参数来自定义容错机制。
  3. 支持多模态数据:AgentScope支持多模态数据在对话呈现、消息传输和数据存储中的应用,通过统一的基于URL的属性来解耦多模态数据的传输和存储,从而最大限度地减少了消息在每个智能体内的复杂性。
  4. 分布式部署:针对分布式应用程序带来的额外编程难题和系统设计挑战,AgentScope也提供了支持。

1. 安装

因为我的目的是学习,不光要会用,有时候还会深入源码去看一下实现原理,所以我这里使用源码安装。其它安装方法请参考官方安装教程

# 从GitHub上拉取AgentScope的源代码
git clone https://github.com/modelscope/agentscope.git
cd agentscope
# 针对本地化的multi-agent应用
pip install -e .

如果报错 Timeout:

使用以下命令重新安装:

pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 快速上手 - 快速跑通第一个Demo

2.1 完整代码

老规矩,先上完整代码,大家复制粘贴,先跑通再说。

import agentscope
import os
openai_api_key = os.getenv('OPENAI_API_KEY')
# 一次性初始化多个模型配置
openai_cfg_dict = {
    "config_name": "openai_cfg", # A unique name for the model config.
    "model_type": "openai",         # Choose from "openai", "openai_dall_e", or "openai_embedding".
    "model_name": "gpt-3.5-turbo",   # The model identifier used in the OpenAI API, such as "gpt-3.5-turbo", "gpt-4", or "text-embedding-ada-002".
    "api_key": openai_api_key,       # Your OpenAI API key. If unset, the environment variable OPENAI_API_KEY is used.
}
agentscope.init(model_configs=[openai_cfg_dict])
from agentscope.agents import DialogAgent, UserAgent
# 创建一个对话智能体和一个用户智能体
dialogAgent = DialogAgent(name="assistant", model_config_name="openai_cfg", sys_prompt="You are a helpful ai assistant")
userAgent = UserAgent()
x = None
x = dialogAgent(x)
print("diaglogAgent: \n", x)
x = userAgent(x)
print("userAgent: \n", x)

运行结果:

2.2 代码详解

下面来解释下上面的代码。

2.2.1 配置

像其它框架一样,我们也需要配置我们使用的大模型以及API Key等参数。AgentScope的配置方式是创建一个字典类型的变量,在变量里填入相应值,然后通过初始化接口传递给AgentScope:

openai_cfg_dict = {
    "config_name": "openai_cfg", # A unique name for the model config.
    "model_type": "openai",         # Choose from "openai", "openai_dall_e", or "openai_embedding".
    "model_name": "gpt-3.5-turbo",   # The model identifier used in the OpenAI API, such as "gpt-3.5-turbo", "gpt-4", or "text-embedding-ada-002".
    "api_key": openai_api_key,       # Your OpenAI API key. If unset, the environment variable OPENAI_API_KEY is used.
}
agentscope.init(model_configs=[openai_cfg_dict])

注意看下配置的Key值:config_name, model_type, model_nameapi_key。通过 agentscope.init 函数设置进去。

关于配置的疑问

没搞懂的是,这里的配置是必须传入?还是只要环境变量中存在了 OPENAI_API_KEY 值就可以不用传 “api_key” ?

  • 为什么有这个疑问:因为我并没有找到在哪里设置 代理地址,而我的API Key不是原生的OpenAI Key,必须通过代理才能使用OpenAI的接口。但是以上代码在没有传递代理地址的情况下竟然运行成功了,那么,是不是只要环境变量中有了,不传递这个config也行?
  • 我将api_key去掉,也运行成功了…
  • 不传模型名字倒是不行,会报错:

2.2.2 创建智能体

接下来,代码中创建了两个智能体:一个对话智能体DialogAgent 和 一个用户智能体 userAgent

# 创建一个对话智能体和一个用户智能体
dialogAgent = DialogAgent(name="assistant", model_config_name="openai_cfg", sys_prompt="You are a helpful ai assistant")
userAgent = UserAgent()

2.2.3 运行智能体

然后是运行智能体:

x = None
x = dialogAgent(x)
print("diaglogAgent: \n", x)
x = userAgent(x)
print("userAgent: \n", x)

从运行效果来看,对话智能体就是与用户进行对话。用户智能体,其实就是接收用户的输入,让人参与其中进行干预。

好了,本文就先写到这里,主要是带大家认识一下AgentScope,并搭建好运行环境。运行了一个简单的示例,让大家对AgentScope的使用有一个简单的认识,没有深入。后面我们随着更多案例的实践,会逐渐深入探索AgentScope的原理及应用。

如果觉得本文对你有帮助,麻烦点个赞和关注呗 ~~~


  • 大家好,我是 同学小张,日常分享AI知识和实战案例
  • 欢迎 点赞 + 关注 👏,持续学习持续干货输出
  • 一起交流💬,一起进步💪。
  • 微信公众号也可搜【同学小张】 🙏

本站文章一览:

相关文章
|
7月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
7647 104
|
7月前
|
人工智能 搜索推荐 数据可视化
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
778 115
|
7月前
|
人工智能 自然语言处理 安全
从工具到伙伴:AI代理(Agent)是下一场革命
从工具到伙伴:AI代理(Agent)是下一场革命
810 117
|
7月前
|
人工智能 定位技术 API
智能体(Agent):AI不再只是聊天,而是能替你干活
智能体(Agent):AI不再只是聊天,而是能替你干活
1258 99
|
8月前
|
人工智能 Java 开发者
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
JManus是阿里开源的Java版OpenManus,基于Spring AI Alibaba框架,助力Java开发者便捷应用AI技术。支持多Agent框架、网页配置、MCP协议及PLAN-ACT模式,可集成多模型,适配阿里云百炼平台与本地ollama。提供Docker与源码部署方式,具备无限上下文处理能力,适用于复杂AI场景。当前仍在完善模型配置等功能,欢迎参与开源共建。
3041 58
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
|
7月前
|
人工智能 缓存 运维
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
本文介绍联调造数场景下的AI应用演进:从单Agent模式到多Agent协同的架构升级。针对复杂指令执行不准、响应慢等问题,通过意图识别、工具引擎、推理执行等多Agent分工协作,结合工程化手段提升准确性与效率,并分享了关键设计思路与实践心得。
1168 20
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
|
人工智能 Cloud Native 搜索推荐
【2025云栖大会】阿里云AI搜索年度发布:开启Agent时代,重构搜索新范式
2025云栖大会阿里云AI搜索专场上,发布了年度AI搜索技术与产品升级成果,推出Agentic Search架构创新与云原生引擎技术突破,实现从“信息匹配”到“智能问题解决”的跨越,支持多模态检索、百亿向量处理,助力企业降本增效,推动搜索迈向主动服务新时代。
835 0
|
8月前
|
人工智能 数据处理 云栖大会
云栖现场|让评测与标注成为AI进化引擎!阿里发布全新评测平台,3大创新评测集亮相
云栖现场|让评测与标注成为AI进化引擎!阿里发布全新评测平台,3大创新评测集亮相
1127 9
云栖现场|让评测与标注成为AI进化引擎!阿里发布全新评测平台,3大创新评测集亮相
|
8月前
|
人工智能 数据可视化 数据处理
AI智能体框架怎么选?7个主流工具详细对比解析
大语言模型需借助AI智能体实现“理解”到“行动”的跨越。本文解析主流智能体框架,从RelevanceAI、smolagents到LangGraph,涵盖技术门槛、任务复杂度、社区生态等选型关键因素,助你根据项目需求选择最合适的开发工具,构建高效、可扩展的智能系统。
2019 3
AI智能体框架怎么选?7个主流工具详细对比解析