什么是 Vercel AI SDK?
了解 Vercel AI SDK 如何通过统一 API 对接不同 LLM 提供商,从而简化 AI 应用开发。
本页目录
构建 AI 驱动应用时,经常会遇到一个问题。
假设你使用 OpenAI 作为 LLM 提供商。
你编写了全部代码,用来调用 OpenAI API。
但有一天你可能会想:“为什么不改用 Anthropic 试试?”
问题在于:Anthropic API 略有不同。
流式输出、结构化输出和工具调用等能力尤其如此。
因此,仅仅为了尝试新模型,就需要额外编写大量胶水代码。
AI SDK 可以解决这个问题。
它是一个可调用的库,负责处理你与 LLM 之间的交互。
现在可以改为调用 AI SDK。它只是一个库,却能无缝处理与不同提供商的通信。
此外,它还为常见场景提供了许多实用辅助函数。
它可以帮助你流式传输文本、处理结构化输出、调用工具,甚至无缝处理智能体。
需要把 AI SDK 部署到 Vercel 吗?
AI SDK 由 Vercel 维护,但使用 AI SDK 并不要求你使用 Vercel。
不需要向 Vercel 支付任何费用,它是免费的开源软件。
想继续深入: 加入“面向真正工程师的 AI 编码”候补名单
AI SDK 有哪些组成部分?
AI SDK 由三个部分组成。
AI SDK Core 用于后端,可以运行在 Node、Deno、Bun 等环境中。
还有 AI SDK UI,它提供一组前端 Hook 和组件,用来连接 AI SDK 后端。
另有 AI SDK RSC 框架,用于配合 React Server Components 构建应用。
可以用 AI SDK 构建什么?
当应用需要与 LLM 通信,并完成比返回一段普通文本更结构化的工作时,AI SDK 很有用。
常见构建模块包括:
- 把文本流式传回 UI
- 请求结构化输出
- 让模型调用工具
- 不重写整个应用,在模型提供商之间切换
- 构建模型可以执行多步操作的智能体式流程
因此,AI SDK 很适合聊天界面、编码工具、工作流助手、文档工具和内部智能体。
如果想超越概览,可以通过 AI SDK v6 速成课 在一个可运行的应用中逐步学习这些组成部分。
本教程会讲什么?
本教程只会讲解 AI SDK Core。
它会补充基础知识,为构建几乎任何应用打好基础。
如何安装?
它可能拥有史上最出色的 NPM 包之一: ai:
pnpm add ai
所有核心内容都位于 ai 包中:
import {generateText,streamText,generateObject,streamObject,} from "ai";
安装不同提供商的专用包,就能接入相应提供商。
例如,OpenAI:
pnpm add @ai-sdk/openai
然后就可以这样使用:
import { openai } from "@ai-sdk/openai";const model = openai("gpt-4");
总结
这就是整体情况。
你会获得一个统一 API,可以随时替换模型。
可以流式传输文本、生成文本、处理结构化输出、调用工具并构建智能体循环。
让我们从最基础的文本生成开始。下一课见!