❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  1. 多智能体协调:支持多个智能体协同工作,处理复杂的任务和场景。
  2. 消息交换机制:智能体之间通过消息传递进行交互,确保高效的通信。
  3. 易用性设计:提供零代码拖放式工作站和自动提示调整机制,降低开发难度。

正文(附运行示例)

AgentScope 是什么

公众号: 蚝油菜花 - agentscope

AgentScope是阿里巴巴集团开源的多智能体开发平台,旨在帮助开发者轻松构建和部署多智能体应用。该平台提供高易用性、高鲁棒性和分布式支持,内置多种模型API和本地模型部署选项,覆盖聊天、图像合成、文本嵌入等多种任务。AgentScope包含拖拽式编程界面、交互式编程助手、实时监控功能,及丰富的开发资源,支持快速二次开发。

AgentScope具备容错机制、提示优化和分布式并行处理能力,提升应用性能和开发效率。通过内置的多种模型API和本地模型部署选项,开发者可以轻松实现多智能体的协同工作,处理复杂的任务和场景。

AgentScope 的主要功能

  • 多智能体协调:支持多个智能体协同工作,处理复杂的任务和场景。
  • 消息交换机制:作为核心通信机制,智能体之间用消息传递进行交互。
  • 易用性设计:提供零代码拖放式工作站和自动提示调整机制,降低开发和部署的难度。
  • 容错控制:内置和可定制的容错机制,提高应用程序的稳定性和鲁棒性。
  • 多模态数据支持:支持文本、图像、音频和视频等多模态数据的对话、消息传输和数据存储。
  • 工具和外部知识使用:提供服务工具包,支持工具使用、功能预处理、提示工程、推理和响应解析。

AgentScope 的技术原理

  • 消息驱动的架构:基于消息驱动的架构,智能体之间的交互用消息传递实现,每个消息包含发送者、内容和可能的URL链接。
  • Actor模型:基于Actor模型设计分布式框架,每个智能体(Actor)在接收到所有必要的消息后进行计算,实现自动并行优化。
  • 容错机制:用错误分类和定制的处理策略,自动处理不同类型的错误,包括可访问性错误、规则可解析错误、模型可解析错误和不可解析错误。
  • 多模态数据处理:基于URL和本地文件管理系统,AgentScope实现多模态数据的生成、存储和传输的解耦架构。
  • 服务工具包:提供服务工具包,支持工具函数的管理、预处理、提示工程、响应解析和函数执行。
  • 检索增强生成(RAG):整合RAG技术,支持智能体利用外部知识库增强LLMs的能力,提升事实准确性和减少幻觉。

如何运行 AgentScope

安装

AgentScope 需要 Python 3.9 或更高版本。建议从源代码安装:

# 从 GitHub 拉取源代码
git clone https://github.com/modelscope/agentscope.git

# 安装包
cd agentscope
pip install -e .

配置模型

在 AgentScope 中,模型部署和调用通过 ModelWrapper 解耦。使用这些模型包装器,您需要准备一个模型配置文件:

model_config = {
    "config_name": "my_openai_config",  # 配置名称
    "model_type": "openai_chat",        # 模型类型
    "model_name": "gpt-4",              # 使用的模型
    "api_key": "xxx",                   # API 密钥
    "organization": "xxx"               # 组织名称
}

创建智能体

创建内置的用户和助手智能体:

from agentscope.agents import DialogAgent, UserAgent
import agentscope

# 加载模型配置
agentscope.init(model_configs="./model_configs.json")

# 创建对话智能体和用户智能体
dialog_agent = DialogAgent(name="assistant", model_config_name="my_openai_config")
user_agent = UserAgent()

构建对话

在 AgentScope 中,消息是智能体之间的桥梁。消息是一个包含 namecontentdict,还可以包含一个可选的 url 字段:

from agentscope.message import Msg

x = Msg(name="Alice", content="Hi!")
x = Msg("Bob", "What about this picture I took?", url="/path/to/picture.jpg")

启动两个智能体之间的对话:

x = None
while True:
    x = dialog_agent(x)
    x = user_agent(x)
    if x.content == "exit":  # 用户输入 "exit" 退出对话
        break

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

Logo

Agent 垂直技术社区,欢迎活跃、内容共建,欢迎商务合作。wx: diudiu5555

更多推荐