Vercel AI SDK 架构设计分析
1. 项目概述
Vercel AI SDK 是一个与提供商无关的 TypeScript 工具包,旨在帮助开发者使用流行的 UI 框架(如 Next.js、React、Svelte、Vue、Angular)和运行时(如 Node.js)构建 AI 驱动的应用程序和智能体。
核心特性
- 统一提供商架构:支持 OpenAI、Anthropic、Google 等多个模型提供商
- 多框架支持:React、Svelte、Vue、Angular
- 多种模型类型:文本生成、嵌入、图像、语音、转录、重排等
- 智能体框架:ToolLoopAgent 等工具循环代理
- 流式输出:支持实时流式响应
2. 整体架构
graph TB
User[用户应用] --> UI[UI 框架集成<br/>React/Svelte/Vue/Angular]
User --> Core[核心 AI 函数<br/>generateText/streamText]
UI --> Core
Core --> ModelInterface[模型接口层<br/>LanguageModelV4/EmbeddingModelV4]
Core --> Agent[智能体层<br/>ToolLoopAgent]
ModelInterface --> Providers[提供商实现层]
Agent --> Providers
Providers --> OpenAI[OpenAI]
Providers --> Anthropic[Anthropic]
Providers --> Google[Google]
Providers --> Others[其他 50+ 提供商]
OpenAI --> APIGateway[Vercel AI Gateway<br/>统一 API 入口]
Anthropic --> APIGateway
Google --> APIGateway
3. 项目结构
Monorepo 结构