1 篇文章带有标签 “provider-abstraction”

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 结构