用途:AI Elements 是构建在 shadcn/ui 之上的组件库与自定义注册表,用于更快速地构建 AI 原生应用,内置对话、消息、工具展示、提示输入等预构建组件。
主要能力:通过 AI Elements CLI 或标准 shadcn/ui CLI 安装组件,CLI 会下载所选组件代码与依赖并集成到项目目录(默认 @/components/ai-elements/)。组件以源码形式加入代码库,可像普通 React 组件一样导入使用,也可直接修改样式(Tailwind CSS)与逻辑,无需额外设置。组件尽量接受原生属性,便于扩展。
必要用法:前置条件为 Node.js 18 及以上、已安装 AI SDK 的 Next.js 项目,以及 shadcn/ui(运行安装命令会自动安装)。CLI 需使用项目包管理器运行:npx ai-elements@latest、pnpm dlx ai-elements@latest 或 bunx --bun ai-elements@latest。官方建议使用 AI Gateway 并在 env.local 添加 AI_GATEWAY_API_KEY,AI Gateway 每月提供 5 美元用量供试验模型,密钥获取地址见资料中的链接。
使用方式:安装后按 React 组件方式导入,例如从 @/components/ai-elements/message 引入 Message、MessageContent、MessageResponse,配合 @ai-sdk/react 的 useChat 渲染消息。组件样式与脚本已集成,可直接在应用中使用。
限制与注意:需确保项目已正确配置 shadcn/ui 与 Tailwind 4,globals.css 需导入 Tailwind 并包含 shadcn/ui 基础样式;主题切换需使用 shadcn/ui 与 AI Elements 期望的 data-theme 系统,并在 tailwind 配置中使用 class 或 data- 选择器;导入报 module not found 时检查文件与 tsconfig.json 的 @/ 路径别名;CLI 未添加文件时检查工作目录、components.json 与 CLI 版本;AI 编码助手无法访问组件时检查配置文件语法、路径并重启助手。各组件详细文档见参考资料中的 references/ 目录。