项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1789
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- 一个可正常运行的 React Native 工程(README 未给出创建命令)
- Node.js 与 npm 环境
- 已配置好的 iOS/Android 原生开发环境
安装与启动步骤
-
1准备 RN 工程
先准备一个能跑起来的 React Native 项目,README 只提供安装与用法的 Quickstart,未给创建工程的命令。
-
2安装依赖库
在项目根目录安装 react-native-executorch 及其必需的 peer 依赖 worklets 与 blob-util。
npm install react-native-executorch react-native-worklets react-native-blob-util -
3编写模型调用代码
用 useLLMChatSession 加载默认 LLM 模型,通过 sendMessage 发送提示词并逐 token 回调打印结果。
import { Button, View } from 'react-native'; import { models, useLLMChatSession } from 'react-native-executorch'; export function App() { const session = useLLMChatSession(models.llm.LFM2_5_1_2B.DEFAULT); const handleGenerate = async () => { if (!session.isReady || !session.sendMessage) return; const turn = await session.sendMessage( 'Explain on-device AI in one sentence.', (token) => console.log(token) ); console.log('Result messages:', turn.messages); }; return ( <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}> <Button title={session.isReady ? 'Generate' : `Loading (${session.downloadProgress.toFixed(0)}%)`} onPress={handleGenerate} disabled={!session.isReady} /> </View> ); } -
4运行应用
启动 App 后模型会自动下载并缓存,下载完成后按钮变为 Generate,点击即可在端侧推理。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
models.llm.LFM2_5_1_2B.DEFAULT | 是 | 指定要加载的默认 LLM 模型,传给 useLLMChatSession 使用。 | models.llm.LFM2_5_1_2B.DEFAULT |
session.isReady | 是 | 模型是否加载完成,未就绪时不能调用 sendMessage。 | true |
session.downloadProgress | 否 | 模型下载进度百分比,可用于展示 Loading 状态。 | 0 |
如何确认成功
session.isReady 变为 true、按钮显示 Generate,点击后控制台逐 token 打印输出并返回 messages。
常见问题
Q:首次运行按钮一直显示 Loading?
A:模型需要从网络下载并缓存,下载期间按钮显示下载进度百分比,网络较慢时等待时间会更长。
Q:点击按钮没有反应?
A:代码里做了保护:只有 session.isReady 为 true 且 session.sendMessage 存在时才会执行推理。
Q:只支持文本生成吗?
A:README 的 Quickstart 只演示了 LLM 文本生成,图像分类、检测、OCR、分割等任务请查阅官方文档。
注意事项
- README 只提供了 npm 安装命令,未提及 pod install 等额外原生依赖步骤。
- 必须同时安装 react-native-worklets 与 react-native-blob-util 这两个 peer 依赖。
- 示例使用 models 中的默认 LLM 配置,切换其它模型需参考官方文档。
核心亮点
- 声明式 API 封装,JS 开发者无需写原生代码即可部署模型
- 基于 ExecuTorch,支持 LLM、视觉、OCR 等多种模型类型
- 内置模型下载与缓存管理,开箱即用体验好
不足之处
- 项目较新,API 稳定性与版本迭代风险需关注
- 文档覆盖场景有限,复杂自定义模型集成需深入源码
适用场景
- 在 React Native 应用中集成离线文本生成(如聊天机器人)
- 移动端实时图像分类或目标检测,无需联网
- 构建隐私敏感型 AI 应用,数据不出设备
替代项目
react-native-tensorflow-lite、react-native-onnxruntime、react-native-mlkit
同类项目推荐
codex-profiles
开源
一键切换 Codex CLI 账号配置,多环境开发不折腾。
Save, list, and switch Codex CLI accounts fast.
RAGLight
开源
模块化 RAG 框架,轻松接入 MCP 工具,快速构建检索增强应用。
RAGLight is a modular framework for Retrieval-Augmented Generation (RAG). It makes i···
svelte-markdown
开源
在 Svelte 5 中安全渲染 AI 流式 Markdown,开箱即用。
Markdown and HTML renderer for Svelte 5 — built for streaming AI agent output from ···
ai-fusion-kit
开源
快速搭建生产级 AI 聊天应用,省去重复造轮子。
A feature-rich, highly customizable AI Web App Template, empowered by Next.js.
fastapi-template
开源
开箱即用的 FastAPI 项目骨架,快速搭建生产级 API。
Completely Scalable FastAPI based template for Machine Learning, Deep Learning and a···
flow
开源
让 Claude 记住你的项目,告别每次从零开始
Turn isolated Claude sessions into a continuous working relationship
langstruct
开源
一句话让 LLM 把任意内容变成干净 JSON 数据
Extract structured data from any content using LLMs.
dspy-skills
开源
用 DSPy 技能包,系统化构建和优化你的 LLM 应用。
Collection of Claude Skills for DSPy framework - program language models, optimize p···
stability-sdk
开源
几行代码调用 Stable Diffusion,快速集成图像生成能力。
SDK for interacting with stability.ai APIs (e.g. stable diffusion inference)
