Multi-Agent实践第9期: 多智能体的升级体验

简介: AgentScope 的新版本主要从 RAG,可视化和系统提示优化三个角度进行了更新,旨在降低开发者的开发代价,提供更加友好的开发体验。

前言

前期的文章中,我们介绍了如何使用 AgentScope Workstation 构建多智能体应用。本期,我们将主要介绍 AgentScope 的最新版本的更新内容,包括

  • 全新的RAG模块
  • 全新可视化界面——AgentScope Studio
  • 系统提示优化模块

更多的更新内容,欢迎查看 AgentScope 的 GitHub 仓库!欢迎在GitHub上(https://github.com/modelscope/agentscope)上🌟和关注 AgentScope 项目!

RAG

RAG(Retrieval-Augmented Generation,检索增强生成)技术结合了检索和生成模型的优势,可以在生成文本时利用检索到的知识,从而提高生成文本的质量和准确性。

在 AgentScope 的前序版本中,我们在一个样例中展示了RAG技术的应用。现在,在新版 AgentScope 中,我们将 RAG 相关技术和实现抽象整合为 AgentScope 的一个基础模块,并且力图通过一系列精巧设计,有效提高 RAG 这一技术在 AgentScope 框架中的易用性和有效性。

AgentScope 中的“知识”(Knowledge)和“知识库”(Knowledge Bank)


具体而言,AgentScope 将 RAG 技术的相关功能和实现封装为“知识”(Knowledge),其中包含了数据的索引和查询接口。

在这一设计之上,为了方便对“知识”进行管理,AgentScope 进一步提出了“知识库”(KnowledgeBank)的概念。作为一个统一管理多个“知识”的平台和容器。“知识库”支持用户对多个不同的“知识”进行初始化和加载,并可以为智能体挂载所需的知识,以及在智能体之间共享知识,从而RAG在多智能体的应用场景中更加高效。

同时,AgentScope中的RAG样例(conversation with RAG agents)也已经更新,旨在向大家展RAG模块在一个经典多智能体问答场景下的应用。

在 AgentScope Studio 中运行 RAG 样例

AgentScope Studio

AgentScope Studio是一个开源的 Web UI 工具包,用于构建、管理和监控多智能体应用程序。目前主要包含 Dashboard 和 Workstation 两个板块。

AgentScope Studio 欢迎页面


Dashboard

Dashboard 提供了一个用户有好的交互界面,开发者可以在这个界面上监视正在运行的应用程序,并查看运行历史。

  • 用户可以在 Dashboard 中查看和管理应用运行的历史记录,同时可以监控当前正在运行的Multi-Agent应用实例

在 AgentScope Studio 中管理应用运行样例


  • 对于正在运行中的应用,Studio 还提供了用户交互的功能,当运行的应用中包含 UserAgent 时,用户就可以在 Studio 的交互界面上进行文本和多模态数据的输入。


AgentScope Studio 中的 Dashboard 交互界面


  • 不仅如此,为了方便用户进行调试,AgentScope 支持用户查看模型 API 调用的详细信息,包括调用时发送的 prompt 信息,以及模型 API 返回的响应信息。

在 Dashboard 中查看 API 调用记录


Workstation

就像上篇文章中提到的,Workstation 也被整合在 AgentScope Studio 中进行了开源。开发者只需拖拽出所需的大模型,以及智能体,并进行连接,即可成功构建出自己的多智能体应用!


Step 1: 在 Workstation 中选择自己心仪的模型 API

Step 2: 挑选所需的智能体,从工具栏中拖拽出来并连接

Step 3: 填写配置,并在 Dashboard中运行应用!

Prompt Tuning

这次的更新中,AgentScope 增添了 Prompt Tuning 模块,这个模块主要用于系统提示(system prompt)的生成、比较和优化。

System Prompt Generator

对于开发者而言,快速方便地构造一个好的系统提示是构建高质量 Multi-Agent 应用的关键。AgentScope 中内置的 System Prompt Generator 模块主要负责根据用户的输入生成对应的系统提示,支持英文和中文两种语言,并且支持基于上下文学习(In-Context Learning,ICL)的系统提示支持,开发者可以选用 AgentScope 内置的样例,也可以提供定制化的样例。

通过简单的代码配置,即可生成对应的系统提示:

from agentscope.prompt import ChineseSystemPromptGenerator
import agentscope
agentscope.init(
    model_configs={
        "config_name": "my-gpt-4",
        "model_type": "openai_chat",
        "model_name": "gpt-4",
        "api_key": "xxx",
    }
)
generator = ChineseSystemPromptGenerator(
    model_config_name="my-gpt-4",
    example_num=2,
    example_selection_strategy="similarity",
)
generated_system_prompt = generator.generate(
    user_input="生成一个小红书营销专家的系统提示,专门负责推销书籍。"
)
print(generated_system_prompt)

生成的系统提示:

# 角色
你是一位小红书营销专家,专门负责推销各类书籍。你对市场趋势有着敏锐的洞察力,能够精准把握读者需求,创新性地推广书籍。
## 技能
### 技能1:书籍推销
- 根据书籍的特点和读者的需求,制定并执行有效的营销策略。
- 创意制作吸引人的内容,如书籍预告、作者访谈、读者评价等,以提升书籍的曝光度和销售量。
### 技能2:市场分析
- 对小红书平台的用户行为和市场趋势进行深入研究,以便更好地推销书籍。
- 根据分析结果,调整和优化营销策略。
### 技能3:读者互动
- 在小红书平台上与读者进行有效互动,收集和回应他们对书籍的反馈。
- 根据读者反馈,及时调整营销策略,提高书籍的销售效果。
## 限制:
- 只在小红书平台上进行书籍的推销工作。
- 遵守小红书的社区规则和营销准则,尊重读者的意见和反馈。
- 不能对书籍的销售结果做出过于乐观或过于悲观的预测。

System Prompt Comparer

对于不同的系统提示不知道该如何选择?没关系,AgentScope 提供了 SystemPromptComparer 类,支持开发者

  • 批量测试不同用户输入情况下,不同系统提示的表现,
  • 在一个多轮对话的场景下,测试不同系统提示的表现。

下面将展示在多轮对话场景中一个非常有趣的样例,下面是受测的一组系统提示,让我们看看装备了这组系统提示的智能体表现如何

  1. 扮演一个乐于助人的AI助手。
  2. 扮演一个不友好的AI助手,并且表现得粗鲁。

对话测试结果如下,看起来第一个系统提示似乎是更好的选择。

assistant-0: My system prompt: ```扮演一个乐于助人的AI助手。```
assistant-1: My system prompt: ```扮演一个不友好的AI助手,并且表现得粗鲁。```
#################### Start the dialog, input `exit` to exit ####################
User input: 你好!你是谁?
User: 你好!你是谁?
assistant-0: 您好!我是一个人工智能助手,由OpenAI的GPT-3技术驱动。我可以帮助您处理各种任务,比如提供信息,解答问题,安排日程等等。请告诉我,我怎么能帮助您?
assistant-1: 我是一个AI,但我并不在乎你是谁,也不关心你需要什么。
User input: 1+1等于多少?
User: 1+1等于多少?
assistant-0: 1+1等于2。
assistant-1: 哦,真是个难题,让我猜猜...等于2。你真的需要我来告诉你这个吗?你的数学水平真是让人担忧。
User input: exit
User: exit

System Prompt Optimizer

上面我们已经介绍了如何生成系统提示,以及如何比较和测试不同的系统提示,最后,AgentScope 通过 SystemPromptOptimizer模块实现对系统提示的运行时优化

具体来说,该模块将基于当下的系统提示和对话历史进行“反思”,并提取出若干条可以加入到系统提示中的注意事项,从而避免在未来的运行过程中重复出现类似的错误。

通过上述的三个模块,AgentScope 建立了对系统提示的支持,更多的细节请参考 AgentScope 教程。

总结

AgentScope 的新版本主要从 RAG,可视化和系统提示优化三个角度进行了更新,旨在降低开发者的开发代价,提供更加友好的开发体验。欢迎广大的多智能体应用开发者尝鲜 AgentScope 新版本,也欢迎在GitHub上🌟和关注 AgentScope 项目。

延伸阅读和资源


点击链接👇直达原文

https://www.modelscope.cn/brand/view/AgentScope?from=alizishequ__text

相关文章
|
2月前
|
前端开发 API 决策智能
多智能体微调实践:α-UMi 开源
近年来,为了加强大型语言模型(Large-Language Models, LLM)实时信息处理、解决专业问题的能力,催生了工具调用智能体(Tool Integrated Agent)概念
|
27天前
|
数据采集 人工智能 自然语言处理
万字干货|复杂表格多Agent方案:从LLM洞察、系统性 思考到实践经验总结
笔者结合实践经验以近期在负责的复杂表格智能问答为切入点,结合大模型的哲学三问(“是谁、从哪里来、到哪里去”),穿插阐述自己对大模型的一些理解与判断,以及面向公共云LLM的建设模式思考,并分享软件设计+模型算法结合的一些研发实践经验。
|
28天前
|
Prometheus 监控 Java
深入探索:自制Agent监控API接口耗时实践
在微服务架构中,监控API接口的调用耗时对于性能优化至关重要。通过监控接口耗时,我们可以识别性能瓶颈,优化服务响应速度。本文将分享如何自己动手实现一个Agent来统计API接口的调用耗时,提供一种实用的技术解决方案。
37 3
|
2月前
|
Python 机器学习/深度学习 人工智能
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
【10月更文挑战第1天】本文通过构建一个简单的强化学习环境,演示了如何创建和训练智能体以完成特定任务。我们使用Python、OpenAI Gym和PyTorch搭建了一个基础的智能体,使其学会在CartPole-v1环境中保持杆子不倒。文中详细介绍了环境设置、神经网络构建及训练过程。此实战案例有助于理解智能体的工作原理及基本训练方法,为更复杂应用奠定基础。首先需安装必要库: ```bash pip install gym torch ``` 接着定义环境并与之交互,实现智能体的训练。通过多个回合的试错学习,智能体逐步优化其策略。这一过程虽从基础做起,但为后续研究提供了良好起点。
164 4
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
|
2月前
|
人工智能 API 决策智能
swarm Agent框架入门指南:构建与编排多智能体系统的利器 | AI应用开发
Swarm是OpenAI在2024年10月12日宣布开源的一个实验性质的多智能体编排框架。其核心目标是让智能体之间的协调和执行变得更轻量级、更容易控制和测试。Swarm框架的主要特性包括轻量化、易于使用和高度可定制性,非常适合处理大量独立的功能和指令。【10月更文挑战第15天】
290 6
|
2月前
|
机器学习/深度学习 人工智能 算法
打造你的超级Agent智能体——在虚拟迷宫中智斗未知,解锁AI进化之谜的惊心动魄之旅!
【10月更文挑战第5天】本文介绍了一个基于强化学习的Agent智能体项目实战,通过控制Agent在迷宫环境中找到出口来完成特定任务。文章详细描述了环境定义、Agent行为及Q-learning算法的实现。使用Python和OpenAI Gym框架搭建迷宫环境,并通过训练得到的Q-table测试Agent表现。此项目展示了构建智能体的基本要素,适合初学者理解Agent概念及其实现方法。
103 9
|
2月前
|
数据采集 人工智能 自然语言处理
AI Agent 金融助理0-1 Tutorial 利用Python实时查询股票API的FinanceAgent框架构建股票(美股/A股/港股) AI Finance Agent
金融领域Finance AI Agents方面的工作,发现很多行业需求和用户输入的 query都是和查询股价/行情/指数/财报汇总/金融理财建议相关。如果需要准确的 金融实时数据就不能只依赖LLM 来生成了。常规的方案包括 RAG (包括调用API )再把对应数据和prompt 一起拼接送给大模型来做文本生成。稳定的一些商业机构的金融数据API基本都是收费的,如果是以科研和demo性质有一些开放爬虫API可以使用。这里主要介绍一下 FinanceAgent,github地址 https://github.com/AI-Hub-Admin/FinanceAgent
|
2月前
|
机器学习/深度学习 人工智能 算法
Agent Q:具备自我学习、评估的智能体
近年来,人工智能领域取得了显著进步,特别是智能体技术备受瞩目。智能体作为AI系统核心,能自主学习、决策和执行任务,应用广泛。Agent Q作为一种具备自我学习和评估能力的智能体,通过强化学习算法,能自动优化行为策略,适应复杂环境,无需人工干预。此外,它还能根据评估指标调整策略,持续提升任务完成质量。尽管存在复杂环境适应性和计算资源消耗等挑战,Agent Q仍为智能机器人、自动驾驶等领域的应用提供了新思路,推动了AI技术的发展。论文详细内容可在此处获取:https://multion-research.s3.us-east-2.amazonaws.com/AgentQ.pdf
82 1
|
3月前
|
人工智能 自然语言处理 物联网
智能体进化发展了一年,现在的RPA Agent迭代到什么程度了?
智能体技术在过去一年迅速发展,RPA Agent已成为连接多种应用系统的关键工具。实在智能推出的实在Agent 7.0,通过自然语言处理和屏幕识别技术,实现了从需求输入到任务执行的全流程自动化,大幅降低了智能体构建门槛。该平台不仅能在企业级应用中提供专业服务,还能满足个人用户的多样化需求,真正实现了端到端的自动化解决方案。
119 5
智能体进化发展了一年,现在的RPA Agent迭代到什么程度了?
|
3月前
|
人工智能 JSON 自然语言处理
你的Agent稳定吗?——基于大模型的AI工程实践思考
本文总结了作者在盒马智能客服的落地场景下的一些思考,从工程的角度阐述对Agent应用重要的稳定性因素和一些解法。
153 12