CopilotKit vs Vercel AI SDK vs Thesys:框架对比
三大主流 Generative UI 框架的客观对比,包括各自的优缺点和适用场景。
三个框架,一个问题:哪个 GenUI 技术栈值得押注?
如果你需要在 2026 年 4 月发布一个真正的 AI 驱动界面,实际上有三个候选:Vercel AI SDK、CopilotKit 和 Thesys json-render。它们解决同一个问题——让模型产出实时 UI——但架构上的分歧足以让这个选择影响维护成本、交互能力的上限,以及一年后你需要迁移时的代价。
本文数据截至 2026-05-09。版本:Vercel AI SDK 4.x,CopilotKit 1.x,Thesys json-render 0.x(2026 年 1 月发布)。更广泛的行业背景见 2026 年第二季度 Generative UI 现状;基础概念见 什么是 Generative UI。
2026 年初的格局
目前有三个框架主导着 Generative UI 领域。每个框架对同一个问题——如何让 AI 模型生成可交互的用户界面——采取了根本不同的方法。
以下是我在用三者都构建过生产功能后的发现。
快速对比
| 特性 | Vercel AI SDK | CopilotKit | Thesys(json-render) |
|---|---|---|---|
| GitHub Stars | ~45K | 22K | 13K(3 个月新项目) |
| npm 下载量 | 2000 万+/月 | 约 20 万/月 | 约 5 万/月 |
| 方式 | 通过 RSC 流式传输 React | 副驾驶模式组件 | JSON schema 渲染 |
| 框架锁定 | Next.js(主要) | React(任意打包器) | 与框架无关 |
| 学习曲线 | 中等 | 低 | 低–中 |
| 生产就绪度 | 高 | 高 | 中 |
| 最适合 | 全栈 Next.js 应用 | 为现有应用添加 AI | 多框架项目 |
| 许可证 | Apache 2.0 | MIT | MIT |
| 托管选项 | Vercel | CopilotKit Cloud | Thesys Cloud |
Vercel AI SDK:全栈首选
Vercel AI SDK 的 streamUI 函数是最强大的方式——也是最有主见的方式。它从服务端流式传输真正的 React Server Components,意味着 AI 输出是在服务端渲染的真实 React 代码。
工作原理
你将工具定义为 yield 加载状态并返回 React 组件的异步生成器函数。SDK 处理序列化组件树,并通过 RSC 协议将其流式传输到客户端。
import { streamUI } from 'ai/rsc';
const result = await streamUI({
model: openai('gpt-4o'),
prompt: 'Show revenue for Q1',
tools: {
revenueChart: {
description: 'Display a revenue chart',
parameters: z.object({ period: z.string(), data: z.array(...) }),
generate: async function* (params) {
yield <ChartSkeleton />; // 立即显示加载状态
return <RevenueChart {...params} />; // 最终组件
},
},
},
});
yield / return 模式是定义性特征。骨架屏在 AI 解析参数时立即出现。参数就绪时,真实组件替换它——全部在一次流式响应中完成。
优势
- 与 Next.js 深度集成。
streamUI围绕 App Router 和 RSC 设计。如果你在构建 Next.js 应用,这是最符合惯例的选择。 - 真正的服务端渲染。 生成的组件在服务端渲染,意味着它们可以直接在渲染函数中访问数据库、文件系统和私有 API。
- 最大的生态系统。 每月 2000 万+ 下载量意味着丰富的示例、Stack Overflow 答案和社区支持。
- 最佳 TypeScript 支持。 SDK 的类型非常完善。工具参数、模型响应和流式传输值都有正确的类型。
- 提供商灵活性。 SDK 对模型提供商做了抽象——只需更改一个导入就能从 OpenAI 切换到 Anthropic 或 Google。
弱点
- 依赖 Next.js。
streamUI需要 React Server Components。它在 Next.js App Router 中工作。在该环境之外运行需要大量变通工作。 - RSC 调试复杂性。 当正在流式传输的服务端组件出错时,调试体验比普通服务端错误更糟。错误信息可能晦涩难懂。
- 服务端组件限制。 RSC 不能直接使用 hooks、浏览器 API 或客户端状态。交互行为需要仔细地拆分服务端和客户端组件。
- 与 Vercel 相邻。 虽然 SDK 在任何支持 Node.js 的平台上都能工作,但某些功能针对 Vercel 的基础设施进行了优化。
何时选择 Vercel AI SDK
你在构建新的 Next.js 应用。你想要最生产就绪、性能最好的 Generative UI 实现。你熟悉 React Server Components 和 App Router。你想要最广泛的社区示例选择。
CopilotKit:集成首选
CopilotKit 采取了不同的理念。它不是从服务端流式传输组件,而是提供客户端 React 组件来创建"副驾驶"体验。将 <CopilotChat> 放入你现有的应用,你就有了一个能读取和修改应用状态的侧边栏 AI。
工作原理
CopilotKit 引入了两个主要原语:动作和可读状态。你定义 AI 能做什么以及能看到什么,然后 CopilotKit 处理其余的事情。
import { CopilotKit, CopilotChat } from '@copilotkit/react-core';
import { useCopilotAction, useCopilotReadable } from '@copilotkit/react-core';
function Dashboard() {
const [filters, setFilters] = useState({ period: 'month', metric: 'revenue' });
// 让 AI 读取当前状态
useCopilotReadable({
description: 'Current dashboard filters',
value: filters,
});
// 让 AI 修改筛选器
useCopilotAction({
name: 'updateFilters',
description: 'Update the dashboard view',
parameters: [
{ name: 'period', type: 'string' },
{ name: 'metric', type: 'string' },
],
handler: ({ period, metric }) => setFilters({ period, metric }),
});
return (
<div className="flex">
<DashboardView filters={filters} />
<CopilotChat instructions="Help the user explore their dashboard data." />
</div>
);
}
// 用 CopilotKit 包裹应用
function App() {
return (
<CopilotKit runtimeUrl="/api/copilotkit">
<Dashboard />
</CopilotKit>
);
}
副驾驶模式是独特的:AI 是一个与现有 UI 交互的侧边栏助手,而不是从头生成新 UI。
优势
- 集成速度最快。 向现有 React 应用添加副驾驶侧边栏需要几小时,而不是几天。组件开箱即用。
- 适用于任何 React 设置。 Create React App、Vite、Remix、Next.js——CopilotKit 不需要 RSC 或特定的打包器。
- 自然的副驾驶模式。 协助现有 UI 的侧边栏 AI 是用户立即能理解的成熟模式。
- 内置状态同步。
useCopilotReadable和useCopilotAction在应用和 AI 之间创建了清晰的双向契约。 - 强大的默认 UI。
<CopilotChat>组件是生产质量的,无需构建自己的聊天界面即可定制。
弱点
- 客户端渲染模型。 CopilotKit 在客户端渲染 AI 输出。生成的组件没有 SSR,这影响面向公众内容的性能和 SEO。
- 副驾驶模式不是万能的。 如果你的用例不是"帮助使用主界面的侧边栏 AI 助手",CopilotKit 需要更多定制才能适配。
- 对渲染管道控制较少。 对于复杂的自定义组件生成,Vercel AI SDK 给你更多灵活性。
- Bundle 大小。 客户端渲染意味着组件库会发送到浏览器。对于性能敏感的应用,这需要关注。
何时选择 CopilotKit
你有一个现有的 React 应用,想快速添加 AI 驱动的功能。副驾驶模式——能读取和修改主界面的 AI 侧边栏——适合你的产品。你不想处理 RSC。
Thesys(json-render):通用首选
Thesys 于 2026 年 1 月推出,已拥有 13K GitHub stars,采取了最与框架无关的方式。AI 模型输出描述 UI 组件树的 JSON,渲染器将该 JSON 转换为可交互组件。
工作原理
AI 输出 JSON 而不是触发 React 工具调用。该 JSON 描述一个组件层次结构,Thesys 渲染器对其进行解释:
// AI 输出类似这样的内容:
const aiOutput = {
type: "layout",
direction: "grid",
columns: 2,
children: [
{
type: "MetricCard",
props: {
label: "Monthly Revenue",
value: "$84,200",
change: 12.4,
period: "vs last month"
}
},
{
type: "AlertBanner",
props: {
type: "info",
title: "New record",
message: "Best month in company history"
}
}
]
};
// 渲染器将其转换为 UI
import { render } from '@thesys/json-render';
const ui = render(aiOutput, componentRegistry);
JSON schema 是核心产物。它可以被记录、缓存、重播,并在任何有 Thesys 渲染器的平台上渲染。
优势
- 与框架无关。 同一个 JSON schema 可以在 React、Vue、Angular 或原生移动端渲染。一个 AI 响应,多个渲染器。
- 易于调试。 JSON 输出是可以在任何 JSON 查看器中检查的纯数据结构。调试"AI 为什么生成了这个"很简单直接。
- 可缓存。 按提示词哈希缓存,AI 响应无需推理成本即可复用。这比 RSC 流式传输更难实现。
- 历史可审查。 将生成的 UI 存储为 JSON 意味着你可以审计向用户展示了什么,重播任何交互。
- 更简单的心智模型。 JSON 进,UI 出。这个抽象很容易向非 React 开发者解释。
弱点
- 较新的项目。 Thesys 于 2026 年 1 月推出。比其他选项经过生产验证的程度要低。破坏性变更的可能性更高。
- JSON 抽象限制了交互性。 复杂的交互模式——带有校验逻辑的表单、实时数据、动画过渡——比在 React 代码中更难用 JSON schema 表达。
- 客户端渲染。 与 CopilotKit 一样,渲染在客户端进行。没有 SSR。
- 社区较小。 3 个月 13K stars 是令人印象深刻的增长,但社区规模只是 Vercel AI SDK 的一小部分。
何时选择 Thesys
你的项目使用多个前端框架或需要支持移动端客户端。你重视检查、缓存和重播生成 UI 的能力。你想要更简单的心智模型。你愿意成为早期采用者。
迁移注意事项
之后在框架之间切换并不是免费的,但比看起来要便宜。
可移植的部分:
- 你的组件库(纯 React,无框架依赖)
- 你的系统提示和工具描述
- 工具参数的 Zod schema
需要重写的部分:
- Server Action / API 端点结构
- 流式传输集成代码
- 客户端渲染设置
对于中等复杂度的功能,在框架之间迁移估计需要 2–5 天。组件库本身——通常是大部分投资——无需更改即可移植。
风险评估和失败模式
三个框架各有独特的风险特征。在 12–24 个月的视野内,这些失败模式值得提前考虑。
| 风险 | Vercel AI SDK | CopilotKit | Thesys json-render |
|---|---|---|---|
| 破坏性 API 变更 | 低(4.x 稳定) | 中(1.x 相对年轻) | 高(0.x,距 1.0 还远) |
| 项目废弃 | 低——Vercel 直接从中盈利 | 低——以产品为核心的专注公司 | 中——年轻项目,小团队 |
| 平台锁定 | 高(RSC + Next.js) | 中(任意 React) | 低(与框架无关) |
| 紧急迁移成本 | 2–4 周 | 1–2 周 | 1–3 周 |
| 招聘可用性 | 高(Next.js + RSC) | 中 | 低(专业人才池窄) |
"框架被废弃"的场景: 组件库 2–5 天就能移植;需要重写的是服务端层(流式传输或 JSON 端点)和客户端渲染器。如果组件从第一天起就没有硬性 SDK 特定导入,实际重建成本不超过每个生产功能一人周。
"模型更换"的场景: 三个框架都对提供商做了抽象,所以将 OpenAI 换成 Anthropic 或 Google 只需更改一个导入,再针对新模型的特性进行提示词调优。
工程经理的 TCO
为了并排对比总拥有成本,这里列出三个线项:上线时间、基础设施和一年维护。数字是单个中等复杂度生产功能(4–6 种组件类型,约 5 个服务端工具)的估算范围。
| 线项 | Vercel AI SDK | CopilotKit | Thesys json-render |
|---|---|---|---|
| 首个原型时间 | 3–5 天 | 0.5–2 天 | 1–3 天 |
| 生产就绪时间 | 2–4 周 | 1–2 周 | 2–3 周 |
| 基础设施成本(托管 + LLM API) | $50–500/月 | $50–500/月 | $50–500/月 |
| 托管选项(如使用) | Vercel Pro $20/月/席 | CopilotKit Cloud:免费套餐 | Thesys Cloud:早期访问 |
| 年度维护/修 bug 成本 | 低–中(成熟生态系统) | 低(窄接触面) | 中(年轻 API) |
| 年化紧急迁移风险 | $5,000–20,000(2–4 周工程师时间) | $5,000–10,000(1–2 周) | $5,000–15,000(1–3 周) |
2–5 名工程师团队的采用路线图:
- 第 1–2 周。 一名工程师在选定框架上构建试点功能。目标:端到端完成一个真实用户用例。
- 第 3–4 周。 第二名工程师加入组件库;设计 token 和 AI 可调用组件列表正式化。
- 第 2 个月。 仪器和可观测性——LLM 调用追踪、产物记录(RSC 流或 JSON)、token 预算。
- 第 3 个月。 扩展到 2–3 个功能;团队培训系统提示和 Zod schema。
如果实验预算是一个季度,选 CopilotKit——到达可测量结果最快。对于长期的 Next.js 产品,Vercel AI SDK 的较长上手期会得到回报。Thesys 只有在多平台输出是原始需求时才是正确选择。
上手指南:独立开发者版
如果你是独立开发,重要的是快速出第一个可用演示和可预测的 LLM 推理成本——而不是架构纯粹性。
Vercel AI SDK——一个周末发布。
npx create-next-app@latest my-genui-app --typescript --app— 需要 App Router。npm install ai @ai-sdk/openai zod。- 从官方文档复制
streamUI示例,将演示工具换成你自己的。 - 部署到 Vercel——
vercel deploy;免费套餐覆盖约 10 万请求/月。 - 预算: $0 托管 + $5–50/月 OpenAI 或 Anthropic(副业项目)。
CopilotKit——一个晚上发布。
- 安装到现有 React 应用:
npm install @copilotkit/react-core @copilotkit/react-ui。 - 用
<CopilotKit>包裹根组件,搭建/api/copilotkit端点。 - 将
<CopilotChat>放入布局,通过useCopilotAction定义 1–2 个动作。 - 预算: $0 托管(Vercel/Netlify 免费套餐)+ $5–30/月 LLM 提供商;CopilotKit Cloud 有适合原型的免费套餐。
Thesys json-render——一天发布。
npm install @thesys/json-render加上你选择的前端技术栈。- 定义 componentRegistry——AI 允许调用的 UI 组件列表。
- 服务端端点接受用户请求,返回符合 Thesys schema 的 JSON;客户端通过
render()传递。 - 预算: $0 托管 + $5–50/月 LLM。预期会有破坏性变更——严格锁定包版本。
通用建议: 不要提前承诺生产框架。构建三个最简原型,每个花一个晚上——然后从亲身感受的痛点做决策,而不是从一张表格。
推荐矩阵
从头开始新的 Next.js 应用: Vercel AI SDK。纯 Next.js 构建毫无悬念。
为现有 React 应用添加 AI: CopilotKit。集成用例价值实现最快。
多框架或非 React 技术栈: Thesys。与框架无关需求的唯一实际选项。
未决定,想开始探索: Vercel AI SDK。最大的社区意味着最多的示例和最多你问题的答案。
押注 AI 界面的未来: 关注三者。这个空间变化很快,今天的赢家可能不是 18 个月后的赢家。
还有一个值得直说的原则:不要在早期过度投入框架选择。你构建的组件才是有价值的、持久的产物。框架是管道。构建出色的组件,保持它们不含框架特定代码,如果需要你可以用一周时间切换框架。
相关阅读:
- 2026 年第二季度 Generative UI 现状:14 个框架,4 个类别 — 更广泛的行业调查
- 什么是 Generative UI — 底层机制
- Vercel AI SDK + Vue + SSE on Cloudflare — Next.js 之外的实用配方
- 生产中的结构化输出与 Zod — 三个框架共享的模式
- 工具使用:生产模式 — 服务端工具层
正在使用其中一个框架,需要指导?预约咨询——我在三个框架上都有生产经验。
Alex
Generative UI Engineer & Consultant
专注于 AI 界面与 Generative UI 系统的资深工程师。帮助产品团队用正确的 GenUI 技术栈更快交付。
相关文章
CopilotKit vs Vercel AI SDK vs Thesys: Σύγκριση Frameworks
Μια ειλικρινής σύγκριση των τριών κύριων frameworks Generative UI, με πλεονεκτήματα, μειονεκτήματα και πότε να χρησιμοποιείτε το καθένα.
Κατασκευάζοντας το Πρώτο σας Generative UI με το Vercel AI SDK
Βήμα-βήμα οδηγός για τη δημιουργία της πρώτης σας AI-powered διεπαφής με streaming συστατικά.
Προσβασιμότητα σε Generative UI: Δημιουργία Συμπεριληπτικών AI Διεπαφών
Πρακτικός οδηγός για προσβάσιμα γεννητικά interfaces — screen readers, πλοήγηση με πληκτρολόγιο και συνδυαστικά προβλήματα προσβασιμότητας.
掌握 Generative UI 前沿动态
每周文章、框架更新与实用实现指南——直达你的邮箱。
需要帮助实现你刚读到的内容?
预约免费咨询