callstackincubator/ai
On-device LLM execution in React Native with Vercel AI SDK compatibility
解决的问题
React Native AI 解决了直接在移动设备上运行 AI 模型而无需将数据发送到服务器的问题。这不仅保护了用户隐私,降低了延迟,还避免了服务器成本。它还使 React Native 开发者能够轻松地将熟悉的 AI SDK 函数(如 generateText 和 streamText)与本地模型结合使用。
工作原理
该项目为 React Native 提供了一套端侧 AI 原语,并包含多个处理不同硬件和模型类型的提供程序。一些提供程序(Apple、Google ADK)使用内置系统模型,因此无需下载。其他提供程序(Llama、MLC)则需要下载模型文件。所有提供程序都公开了一个与 Vercel AI SDK 兼容的通用接口,因此开发者可以编写适用于本地或云端模型的代码。为了方便调试,它包含一个 DevTools 插件,可以捕获 AI SDK 遥测数据并将其显示在 Rozenite DevTools 中。
适用人群
该项目适用于希望在移动应用中添加文本生成、嵌入、转录、语音合成或图像生成等 AI 功能,同时保持数据在设备上处理的 React Native 开发者。它也适用于那些希望将 Vercel AI SDK 与本地模型结合使用,或者需要在上下文受限的移动设备上运行大语言模型的开发者。该项目支持 iOS 和 Android,并为每个平台提供了特定的提供程序。
亮点
- 即刻使用 – Apple 和 Google ADK 提供程序无需下载模型;它们使用设备内置的系统模型。
- 隐私优先 – 所有推理默认在设备上运行,云模型仅在选择性加入时使用(仅限 Google ADK)。
- 兼容 Vercel AI SDK – 使用标准的 AI SDK 函数(如
generateText、streamText、embed和transcribe)与本地模型配合使用。 - 多种提供程序 – 可选择 Apple Foundation Models、Core AI bundles、Google ADK (Gemini Nano)、通过 llama.rn 运行的 Llama 或 MLC LLM。
- 超越文本 – 支持嵌入、转录、语音合成和图像生成(Core AI)。
- JSON UI –
@react-native-ai/json-ui包允许工具调用模型动态构建 React Native UI。 - DevTools 集成 – AI SDK Profiler 在 Rozenite DevTools 中显示 AI 调用的遥测数据。
相关
- 项目
- 项目
- 项目
- 项目