01
引言
我们都听说过CrewAI和AutoGen,但您知道吗?目前市面上已有数十种开源智能体框架——其中许多都是过去一年内发布的。
我简单测试了几款较热门的框架,初步感受了它们的工作原理和上手难度。接下来就让我们逐一剖析这些框架的特色功能。
本文将重点评测LangGraph、Agno、SmolAgents、Mastra、Pydantic AI和Atomic Agents六大框架,并与CrewAI和AutoGen进行横向对比。我们将解析各框架的核心功能、设计理念以及技术路线等。
02
Agentic AI
代理式人工智能(Agentic AI)的核心,是围绕大语言模型(LLM)构建系统,使其具备精准的知识储备、数据访问能力和执行功能。你可以将其理解为:用自然语言来自动化流程和任务。
利用自然语言处理(NLP)实现自动化并非新鲜事——多年来我们一直用NLP来提取和处理数据。真正的突破在于,如今我们可以赋予语言模型更高的自由度,让它们动态处理模糊信息并自主决策。
但要注意:LLM能理解语言,不等于它们拥有"代理能力"(agency),甚至未必能真正领会你想自动化的任务。正因如此,构建可靠的智能体系统需要大量工程化设计。
03
智能体框架是什么?
智能体框架的核心功能在于辅助提示词工程(prompt engineering),并管理LLM的输入输出数据流——但它们还提供了更高层次的抽象,大幅降低了开发门槛。
假设你要从头构建一个系统,让LLM调用不同的API工具,传统做法是在系统提示词中硬编码这些规则。你需要要求LLM在返回答案时,必须附带它想调用的工具名称,这样系统才能解析并执行对应的API调用。
本质上,我们讨论的是提示词工程(prompt engineering)——这是所有框架的底层基础。一般来说,框架通常通过两种方式提供帮助:一是合理构建提示(prompt),确保大型语言模型(LLM)以正确的格式回应;二是解析模型的响应,将其路由到正确的工具(API、文档或其他资源)。
在构建知识库时,框架也可以帮助进行文档的分块(chunking)、嵌入(embedding)和存储。这些内容会作为上下文加入到提示中,就像我们构建标准的检索增强生成(RAG)系统一样。此外,框架还能处理错误捕获、结构化输出、结果验证、系统监控、部署管理等任务,并通过代码组织能力支持更复杂的系统构建(例如多智能体协作架构)。
然而,许多人认为使用完整的框架可能有些“杀鸡用牛刀”。
问题在于:如果LLM没有正确使用工具,或者出现故障,这种抽象可能变成负担,因为你很难调试。换模型时也可能出现问题——系统提示(prompt)可能针对某个模型量身定制,转到其他模型时效果不佳。
因此,一些开发者会重写框架的部分内容,例如在 LangGraph 中的 create_react_agent,以获得更好的控制。一些框架较轻便,另一些则功能更丰富,提供额外的特性,但它们都有社区支持,能帮助你入门。一旦掌握了其中一种(包括其底层工作原理),学习其他框架也会变得更容易。
04
开源智能体框架介绍
我们确实需要参考社区的实际案例来评估框架的表现,但最流行的框架未必总是最优选。
大家常听说的有 CrewAI 和 AutoGen。
- CrewAI 是一个高度抽象的框架,可以通过隐藏底层细节,帮助你快速构建代理系统。
- AutoGen 则专注于自主、异步的智能体协作,智能体们可以根据自身需要自由合作,这使得它更适合用于测试和研究。
-
LangGraph 仍然是一个比较知名的系统,但值得被强调为开发者的主要框架之一。它采用基于图的方式,构建节点并通过代理连接它们。相比前两个,LangGraph 提供了更严格的工程控制,不假设智能体会拥有较强的自主性。
需要指出的是,很多人觉得 LangGraph 在抽象层次上过于复杂,调试起来比较困难。其思想是学习曲线较陡,但一旦掌握了基本原理,使用起来会变得更容易。
此外,我还想介绍一些较新的框架。
-
下一个是 Agno(之前叫 Phi-Data),它专注于提供极佳的开发者体验,也有我见过最清晰的文档之一。它非常即插即用,配备丰富的内置功能,组织成合理、清晰的抽象结构,便于快速上手。
-
SmolAgents 是一个非常简洁的框架,它引入了一个代理—— CodingAgent——通过代码(而非JSON)路由数据。它还可以直接访问整个 Hugging Face 模型库。
关于一些不常提及的开源框架:
- PydanticAI: 基于 Pydantic,抽象层极少,提供一个高度透明的基础框架。非常适合需要严格类型安全、可预测验证输出的场景,便于细粒度控制和调试
- Atomic Agents 由一位个体开发者构建,采用基于架构的构建块,像乐高一样连接,强调结构和控制。它诞生的背景是市场上缺乏能够有效实践的解决方案。
PydanticAI 和 Atomic Agents 的共同目标是摆脱“黑箱”式的独立行为AI,实现更可控、更透明的系统。
最后,Gatsby 团队打造的 Mastra,是一款面向前端开发者的 JavaScript 框架,旨在让开发者可以在自己生态系统中轻松构建代理。
我们接下来会详细介绍每个框架提供的内容以及它们之间的区别。
05
共同点介绍
大多数框架都包含相同的核心构建模块:支持不同模型、工具、记忆体和RAG(检索增强生成)。
大多数开源框架或多或少都具备模型无关性。这意味着它们被设计为支持多种供应商的模型。然而,如前所述,每个框架都有自己独特的系统提示结构——这种结构可能更适合某些模型而非其他模型。
这也正是为什么理想情况下,大家需要能够访问系统提示并根据需要对其进行调整。
所有智能体框架都支持工具集成,因为工具对于构建能够执行行动的系统至关重要。它们还通过简单的抽象使自定义工具的定义变得容易。如今,大多数框架都正式或通过社区解决方案支持MCP。
需要注意的是,并非所有模型都内置了函数调用功能,而这是使用工具所必需的。要确定哪些模型最适合作为基础大语言模型(LLM),大家可以参考Hugging Face的智能体排行榜。
网址:https://huggingface.co/blog/pratikbhavsar/agent-leaderboard
为了使智能体能够在LLM调用之间保留短期记忆,所有框架都利用了状态(state)机制。状态帮助LLM记住早期步骤或对话部分的内容。
大多数框架还提供了简单的选项,用于设置与不同数据库的RAG,以便为智能体提供知识支持。
最后,几乎所有框架都支持异步调用、结构化输出、流式处理等。
06
不同框架的缺失部分
在某些方面,不同的框架会有差异,比如支持多模态输入、长期记忆和多智能体系统的支持。有些框架内置了这些功能,而另一些则需要开发者自行实现。
首先,一些框架内置了多模态处理方案——也就是说,支持文本、图像和语音等多种输入。只要模型支持,这些功能都可以通过自行实现来完成。
正如前面所说,短期记忆(状态)是框架的标准配置——没有它,就无法构建使用工具的系统。然而,长期记忆的实现更为复杂,这也是不同框架之间的差异所在。有的框架提供了内置解决方案,而有些则需要开发者自行集成其他解决方案。多智能体能力在不同框架中的实现方式也有所不同。多智能体系统允许大家构建协作式或分层式架构,让多个智能体通过监督者(supervisor)相互连接。
大多数框架建议保持智能体的专注性——即限定其工具集和任务范围。这意味着在复杂工作流中,你可能需要构建多个智能体团队。虽然所有框架都支持单层团队,但在扩展到多层、多层级系统时,部分框架会变得复杂。
- LangGraph在这方面表现突出——你可以构建节点,将它们连接到不同的监督者,并可视化不同团队的交互方式。在构建大规模多智能体系统时,它显然是最灵活的
- Agno最近增加了对协作式和分层式团队的支持,但目前缺乏更复杂的多层架构示例。
- SmolAgents允许将智能体连接到监督者,但随着系统规模扩大,复杂度会上升。它的团队结构与 CrewAI 类似。Mastra 在这方面也类似。
- PydanticAI和 Atomic Agents 则需要开发者手动编排智能体团队,因此协调工作完全由开发者负责。
07
差异点分析
不同开源框架在抽象程度、赋予代理的控制权以及实现功能所需的编码量方面各不相同。
首先,有些框架会尽可能多地内置各种功能,使得快速上手变得非常容易。
我认为,Mastra、CrewAI,以及在一定程度上,Agno都是设计为即插即用的。LangGraph也有相当程度的抽象,但它采用基于图的系统,需要手动连接各个节点。这提供了更大的控制权,但也意味着你必须自己设置和管理每个连接,学习难度相对较高。
接下来是低层次抽象的框架,比如PydanticAI、SmolAgents和Atomic Agents。这些框架强调透明性,但通常需要你自己构建调度与协调的流程。这为你提供了完全的控制,也方便调试,但同时也会延长开发时间。
另一个差异点在于框架假设智能体应该拥有的自主性。有些框架的理念是让大型语言模型(LLMs)足够聪明,能够自主完成任务。其他一些则倾向于严格控制—只赋予智能体一个明确的任务,并一步步指导其操作。
AutoGen和SmolAgents属于前者,而其他大多偏向于控制型。这一点值得考虑:当开发者构建偏向严格控制的框架时,往往是因为还没有找到让智能体自主工作的可靠方法。
这个领域也逐渐像工程开发一样,需求借助编码技能。
如果你打算构建这类系统,理解编码基础是必要的。关键在于这些框架在技术要求上差异有多大。如果你经验较少,选择CrewAI、Agno或Mastra可能是个不错的主意。
对于简单的用例,SmolAgents也相对直接。
而使用PydanticAI、Atomic Agents或LangGraph,你可能需要自己编写更多逻辑代码。当然,构建智能体来帮你梳理和结构化代码也是可行的。
如果你是编程新手,可以考虑Flowise或Dify。
最后,值得关注的是这些框架的开发者体验。据我所知,大多数开发者觉得CrewAI和AutoGen在调试方面比较困难。SmolAgents的CodeAgent提出了一种新颖的方法——由智能体输出代码来路由数据,这点很酷,但并不总是能按预期工作。
尤其是LangGraph(配合LangChain使用)学习曲线陡峭,抽象概念有时令人困惑,可能需要反复拆解重建。
PydanticAI和Atomic Agents普遍受到开发者的好评,但它们都需要你自己实现调度流程。
Agno和Mastra虽然是不错的选择,但在调试遇到循环调用等问题时可能比较困难。
08
总结
入门的最好方式就是直接尝试一下。不过,我希望这份介绍能为你提供一个关于现有开源框架的基本概览 — 以及哪些可能适合你。不过,这只是对每个框架的粗略介绍,因为我没有涉及企业级的可扩展性或操作的鲁棒性等方面。如果你正打算为这些目标构建系统,可能需要另外进行专门的研究。一些开发者认为,AI智能体框架是最差的抽象形式之一——它们常常让事情变得比直接使用官方大型语言模型(LLM)提供商的SDK更加复杂。至于这个观点是否成立,就留给大家自行判断了。
如何学习AI大模型 ?
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓
CSDN粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以扫描下方二维码&点击下方CSDN官方认证链接免费领取 【保证100%免费】
读者福利: 👉👉CSDN大礼包:《最新AI大模型学习资源包》免费分享 👈👈
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
👉1.大模型入门学习思维导图👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
👉2.AGI大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。
👉3.大模型实际应用报告合集👈
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)
👉4.大模型落地应用案例PPT👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)
👉5.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)
👉6.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习
CSDN粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以扫描下方二维码&点击下方CSDN官方认证链接免费领取 【保证100%免费】
读者福利: 👉👉CSDN大礼包:《最新AI大模型学习资源包》免费分享 👈👈