【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知识和实战案例
  • 欢迎 点赞 + 关注 👏,持续学习持续干货输出
  • 一起交流💬,一起进步💪。
  • 微信公众号也可搜【同学小张】 🙏

本站文章一览:

相关文章
|
6月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
7309 98
|
7月前
|
存储 人工智能 测试技术
手把手带你入门AI智能体:从核心概念到第一个能跑的Agent
AI智能体是一种能感知环境、自主决策并执行任务的人工智能系统。它不仅能生成回应,还可通过工具使用、计划制定和记忆管理完成复杂工作,如自动化测试、脚本编写、缺陷分析等。核心包括大语言模型(LLM)、任务规划、工具调用和记忆系统。通过实践可逐步构建高效智能体,提升软件测试效率与质量。
|
6月前
|
人工智能 搜索推荐 数据可视化
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
720 115
|
6月前
|
人工智能 自然语言处理 安全
从工具到伙伴:AI代理(Agent)是下一场革命
从工具到伙伴:AI代理(Agent)是下一场革命
782 117
|
6月前
|
人工智能 定位技术 API
智能体(Agent):AI不再只是聊天,而是能替你干活
智能体(Agent):AI不再只是聊天,而是能替你干活
1231 99
|
7月前
|
人工智能 Java 开发者
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
JManus是阿里开源的Java版OpenManus,基于Spring AI Alibaba框架,助力Java开发者便捷应用AI技术。支持多Agent框架、网页配置、MCP协议及PLAN-ACT模式,可集成多模型,适配阿里云百炼平台与本地ollama。提供Docker与源码部署方式,具备无限上下文处理能力,适用于复杂AI场景。当前仍在完善模型配置等功能,欢迎参与开源共建。
2892 58
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
|
6月前
|
人工智能 缓存 运维
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
本文介绍联调造数场景下的AI应用演进:从单Agent模式到多Agent协同的架构升级。针对复杂指令执行不准、响应慢等问题,通过意图识别、工具引擎、推理执行等多Agent分工协作,结合工程化手段提升准确性与效率,并分享了关键设计思路与实践心得。
1071 20
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
|
人工智能 Cloud Native 搜索推荐
【2025云栖大会】阿里云AI搜索年度发布:开启Agent时代,重构搜索新范式
2025云栖大会阿里云AI搜索专场上,发布了年度AI搜索技术与产品升级成果,推出Agentic Search架构创新与云原生引擎技术突破,实现从“信息匹配”到“智能问题解决”的跨越,支持多模态检索、百亿向量处理,助力企业降本增效,推动搜索迈向主动服务新时代。
749 0
|
7月前
|
人工智能 运维 Java
Flink Agents:基于Apache Flink的事件驱动AI智能体框架
本文基于Apache Flink PMC成员宋辛童在Community Over Code Asia 2025的演讲,深入解析Flink Agents项目的技术背景、架构设计与应用场景。该项目聚焦事件驱动型AI智能体,结合Flink的实时处理能力,推动AI在工业场景中的工程化落地,涵盖智能运维、直播分析等典型应用,展现其在AI发展第四层次——智能体AI中的重要意义。
2667 27
Flink Agents:基于Apache Flink的事件驱动AI智能体框架

热门文章

最新文章