总结 2025 年 AI 应用开发的技术栈趋势,帮助程序员了解当前流行的框架和工具组合。社区高度关注(445 次互动),适合了解行业方向。
2025 年将成为 AI 应用之年,改变我们构建和使用技术的方式。
从更加智能的工具到功能强大的框架,科技世界正在快速变化,而 AI 正在以前所未有的方式重塑这一领域。
今天,我们将介绍用于构建 AI 应用的 22 个顶级工具和开源框架,并在最后附上一份额外清单。
🎯 什么是 AI 智能体框架?
这份清单中包含许多 AI 智能体框架,因此我们先花一点时间了解它的含义。
AI 智能体就像非常聪明的助手。你只需要告诉它们自己的需求,它们就会想办法完成任务!!
LLM 充当系统的大脑。当 AI 需要与外部世界通信、获取数据或执行特定任务时,可以使用工具,也就是外部资源或 API。
它们可以规划、制定决策,甚至随着时间推移不断改进。这更像是拥有一位能够独立工作的助手,无须你在每一步都提供指导!
AI 智能体主要可以分为两种类型:
⚡ 响应式智能体:对来自环境的即时输入作出响应。
⚡ 主动式智能体:提前规划,以实现长期目标。
如果你希望了解更多,Lyzr 的《什么是智能体框架》是一个很好的起点。它涵盖了架构、为什么需要 AI 智能体、关键组件,以及选择合适框架时需要考虑的因素。
你可能也认同,在 React 中添加 AI 功能并不容易,而 CopilotKit 正是为此而生的框架,可用于构建自定义 AI Copilot。
通过 CopilotKit 提供的简单组件,你可以构建应用内 AI 聊天机器人和 AI 智能体,比从零开始构建至少轻松 10 倍。
✅ 基于实时、用户特定的上下文。
✅ 可以轻松将 LangChain 和 LangGraph 智能体集成到你的 Copilot 中。
它们提供了内置且完全可定制的 Copilot 原生 UX 组件,例如 <CopilotKit />、<CopilotPopup />、<CopilotSidebar /> 等。
使用以下 npm 命令即可开始:
npm i @copilotkit/react-core @copilotkit/react-ui
CopilotPopup 是 CopilotChat 的便捷封装,在视图层级中与主要内容处于同一层。它提供了一个可以开启和关闭的浮动聊天界面。使用方式如下:
import { CopilotPopup } from "@copilotkit/react-ui";
export function YourApp() {
return (
<>
<YourMainContent />
<CopilotPopup
instructions={"You are assisting the user as best as you can. Answer in the best way possible given the data you have."}
labels={{
title: "Popup Assistant",
initial: "Need any help?",
}}
/>
</>
);
}
你可以阅读文档并查看演示视频。
你可以轻松集成 Vercel AI SDK、OpenAI API、LangChain 以及其他 LLM 提供商。
它们最近还发布了 CoAgents,这是一个用于将智能体嵌入应用的框架。
CopilotKit 在 GitHub 上拥有超过 1.5 万颗星。
LangChain 非常适合创建提示词序列并管理与 AI 模型的交互。它拥有庞大的生态系统和大量预构建集成,因此可以更轻松地快速运行应用。
开发者可以设计功能强大的 AI 智能体,使其具备复杂推理和任务执行能力,同时与外部数据源及 API 交互。
它是最受欢迎的 LLM 框架之一,拥有庞大的社区。其底层:
使用 LangGraph 构建有状态智能体,并提供一流的流式处理和人在回路支持。
使用 LangGraph 构建有状态智能体,并提供一流的流式处理和人在回路支持。
使用 LangSmith 检查、监控和评估应用,使你能够持续优化,并充满信心地完成部署。
使用 LangSmith 检查、监控和评估应用,使你能够持续优化,并充满信心地完成部署。
你可以阅读文档,进一步了解 LangChain。
IBM 在 YouTube 上发布了一段非常有趣的视频,强烈推荐!
LangChain 在 GitHub 上拥有 9.8 万颗星,并被超过 16 万名开发者使用。
Aider 就像终端里的一位聪明结对程序员。
它允许你与 LLM 进行结对编程,编辑本地 Git 仓库中的代码。你既可以启动一个新项目,也可以处理现有代码库。Aider 与 Claude 3.5 Sonnet、DeepSeek V3、o1 和 GPT-4o 配合时效果最佳,同时也可以连接几乎所有 LLM。
✅ 你可以将图片添加到聊天中。
✅ 你可以将 URL 添加到聊天中。
✅ 你可以通过语音编程。
✅ 面对复杂请求时,它可以同时编辑多个文件。
它会使用整个 Git 仓库的映射,因此能够很好地处理大型代码库。我附上了一个简短的演示!
如果你还不了解,Aider 在 SWE Bench 上取得了名列前茅的分数。SWE Bench 是一项极具挑战性的软件工程基准测试,在该测试中,Aider 解决了 django、scikitlearn、matplotlib 等热门开源项目中的真实 GitHub Issue。
你可以阅读文档。
你可以观看这个演示!
Aider 在 GitHub 上拥有 2.49 万颗星。
Bolt.new 是一款非常惊艳的 AI Web 开发智能体。你只需要描述自己想要什么,就能直接在浏览器中获得一个全栈应用,甚至不需要配置本地环境!
它实际上构建在 Bolt 开源仓库之上,并由 StackBlitz WebContainer API 提供支持。大多数人甚至不知道,它们提供的仓库仅包含 Bolt 的 UI 界面和服务器组件。如果你好奇,可以阅读更多相关内容。
它使用 Anthropic 的 Claude AI(普遍被认为表现非常出色),还提供了一些很酷的功能,例如工作过程中的实时预览、自动调试,以及一键部署到 Netlify 等平台。
从想法到上线应用,你甚至不需要离开浏览器。
如果你想构建某个产品,却不确定它究竟能否构建出一个像样的应用,那就看看这个演示。
Bolt 在 GitHub 上拥有 1.18 万颗星。
AgentOps 帮助开发者构建、评估和监控 AI 智能体,覆盖从原型到生产环境的整个过程。它们提供用于监控 AI 智能体、跟踪 LLM 成本、执行基准测试等用途的 Python SDK。
你可以完成的一些操作包括:
✅ 利用已保存的补全结果,以最高低 25 倍的成本微调专用 LLM。
✅ 以精确到时间点的方式回退并重放智能体运行过程。
✅ 保存日志、错误和提示词注入攻击的数据。
✅ 以可视化方式跟踪 LLM 调用、工具和多智能体交互等事件。
你可以从使用以下命令开始:pip install agentops。
你可以将其与大多数 LLM 和智能体框架集成,包括 CrewAI、LangChain、AutoGen 和 CamelAI。
你可以阅读文档。
如果你正在寻找一个不错的教程,可以观看这个视频!
AgentOps 在 GitHub 上拥有 2,600 颗星。
LangGraph 是构建在 LangChain 之上的高级库,旨在通过引入循环计算能力来增强你的大语言模型(LLM)应用。
LangChain 支持为线性工作流创建有向无环图(DAG),而 LangGraph 则更进一步,加入了循环;循环对于开发复杂且类似智能体的行为至关重要。
这些行为使 LLM 能够持续循环执行某个流程,并根据不断变化的条件动态决定下一步采取什么行动。
很多人常常认为 LangChain 与 LangGraph 非常相似,但事实并非如此。你可以观看这段视频来了解两者之间的区别。
你可以阅读文档。
如果你正在寻找指南,《如何使用 LangGraph 构建 AI 智能体:分步指南》是一篇非常不错的文章,其中以简单易懂的方式解释了相关概念。
LangGraph 在 GitHub 上拥有 7,900 颗星。
E2B 是一种开源基础设施,可以让你在云端安全、隔离的沙箱中运行 AI 生成的代码。你可以将它理解为提供给 AI 模型的一台小型计算机,并且可以同时运行多个沙箱。
它们提供 JavaScript SDK 和 Python SDK,用于启动和控制这些沙箱。
E2B 的常见使用场景包括 AI 数据分析或可视化、运行 AI 生成的多种语言代码、为编程智能体提供试验场、为代码生成评估提供环境,或者像 Fragments 那样运行完整的 AI 生成应用。
可以按以下方式安装 JavaScript SDK:
npm i @e2b/code-interpreter
然后配置你的 E2B API 密钥,并按以下方式在 Sandbox 内使用代码解释器执行代码:
import { Sandbox } from '@e2b/code-interpreter'
const sandbox = await Sandbox.create()
await sandbox.runCode('x = 1')
const execution = await sandbox.runCode('x+=1; x')
console.log(execution.text) // outputs 2
你可以阅读文档,还可以查看如何使用 E2B 通过 AI 分析数据。
它可以帮助你在云端安全地运行 AI 相关代码,因此非常适合在 2025 年构建和测试 AI 应用。
E2B 在 GitHub 上有 7.3k stars。
8. CrewAI - 角色扮演型自治 AI 智能体
CrewAI 是一个用于编排角色扮演 AI 智能体的框架。它允许开发者创建一个 AI 智能体团队,每个智能体都有特定的角色和职责,共同协作完成复杂任务。
它模仿人类组织结构,基于多智能体系统的理念。工作流程如下:
团队组织整体运营
AI 智能体专注于各自的专业任务
该过程确保流畅的协作
任务完成以实现目标
你可以阅读文档了解相关概念。
AndrewNg (Deeplearning) 提供了一个关于如何使用 crewAI 构建多 AI 智能体系统的短期课程。
它包含代码示例、19 个视频课程,非常值得学习,因为 Deeplearning 的课程总是质量很高。立即开始学习吧!
CrewAI 在 GitHub 上有 24k stars。
9. Better Auth - TypeScript 最全面的认证框架
TypeScript 生态中的认证仍是一个半解决的问题。其他开源库通常需要大量额外代码才能实现基础认证以外的功能。与其仅依赖第三方服务,我们需要更好的解决方案。
如果你要构建下一代 AI 应用,就需要一个简单而合理的认证系统。你可能听说过 Clerk 和 Next Auth,但还有一个我特别喜欢的(虽然许多人不知道)。
Better Auth 是一个框架无关的认证和授权库。它开箱即用提供了一套全面的功能,并包含一个插件生态系统,可以用最少的代码在很短时间内添加高级功能。
使用以下命令开始使用。
npm install better-auth
使用方法如下。
// auth.ts
export const auth = betterAuth({
database: new Pool({
connectionString: DATABASE_URL,
}),
emailAndPassword: {
enabled: true,
},
plugins: [
organization(),
twoFactor(),
]
})
// client.ts
const client = createAuthClient({
plugins: [passkeyClient()]
});
社交登录选项包括 Apple、Discord、Facebook、GitHub、Google、Microsoft、Twitch、Twitter (X)、Dropbox、LinkedIn、GitLab、Reddit 和 Spotify。
我特别喜欢插件部分的设计。例如,如果想启用匿名认证,可以这样操作。
import { betterAuth } from "better-auth"
import { anonymous } from "better-auth/plugins"
export const auth = betterAuth({
// ... 其他配置选项
plugins: [
anonymous()
]
})
还有许多其他插件,如 Google One-Tap、PassKey(使用密钥对)或 Multi Session,允许用户在同一浏览器中跨不同账户维持多个活跃会话。
你可以在 demo.better-auth.com 阅读文档和实时演示。
Better Auth 在 GitHub 上有 6k stars。
10. Tavily - 将你的 LLM 接入网络
Tavily 帮助你的 AI 应用从网络获取实时、准确的信息,适用于 LLM 等 AI 模型和使用检索数据的工具 (RAG)。
Tavily 提供了一个优秀的搜索 API,消除了手动 SERP 爬取的需求,通过为 AI 处理优化内容片段的方式提供快速、可靠的网络数据访问。
使用场景是什么?
比如你在构建 AI 聊天机器人,Tavily 会帮助机器人直接从网络获取最新的、上下文相关的信息。这提高了机器人准确回答复杂问题的能力,让用户体验更可靠。
使用以下命令开始。
pip install tavily-python
以下是如何用一行代码为你的 RAG 应用生成精确的、基于事实的上下文。
from tavily import TavilyClient
# 第 1 步. 实例化 TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
# 第 2 步. 执行上下文搜索查询
context = tavily_client.get_search_context(query="What happened during the Burning Man floods?")
# 第 3 步. 就这样!你现在拥有一个上下文字符串,可以直接输入你的 RAG 应用
print(context)
你可以阅读文档。
看这个关于使用 Copilotkit、Tavily 和 LangChain 的开源研究智能体原生应用 (ANA) 的视频!
他们的 JavaScript SDK 目前处于测试阶段。
他们的 Tavily 搜索 API 的 Python 包装在 GitHub 上有 376 stars。
11. Microsoft AutoGen - 智能体 AI 编程框架
AutoGen 是创建多智能体 AI 应用的框架。它可以同时执行多项任务,甚至处理实时数据流。
由微软研究院开发(从名字就能看出),该生态系统提供了创建 AI 智能体所需的一切,特别是多智能体工作流、框架、开发工具和应用。
例如,这是使用 OpenAI 的 GPT-4o 模型创建助手智能体的方法。
import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
async def main() -> None:
agent = AssistantAgent("assistant", OpenAIChatCompletionClient(model="gpt-4o"))
print(agent.run(task="Say 'Hello World!'"))
asyncio.run(main())
它还支持两个核心开发工具:
AutoGen Studio:为构建多智能体应用提供无代码 GUI。
AutoGen Bench:为评估智能体性能提供基准测试套件。
你可以阅读文档。
如果寻找好的教程,看这个!
Autogen 在 GitHub 上有 37k stars。
对 Microsoft AutoGen 点赞 ⭐️
12. Rasa - 自动化文本和语音对话
Rasa 是一个会话 AI 平台,使团队能够构建聊天机器人、语音助手和其他自动化对话系统。
它提供了开发、训练和部署上下文智能虚拟助手的工具和基础设施,这些助手能够理解自然语言。
使用 Rasa,你可以在 Facebook Messenger、Slack、Google Hangouts、Webex Teams、Microsoft Bot Framework、Rocket.Chat、Mattermost、Telegram、Twilio 上构建上下文助手。以及在你自己的自定义会话渠道和语音助手(如 Alexa Skills、Google Home Actions)上构建。
他们实际上提供两个主要解决方案:
Rasa Pro:用于构建可扩展、动态会话 AI 助手的 Python 框架,集成 LLM。
Rasa Pro:用于构建可扩展、动态会话 AI 助手的 Python 框架,集成 LLM。
Rasa Studio:无代码图形用户界面,帮助业务用户协作构建、审查和大规模改进会话用户体验。
Rasa Studio:无代码图形用户界面,帮助业务用户协作构建、审查和大规模改进会话用户体验。
你可以阅读包含两个产品及其使用方法的文档。
其中一位联合创始人在这篇 Medium 文章中分享了关于为更好的上下文对话构建机器人的深入见解:A New Approach to Conversational Software。
Rasa 在 GitHub 上有 19k stars。
13. Supabase - 完美的数据库加实用的 AI 功能
Supabase 已发展成一个拥有酷炫 AI 功能的完整后端解决方案。
它包括用于处理 AI 推荐或语义搜索的向量相似度搜索、用于存储和管理嵌入的内置支持,甚至是纯英文转 SQL(确实很酷)。
它还有适合构建实时 AI 驱动应用(如聊天系统或协作工具)的实时订阅。此外,他们的边缘函数让你在接近用户的位置运行 AI 计算,降低实时推理等任务的延迟。
使用以下 npm 命令开始(Next.js)。
npx create-next-app -e with-supabase
你可以阅读文档。
如果你对 Supabase 陌生,看这个视频在 100 秒内快速了解!
你可以用认证、实时功能、边缘函数、存储等构建超快应用。Supabase 几乎涵盖了所有功能!
最好的是他们提供许多 AI 模板和示例,比如用 Next.js 和 OpenAI 实现向量搜索。
Supabase 在 GitHub 上有 76k stars。
14. AutoGPT - 比 ChatGPT 更令人兴奋
AutoGPT 的核心是其旗舰项目,一个由大型语言模型 (LLM) 驱动的半自治智能体,设计用来为你执行任何任务。
它是一个平台,允许你创建、部署和管理持续的 AI 智能体,以自动化复杂工作流。
你可以阅读文档和关于如何使用 AutoGPT 构建智能体的快速入门指南。
如果感兴趣,看这个 FireShip 制作的解释 AutoGPT 的视频!
💡 你可以用它构建什么?
例如,你可以构建一个能浏览 Reddit 的智能体,它识别趋势话题,并根据内容自动创建短视频。
这是一个非常强大的组合,开启了许多机会。即使你对 AI 了解不多,你也可以尝试 AutoGPT,来理解如何节省时间并构建酷炫的东西。
AutoGPT 在 GitHub 上有 17 万 star。
TanStack 为 JavaScript 和 TypeScript 应用提供强大的库来管理服务器状态,使得处理数据获取、缓存、同步等变得更容易。
TanStack Query 是其中之一,它自动刷新数据,有真正有效的智能缓存,无痛地处理实时更新,进行乐观更新,还有很棒的开发者工具(你离不开它)。
其他一些库也值得使用。
AI 应用经常需要获取和管理大型数据集,无论是用于训练模型、处理输入还是与 API 交互。使用 TanStack Query 可以帮助你优化数据流,减少异步数据管理的复杂性(即使只是稍微减少)。
你还应该看看 TanStack Start,这是一个新的全栈 React 框架。老实说,我从没真正听说过它。
TanStack 有多个仓库,但 Query 那个有 4.3 万个 star。
这是列表中唯一不开源的框架。它以对安全和负责任的 AI 的强烈关注而构建。
它确保 AI 智能体以伦理方式工作,开箱即用地处理隐私、公平性和透明度。
尽管它不开源,但它通过提供出色的支持和为专业使用而精心打磨的工具来弥补这一点。
他们还提供 Agent studio,在那里你可以在几分钟内构建一个智能体。你还会找到社区智能体和很多其他重要的内容。
✅ 通过简单的低代码界面创建、管理和部署智能体。✅ 将工作流与现有工具集成。
还有一个 YouTube 教程,讲解如何用 Lyzr 在 60 秒内构建你的第一个 AI 智能体!
Phidata 是一个用于构建多模态智能体和工作流的框架。
你可以构建可以协作解决问题的智能体团队。另外,你可以使用美观的智能体 UI 与你的智能体聊天。
你可以使用以下命令安装。
pip install -U phidata
它专注于最少代码,例如,你可以只用 10 行代码创建一个网页搜索智能体。
from phi.agent import Agent
from phi.model.openai import OpenAIChat
from phi.tools.duckduckgo import DuckDuckGo
web_agent = Agent(
name="Web Agent",
model=OpenAIChat(id="gpt-4o"),
tools=[DuckDuckGo()],
instructions=["Always include sources"],
show_tool_calls=True,
markdown=True,
)
web_agent.print_response("Tell me about OpenAI Sora?", stream=True)
你可以在文档中阅读更多内容,并在他们位于 phidata.app/playground 的游乐场测试。
他们提供模板和示例应用,可以帮助你更快地开始。
Phidata 在 GitHub 上有 1.7 万个 star。
Botpress 是另一个构建 AI 智能体的平台。其可视化工作流设计、广泛的 AI 集成和多渠道支持使其对于自动化客户交互和工作流很有用。
换句话说,它很适合在无需大量编码技能的情况下构建自定义聊天机器人。它易于使用,适用于企业,并帮助创建可以处理大任务并轻松连接其他工具的聊天机器人。
有很多功能,例如:
✅ 你获得用于无代码机器人创建的拖拽式界面。✅ 它会自动与你的数据库和系统同步。✅ 你可以在网站、WhatsApp、Slack、Instagram、Telegram、Messenger 和更多平台上部署机器人。
你可以阅读文档并查看他们关于如何构建 AI 智能体的学院课程。他们还提供预构建的模板!
你应该观看这个教程,展示如何使用 Botpress 构建自定义训练的 AI 聊天机器人。
Botpress 在 GitHub 上有 1.3 万个 star。
Storybook 是一个用于隔离构建 UI 组件和页面的前端工作室。它有助于 UI 开发、测试和文档。
对于 AI 应用,它可用于创建以某种形式使用 AI 的交互式 UI,例如仪表板、数据可视化或与 AI 模型或 API 交互的东西。你可以隔离地构建和展示组件,无需加载整个应用上下文。
你可以使用以下命令开始使用它。
npx storybook@next init
这是你如何为你的项目创建一个简单组件的方法。
import type { Meta, StoryObj } from '@storybook/react';
import { YourComponent } from './YourComponent';
//👇 This default export determines where your story goes in the story list
const meta: Meta<typeof YourComponent> = {
component: YourComponent,
};
export default meta;
type Story = StoryObj<typeof YourComponent>;
export const FirstStory: Story = {
args: {
//👇 The args you need here will depend on your component
},
};
你可以阅读文档。
如今 UI 很难调试,因为它们与业务逻辑、交互状态和应用上下文纠缠在一起。
Storybook 提供一个隔离的 iframe 来渲染组件,不受应用业务逻辑和上下文的干扰。这有助于你专注于组件的每个变体的开发,甚至是难以触及的边缘情况。
困惑了?观看这个视频,在 100 秒内理解它!
Storybook 在 GitHub 上有 8.5 万个 star。
很多国际团队使用 Figma 进行 UX 设计,你知道制作像素完美的用户界面有多困难。
如果有现成的解决方案,为什么不试试呢?
Visual Copilot 是一个强大的 Figma 插件,它将你的 Figma 设计转换为干净的、开箱即用的代码。不需要设置,它可以为几乎任何框架生成代码,例如 React、Next.js、Vue、Svelte、Angular、Swift、Flutter、Kotlin、React