SuperAPI AI 工具集

ai-sdk-core-v7

编程与开发

查看项目

更新于 10-15 17:27

技能介绍

用途:面向使用 Vercel AI SDK v7(ai 包)构建后端 AI 的场景,不覆盖 React 聊天 UI(另见 ai-sdk-ui)。假设 Node.js 22+、ESM,输入 schema 使用 Zod 4;目录结构跟随 package.json 中安装的 ai 包版本,而非技能文件修订号。

主要能力与用法:请求处理器和一次性 API 路由使用 generateText / streamText,系统风格提示写入 instructions。请求处理器中的工具循环在 generateText / streamText 上用 stopWhen: isStepCount(n),不要用 maxSteps 或 stepCountIs。持久化智能体使用 ToolLoopAgent 配合 generate() / stream(),不要手写循环,也不要 new Agent()。UI 流使用 createUIMessageStreamResponse 与 toUIMessageStream({ stream: result.stream })(来自 'ai');result.toUIMessageStreamResponse() 在 v7 仍可用但已弃用,仅在任务与流或 SDK 无关时保留。工具结果必须可 JSON 序列化(不能含 Date)。

强制要求:写调用前先读随包文档,不要凭记忆写 AI SDK;grep node_modules/ai/docs/ 与 node_modules/ai/src/ 确认已安装版本,否则查 https://ai-sdk.dev/docs(可附加 .md)或 https://ai-sdk.dev/api/search-docs?q=。客户端发送 UI 消息时用 convertToModelMessages。拒绝不可信的 { role: 'system' },客户端聊天不要设置 allowSystemInMessages: true。

应避免:toDataStreamResponse / pipeDataStreamToResponse;stepCountIs / maxSteps / result.fullStream / 顶层 system:(改用 isStepCount、result.stream、instructions);猜测模型 ID。

适用场景:实现 AI SDK v7 或排查 AI 报错。与其他技能互补:ai-sdk-ui、fastify、next;上游为 vercel/ai use-ai-sdk。模板包括 generate-text-basic.ts、stream-text-chat.ts、agent-with-tools.ts。限制:未提供收费、价格与具体平台要求等信息。