Vercel AI SDK 是由 Vercel 官方推出的 TypeScript AI 开发工具包,旨在帮助开发者快速构建 AI 驱动的应用程序和智能代理。它支持 Next.js、React、Svelte、Vue、Angular 等主流 UI 框架,以及 Node.js 等服务端运行时环境。背靠 Vercel 强大的技术生态,AI SDK 为开发者提供了统一、简洁的接口来对接各种大语言模型(LLM)提供商。
截至目前,Vercel AI SDK 在 GitHub 上已获得超过 23,000 颗星,稳居 TypeScript AI 开发工具热门榜单前列。它最大的特点是将原本分散在不同 SDK(OpenAI SDK、Anthropic SDK、Google SDK 等)中的能力统一封装,开发者无需关心底层细节,一个 API 调用即可完成多模型切换。
■ 核心特色
1. 统一 Provider 架构
只需安装 AI SDK,无需分别安装各模型提供商的 SDK。通过统一的 generateText / streamText 等函数,结合模型字符串(如 ‘gpt-4’、’claude-3-opus’),即可调用任意支持的模型。Vercel AI Gateway 会自动处理路由、负载和缓存。
2. 完整的流式输出支持
内置对流式响应的完整支持,开发者可以轻松实现打字机效果的对话体验。streamText 返回的结果可直接在 React 组件中消费,无需额外处理流解析逻辑。
3. 丰富的内置工具(Tools)支持
支持 Define Step 风格的工具调用(类似 OpenAI 的 function calling),让 AI 能够主动调用外部 API、数据库查询、文件操作等。开发者只需声明工具定义,SDK 自动处理调用逻辑。
4. 多框架适配
官方提供 @ai-sdk/react、@ai-sdk/svelte、@ai-sdk/vue 等适配包,零配置集成到各框架中,保留框架原有的渲染特性(SSR、SSG 等)。
5. RAG 与记忆(Memory)支持
内置对话历史管理、向量存储(Vector Store)接口,可快速搭建 RAG(检索增强生成)应用。
■ 安装步骤
第一步:确保本地环境安装了 Node.js 18+,然后在项目目录下执行安装命令:
npm install ai
第二步(可选):为特定框架安装适配包,例如 React 项目:
npm install @ai-sdk/react
第三步:配置模型 API Key(以 OpenAI 为例):
export OPENAI_API_KEY=your-key-here
■ 基础使用示例
以下是基于 Next.js App Router 的最简单示例,演示如何用几行代码实现 AI 对话:
import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
export async function POST(req: Request) {
const { messages } = await req.json();
const { text } = await generateText({
model: openai('gpt-4-turbo'),
system: '你是一个专业、友好的AI助手。',
messages,
});
return Response.json({ text });
}
流式输出示例:
import { streamText } from 'ai';
const result = await streamText({
model: openai('gpt-4-turbo'),
prompt: '用一句话介绍人工智能的发展历史',
});
return result.toDataStreamResponse();
在 React 组件中消费流式响应:
import { useChat } from '@ai-sdk/react';
export function Chat() {
const { messages, input, handleInputChange, submit } = useChat({
api: '/api/chat',
});
return (
<div>
{messages.map(m => (
<div key={m.id}>{m.role}: {m.content}</div>
))}
<input value={input} onChange={handleInputChange} onSubmit={submit} />
</div>
);
}
■ 工具调用(Tools)示例
让 AI 调用自定义函数的完整示例:
import { generateText, tool } from 'ai';
import { z } from 'zod';
import { openai } from '@ai-sdk/openai';
const result = await generateText({
model: openai('gpt-4-turbo'),
prompt: '北京现在的天气怎么样?',
tools: {
getWeather: tool({
description: '获取指定城市的天气信息',
parameters: z.object({
city: z.string().describe('城市名称'),
}),
execute: async ({ city }) => {
return { city, weather: '晴天', temperature: 22 };
},
}),
},
});
console.log(result.toolResults);
// { toolName: 'getWeather', args: { city: '北京' }, result: { city: '北京', weather: '晴天', temperature: 22 } }
■ 适用场景
- 构建 AI 聊天机器人和虚拟助手
- 开发带 AI 能力的 SaaS 应用(如 AI 写作助手、代码生成工具)
- 企业内部知识库问答系统(RAG)
- AI 驱动的数据分析平台
- 跨多模型的统一接入层(通过 Vercel AI Gateway)
■ 开源协议
Vercel AI SDK 采用 Apache-2.0 开源协议,可免费商用,源码完全开放。
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。








暂无评论内容