🗒️跟着吴恩达学AI多智能体-5/17-多智能体消费者支持系统
00 分钟
2024-5-28
2024-6-29
type
status
date
summary
slug
tags
category
password
URL
icon
<Multi AI Agent Systems with crewAI>是吴恩达大佬与CrewAI的创始人兼CEO合作新开的一门课程,该课程的目标是通过理论和实际案例,让学员掌握构建智能体系统的技能,最终能自主构建复杂的智能体团队。该课程是以视频教学的形式进行的,为了便于大家快速学习,我这边提供了图文形式。官方链接放在了左下角,大家点击原文链接即可查看官方视频课程。该课程共分为17节,本文是第五节,后续我会每天更新一节,大家有问题可以随时私信或者写在评论区。以下是第五节的图文内容。
 

课程内容

notion image
现在你应该注意到了,这些要素是如何组合在一起的。你可以看到如何构建这些智能体系统,并了解它们的工作方式和潜在的帮助。让我们开始扩展这一点,思考其他使用案例,看看还能构建什么。在这一课中,我们将使用多智能体系统来帮助客户支持自动化,这是一个不同但非常有趣的使用案例。请继续关注,我相信你会喜欢这部分内容的。让我们深入探讨吧。
好的,欢迎来到这一课。我对此非常兴奋,因为我们将讨论如何使用多智能体来实现客户支持自动化。这是一个很大的使用案例。考虑到客户支持,使用AI智能体来帮助客户获得更好的服务是显而易见的选择。这些智能体能够访问所有文档、知识和帮助中心,以提供非常有意义的答案。让我们写一些代码,看看如何实现。首先,我将编写一些样板代码,以确保不会出现警告。我还将导入我们在上一课中学习的组件,包括智能体、任务和crew类。对于这个例子,我们将再次使用GPT-3.5 Turbo。所以让我们设置一下环境变量。
现在让我们深入探讨如何使这些智能体变得出色,如何将我们所学的内容应用到实际创建这些智能体中。我们知道,智能体受角色扮演、专注、合作、工具、防护措施和记忆力的影响。那么对于这个使用案例,我们将构建一个支持多智能体系统。目标是帮助客户处理关于产品的询问。我们将创建的第一个智能体是支持智能体。这个支持智能体的角色是高级支持代表。我们使用“高级”这个关键词来暗示我们期望获得比一般回答更精细的答案。目标是提供非常友好和有帮助的支持。因此,这将贯穿整个过程。
然而,仅有一个智能体是不够的。我们还需要另一个智能体——支持质量保证智能体。这个智能体的作用是帮助支持智能体核实其所说的内容,并确保为客户提供最佳答案。现在我们有了支持智能体和支持质量保证智能体,可以看到我们采用了一种非常专注的方法,智能体被设置为严格按照其角色扮演。你还可以看到,支持智能体不能进行任何任务委派,因为我们将“允许委派”设置为false。但对于支持质量保证智能体,我们没有这样做,这意味着这个智能体可以将工作委派回支持智能体。如果它认为某些内容不正确,它不必自己修复,而是可以将其委派回更适合执行该任务的智能体。
你可能会想,智能体何时决定委派工作或向其他智能体提问?这是常规工程与AI工程之间的区别之一。AI应用涉及模糊输入、模糊转换和模糊输出,这意味着它们不一定总是遵循相同的模式。在这种情况下,我们依赖于LLM的“脑力”来决定何时委派工作。由于这些模型理解语言,因此它们可以根据客户询问决定是否需要更多的研究。如果是一个简单的询问,可能不需要委派回去处理。这种自适应能力是AI应用的魅力之一。因此,允许智能体委派工作并提问并不意味着它每次都会这样做,但它有选择的余地。
这种合作方式是我们在Crew.ai用户中常见的模式。通常,拥有一个质量保证智能体有助于提高最终结果的质量,无论是写博客文章还是回答客户问题。因此,我建议在构建多智能体系统时考虑加入质量保证智能体,这通常比没有质量保证的智能体效果更好。
现在我们已经了解了角色扮演、专注和合作,让我们继续讨论工具、防护措施和记忆力。对于这一部分,我们将使用Crew.ai的工具包。Crew.ai的工具包包含一组工具,包括可以搜索互联网的简单工具,也有更复杂的工具,如在GitHub上执行全局正则表达式搜索。我们将使用一些简单的工具:Serper Dev工具、Scrape Website工具和Website Search工具。Serper Dev工具集成了外部服务Serper,可以进行谷歌搜索;Scrape Website工具允许智能体访问给定的URL并提取内容;Website Search工具则在网站内容上执行语义搜索。
我们将导入Crew.ai工具包中的这些类,并创建这些工具的实例。然后将这些工具分配给智能体或任务。你可以为智能体提供工具,也可以为任务提供工具。为任务提供工具意味着智能体只有在执行特定任务时才会使用这些工具。这种方法使智能体更加灵活。
让我们创建第一个任务,即查询解决任务。我们将使用插值来指定客户的询问,并提供非常明确的输出要求和工具。接下来,我们创建支持质量保证智能体的任务,这个任务不使用插值,而是重新检查支持智能体的回答。
我们创建了两个任务:查询解决和质量保证审查任务。然后我们将智能体和任务组合成一个crew。使用Crew.ai的记忆功能非常简单,只需设置一个标志即可启用短期记忆、长期记忆和实体记忆。
在执行crew时,我们需要传递输入来覆盖任务和智能体定义中的插值变量。在这个例子中,我们设置客户为Deploying AI,询问者为Andrew,询问内容为帮助设置和启动crew,并确保使用记忆功能。智能体将开始处理这个问题,访问文档并提供解决方案。支持质量保证智能体将检查支持智能体的回答,并提出改进建议,确保答案全面、准确和友好。
通过这个过程,我们创建了一个多智能体系统,这些智能体能够协作、委派任务、使用记忆并严格遵守其角色。所有这些要素在实际操作中发挥作用,确保系统提供高质量的响应。
 
 
💡
有关Notion安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
上一篇
跟着吴恩达学AI多智能体-6/17-创建智能体的思维框架
下一篇
跟着吴恩达学AI多智能体-4/17-AI智能体的关键要素