展开菜单
首页 精品内容 本月促销 装机必备 Windows macOS软件 IOS软件 Android AI PDF教程 专题
全部分类

当前位置:

首页 > 业界资讯 > 浅谈CrewAI开源框架:构建多代理必备工具

浅谈CrewAI开源框架:构建多代理必备工具

大家好,我是Luga。今天我们继续探讨人工智能(AI)生态领域的相关技术,这次我们聚焦在AI代理人(AIAgents)上。本文将详细解析新型开源AI代理人CrewAI的技术,让大家对CrewAI的基本概念有所了解,并介绍基于CrewAI的应用和市场开发。大型语言模型(LLM)已经深入到我们生活的各个方面,从日常聊天到文档解析,发挥着重要的作用。随着LLM在全球范围内的热潮涌动,开发者们开始将注意力集中在人类推理和问题解决上,创造出了更加专注和目标导向的语言和逻辑学习(LLL)应用程序,以应对当今面临的各种

大家好,我是Luga。今天我们继续探讨人工智能(AI)生态领域的相关技术,这次我们聚焦在AI代理人(AI Agents)上。本文将详细解析新型开源AI代理人CrewAI的技术,让大家对CrewAI的基本概念有所了解,并介绍基于CrewAI的应用和市场开发。

大型语言模型(LLM)已经深入到我们生活的各个方面,从日常聊天到文档解析,发挥着重要的作用。随着LLM在全球范围内的热潮涌动,开发者们开始将注意力集中在人类推理和问题解决上,创造出了更加专注和目标导向的语言和逻辑学习(LLL)应用程序,以应对当今面临的各种复杂问题。

这些创新的LLL应用程序通过改进、扩展和增强LLL的功能,为我们提供了更高效、智能化的解决方案。无论是在商业、科学还是社会领域,这些应用程序都成为了我们理解和解决复杂问题的有力工具,同时也为我们开辟了全新的可能性。

一文读懂用于构建多代理的 CrewAI 开源框架

一、传统 AI Agents 的出路在哪里 ?

CrewAI的独特之处在于,随着技术的迅速发展,AI代理正在成为改变游戏规则的力量。它们成为了解决问题、创造力和创新的合作伙伴。

可以想象一下,在仅仅几分钟的时间内,我们就能够将一个想法迅速转化为一个完整的登录页面。这一切都得益于我们与CrewAI的合作。CrewAI是一款强大的人工智能工具,它能够帮助我们快速、高效地实现各种设计和开发任务。借助CrewAI的智能算法和自动生成功能,我们能够节省大量的时间和精力,从而迅速将想法变为现实。无论是设计

最近有一个案例展示了CrewAI、LangChain和OpenHermes2.5(由Ollama提供支持)合作的成果。他们成功地将一行简单的文字转化为一个完整的登录页面。这个案例揭示了AI Agents在协作中尚未开发的巨大潜力,以及更快速地进行市场测试想法的能力。这只是CrewAI在Replit中使用代码的一个应用场景,展示了他们的技术在实践中的可行性。

以下是一个示例,展示了如何将Ollama与CrewAI进行集成: 1. 首先,确保你已经在CrewAI平台上创建了一个项目,并获取了API密钥。 2. 在你的代码中导入Ollama和CrewAI的库文件。 3. 使用Ollama库初始化一个Ollama对象,并传入你的CrewAI API密钥。 4. 创建一个函数,用于处理从CrewAI收到的用户输入。这个函数将接收用户输入并将其传

from langchain.llms import Ollamaollama_openhermes = Ollama(model="agent")# Pass Ollama Model to Agents: When creating your agents within the CrewAI framework, you can pass the Ollama model as an argument to the Agent constructor. For instance:local_expert = Agent(role='Local Expert at this city',goal='Provide the BEST insights about the selected city',backstory="""A knowledgeable local guide with extensive informationabout the city, it's attractions and customs""",tools=[SearchTools.search_internet,BrowserTools.scrape_and_summarize_website,],llm=ollama_openhermes, # Ollama model passed hereverbose=True)

实例化 Ollama 模型

CrewAI有一个明确的愿景,那就是让工程师们能够通过AI代理的集体力量,超越传统的自动化方法。CrewAI将各种代理聚集在一起,简化决策过程,增强创造力,并迎接解决复杂挑战的挑战。

这种新型协作方式不仅提供了高效的工具和技术支持,而且还鼓励创新和实验。CrewAI 的出现为工程师们创造了一个全新的机遇,使他们能够更快速地推动想法的实现,并在竞争激烈的市场中保持领先地位。

二、什么是 CrewAI 库 ?

由 OpenAI 开发,于 2023 年 8 月发布。CrewAI 提供了一组通用的工具和库,可用于处理多代理系统的常见任务,如代理通信、协调和决策。CrewAI 的潜在应用包括机器人协作、自动驾驶、虚拟现实以及增强现实等多种不同领域。

作为一个专为构建和编排 AI Agents 组而设计的库。CrewAI 基于简单化理念以及模块化策略的模式,使得我们可以将 CrewAI 集成到我们的项目中变得轻而易举。我们可以这样理解:将 CrewAI 想象成一组构建块,每个构建块都是独一无二的,但它们都经过精心设计,可以无缝组合在一起。

从技术实现角度而言,CrewAI 建立在 LangChain 之上,这使得它能够与多种不同的现有工具兼容,包括通过 Ollama 等平台的本地开源模型。

通过借助 CrewAI,我们可以轻松构建一个强大的 AI Agents 组,以解决各种复杂任务和挑战。无论是自然语言处理、问题解答还是智能决策,CrewAI 提供了丰富的功能和灵活性。我们可以根据具体需求自由选择和组合各种模块,以创建一个符合我们预期目标的独特系统。

借助 CrewAI 的模块化设计,我们可以将现有的工具和技术与其无缝集成,实现更高效的开发和部署。基于所提供的简单易用接口和开发人员友好的文档,使得我们能够快速上手并快速实现我们的创意。

不仅如此,CrewAI 同时也是一个持续发展和更新的库,积极采纳并融合最新的研究成果和技术进展。这意味着我们可以始终与前沿的人工智能能力和最佳实践保持同步。

三、CrewAI 架构设计及实现原理

类似于 LangChain 的设计理念,CrewAI 的设计思想是让工程师们能够以简单的方式构建复杂的 AI 应用。通过模块化的方法,将功能划分为独立的构建块,每个构建块都具有特定的功能和任务。这种模块化的设计思维使得工程师们可以根据需要自由选择、组合和定制这些构建块,从而快速搭建出符合自己需求的系统。

通常来说,CrewAI 的核心组件主要涉及如下:

1、Agent - 代理

Agent 通常为我们忠诚而值得信赖的伙伴,每个 Agent 都有自己独特的个性、背景故事和技能。他们能够随时准备被协调支配,无论是去实现某一特定的功能场景、解决棘手的难题,还是探索未知的世界。

2、Task - 任务

CrewAI 任务是为了解决特定问题或完成特定目标而设计的。每个任务都具有明确的目标和要求,并且被分解成小而专注的子任务。这种任务的细分使得 Agent 能够更加集中精力,并以更高效的方式完成任务。

每个 CrewAI 任务都具有独特的特征和要求,Agent 需要根据任务的性质和目标来选择合适的方法和策略。这使得任务的执行更加灵活和自适应,Agent 可以根据具体情况做出相应的决策和调整。

3、Tools - 工具

在 CrewAI 中,Agent 被用作高效执行任务的工具。我们可以利用 LangChain 中的各种现有工具,也可以快速开发自己的工具。同时,CrewAI 也鼓励我们根据具体任务的需求,快速编写自定义工具。这种灵活性使得我们能够根据特定情况和任务的要求,定制化代理工具,以更好地满足我们的需求。

通过结合使用 LangChain 中的现有工具和自定义工具,我们能够最大程度地发挥代理的潜力,提高任务执行的效率和质量。

4、Process - 流程

Process 是根据任务的性质和复杂程度进行定制的。不同的任务可能需要不同的 Process 来达到最佳效果。Process 可以包括任务的分解、资源的分配、沟通协调等环节,旨在最大限度地提高团队的工作效率和任务完成质量。

Process 的设计也可以根据经验和实践进行不断优化和改进。通过对 Process 的不断迭代和优化,团队可以提高工作效率、减少错误和风险,并提供更好的团队协作和成果交付。

5、Crew - 执行者

Crew 在 CrewAI 中是代理人、任务和过程相结合的容器层,是任务执行的实际场所。作为一个协同合作的环境,Crew 提供了代理人之间的交流、合作和按照规定过程执行任务的平台。通过 Crew 的设计,代理人能够更好地协作并以高效的方式完成任务。

一文读懂用于构建多代理的 CrewAI 开源框架

从架构设计角度而言,经过 ReActSingleInputOutputParser 增强,每个 CrewAI Agent 本质上都是一个 LangChain Agent。该解析器经过专门修改,以便更好地进行功能支持,包含用于上下文焦点的绑定停用词,并集成了内存机制(使用 LangChain 的 ConversationSummaryMemory)以实现任务的连续性。

Agent 是建立在 LangChain 之上的,这一事实创造了飞轮效应,主要的一个是我们可以立即使用所有 LangChain 工具和工具包,从而使得 CrewAI 具有很强的可扩展性和灵活性,可用于各种任务。

在当前的迭代中,Agent 自主运行,通过自我对话来确定工具的使用。这使得其能够适应不断变化的环境和任务要求。然而,CrewAI 的未来版本计划引入不同的流程类型。这些将允许代理在更复杂的场景中协同工作,例如在团队合作任务或需要多个代理来解决单个问题的情况下。

在最新版本的 CrewAI 平台中,每个 Task 在创建时都将明确分配至指定的代理单元来执行。这有助于更清晰识别每个代理当前负责的任务类型与量,以及任务运行进度。

同时,系统还能针对每个 Task 限定其使用的工具范围,例如仅允许调用某类算法库等,从而可以有效避免由于工具限制导致的任务失败,也防止单个代理长期占用特定资源阻塞其他工作。

Crew 作为封装代理和任务的框架,促进它们顺序执行工作,从而使得更容易管理代理之间的依赖关系,并确保任务以正确的顺序执行。在业务实践中,我们可能会发现部署多个独立的 Crew(每个 Crew 配备几个特工)更为有效。这种模块化方法允许每个工作人员产生不同的结果,而不是由单个大型工作人员处理许多任务和代理处理单一输出。

四、CrewAI 与 Autogen 以及 ChatDev Agents 的对比分析

Autogen 擅长创建能够协同工作的会话代理,但其缺点是缺乏固有的流程概念。这意味着在 Autogen 中,编排代理的交互需要额外的编程。随着任务规模的增长,这可能会变得复杂和繁琐。

相对于 CrewAI, 具体来说,Autogen 在以下方面存在缺陷:

  • 缺乏流程概念:这意味着 Autogen 代理只能按照它们被编程的方式进行交互。如果需要代理以不同的方式交互,则需要进行额外的编程。
  • 编程复杂:编程 Autogen 代理的交互可能非常复杂,尤其是对于复杂的任务及逻辑。
  • 可扩展性差:Autogen 代理的编程方式不利于可扩展性。随着任务规模的增长,编程代理的交互变得更加困难。

ChatDev 将流程的概念引入了 AI 代理领域,但其实现相当僵化。ChatDev 中的自定义是有限的,并且不适合生产环境。这意味着 ChatDev 可能难以满足复杂应用程序的需求,并且可能导致可扩展性和灵活性问题。

同样,相对于 CrewAI,ChatDev 的不足主要体在以下几个方面,具体:

  • 自定义有限:ChatDev 中的自定义是有限的。这意味着 ChatDev 可能难以满足复杂应用程序的需求。
  • 不适合生产环境:ChatDev 不适合生产环境。这意味着 ChatDev 可能难以满足实际应用程序的要求。
  • 可扩展性差:ChatDev 的实现不利于可扩展性。随着任务规模的增长,ChatDev 可能难以满足应用程序的需求。

总的来说,相对于 Autogen 和 ChatDev 创建会话代理的工具,CrewAI 的构建以生产为中心,既提供了Autogen 对话代理的灵活性,又采用了 ChatDev 的结构化流程方法,但又不失灵活性。

CrewAI 基于动态的流程设计理念,具有很强的适应性,可以无缝地融入开发和生产工作流程,以使得工作流程可以根据需求进行调整和优化,以适应不同的工作场景和业务需求。

未来,CrewAI 将继续丰富其工作流程能力,支持涵盖更多领域的流程定义。同时,CrewAI 平台将进一步优化不同助手间的协作体系,提高工作效率和质量。

与此同时,CrewAI 在用户体验和定制性方面也在不断改进。基于简单直观的集成接口,可以有效地帮助企业快速定义和执行定制化的工作流,用户无需关注底层技术细节,便可安全有效地利用 AI 助手团队。

因此,从某种意义上来讲,CrewAI 不仅是一个解决人工智能协同问题的有效工具,同时,也在重新塑造人类与 AI 之间的关系模式。它将 AI 助手的能力发挥到极致,助推 AI 在各行各业的广泛应用。随着 CrewAI 技术的不断成熟,AI 将成为企业协同工作的重要力量。

Reference :[1] https://github.com/joaomdmoura/crewai

本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
业界资讯 AI
相关文章 更多
精品专题 更多
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

IOS软件

正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

AI

正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

PDF教程

PDF教程适合刚接触PDF文件的用户,本文整理PDF打开、编辑、转换、合并、压缩等常见基础操作。通过这些教程可以快速了解PDF文件怎么处理,解决办公、学习和资料科整理中的常见问题。使用极轻PDF可在线完成多种PDF操作,适合新手快速上手。

Mac软件 更多
灵活计算器
灵活计算器

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

图几
图几

图几是一款适用于 macOS 的截图、标注与美化工具,支持离线操作保障隐私。界面整理和高频系统操作被放到一起考虑,桌面或窗口内容一多时,管理起来会更省心。

密码键盘
密码键盘

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

思源笔记
思源笔记

思源笔记是一款本地笔记软件,提供所见即所得的编辑方式,为长文写作带来顺滑的体验。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

Office 365 简体中文
Office 365 简体中文

一款文字处理软件,一种订阅式的跨平台办公软件,基于云平台提供多种服务,通过将 Excel 和 Outlook 等应用与 OneDrive 和 Microsoft Teams 等强大的云服务相结合,Office 365 可让任何人使用任何设备随时随地创建和共享内容。

WALTR PRO
WALTR PRO

WALTR是一款电脑至iOS文件传输转换工具,操作简单,快速实现文件识别与传送。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

CodeExpander
CodeExpander

CodeExpander 是一款快捷短语输入增强工具,通过键入缩写自动展开为自定义文段,提升工作效率。任务管理和过程控制会更完整,持续下载、批量同步或需要稳定传输流程的场景会更适合它。

Mountain Duck
Mountain Duck

Mountain Duck 是一款能将多个网盘挂载到本地的工具,像本地磁盘一样使用网盘。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

Menuist
Menuist

Menuist 是一款面向 macOS 的 Finder 右键菜单增强工具,主要用来补充新建文件、快捷导航等常用操作,让日常文件管理和访问路径时更高效、更顺手。

Mole
Mole

Mole 是一款专为 Mac 设计的深度清理优化工具,涵盖缓存清理、应用管理及实时状态监控等功能。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

WINDOWS 更多
Windows 10
Windows 10

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

思源笔记
思源笔记

思源笔记是一款本地笔记软件,提供所见即所得的编辑方式,为长文写作带来顺滑的体验。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

傲梅轻松备份
傲梅轻松备份

傲梅轻松备份是一款专业易用的数据备份软件,为重要数据提供安全保障。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

Office 365 简体中文
Office 365 简体中文

一款文字处理软件,一种订阅式的跨平台办公软件,基于云平台提供多种服务,通过将 Excel 和 Outlook 等应用与 OneDrive 和 Microsoft Teams 等强大的云服务相结合,Office 365 可让任何人使用任何设备随时随地创建和共享内容。

Wise Folder Hider Pro
Wise Folder Hider Pro

Wise Folder Hider Pro 是一款专业级文件和文件夹隐藏加密软件,为私密数据添加多重保护。高频操作更强调就近处理,浏览、整理和跨目录移动文件时,来回切换和重复点击都会少很多。

WALTR PRO
WALTR PRO

WALTR是一款电脑至iOS文件传输转换工具,操作简单,快速实现文件识别与传送。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

CodeExpander
CodeExpander

CodeExpander 是一款快捷短语输入增强工具,通过键入缩写自动展开为自定义文段,提升工作效率。任务管理和过程控制会更完整,持续下载、批量同步或需要稳定传输流程的场景会更适合它。

PinStack
PinStack

PinStack是一款轻量级的Windows平台剪贴板管理工具,优化您的剪贴板使用体验。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

Mountain Duck
Mountain Duck

Mountain Duck 是一款能将多个网盘挂载到本地的工具,像本地磁盘一样使用网盘。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

Seer
Seer

Seer是一款在Win平台下的空格键功能增强效率工具,只需轻敲空格键,就能预览几乎任何格式的文件。它更适合把零散的小功能集中起来使用,处理高频琐碎任务时会更省事。