Skip to content

安装与前置条件

私有 npm 访问

两个包都以 restricted(受限) 形式发布在 npm 的 @optimalai scope 下, dist-tag 为 beta。它们不是公开包,目前也没有 latest tag。

  1. 让 OptimalAI 把你的 npm 用户名加入 sdk-beta-readers 团队。该团队仅有 @optimalai/react-native@optimalai/model-tools 的只读权限,别无其他。
  2. 自行创建一个 granular(细粒度)只读 token。每个客户用自己的 token,切勿共用。
  3. 复制 .npmrc.example.npmrc。文件里只能出现变量引用,绝不能写死 token:
ini
@optimalai:registry=https://registry.npmjs.org/
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
  1. 本地通过环境变量提供 token;CI 与 EAS Build 中以名为 NPM_TOKEN 的 secret 注入:
bash
export NPM_TOKEN="your-read-only-token"

绝不提交 token

.npmrc 引用的是 ${NPM_TOKEN},因此文件本身可以安全提交。token 只应存在于 你的 shell 环境、CI secret 存储或 EAS secret 中。

平台基线

要求最低版本
Expo SDK57
React Native0.86(新架构)
iOS16.4
AndroidAPI 24
Xcode26.4

不支持旧架构(Old Architecture)。

安装这两个包

bash
npx expo install @optimalai/react-native@beta
npx @optimalai/model-tools@beta add kokoro-82m-v1.1-zh-int8

@optimalai/react-native 是你的 App 链接的运行时库。@optimalai/model-tools 是开发期 CLI —— 它不会进入你的 bundle,但它生成你 App 要 import 的 optimalai-models.ts

只能用 Development Build

本 SDK 含原生代码(ONNX Runtime)。Expo Go 内置的原生模块集合是固定的,无法加载 它,因此你必须构建 Development Build:

bash
npx expo run:ios
# 或
npx expo run:android

只要改动了原生依赖,就要重新构建。仅做 JS 热重载是不够的。

桌面冒烟测试

在真机之前,可以在 SDK 仓库里跑 pnpm model:smoke,用桌面版 ONNX Runtime 做一次 基本正确性检查。它不能替代真机验收测试。

下一步