expo-ai-kit 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
On-device AI for Expo apps. Run language models locally—no API keys, no cloud, just native intelligence.
|
|
4
4
|
|
|
5
|
+
**Now with Gemma 4 support** — Download and run Google's [Gemma 4](https://blog.google/innovation-and-ai/technology/developers-tools/gemma-4/) E2B (2.3B) and E4B (4.5B) models directly on Android devices via [LiteRT-LM](https://ai.google.dev/edge/litert-lm). Full on-device inference with GPU acceleration, streaming, and zero cloud dependency.
|
|
6
|
+
|
|
5
7
|
[](https://www.npmjs.com/package/expo-ai-kit)
|
|
6
8
|
[](https://opensource.org/licenses/MIT)
|
|
7
9
|
|
|
@@ -35,7 +37,8 @@ On-device AI for Expo apps. Run language models locally—no API keys, no cloud,
|
|
|
35
37
|
- **Privacy-first** — All inference happens on-device; no data leaves the user's device
|
|
36
38
|
- **Zero latency** — No network round-trips required
|
|
37
39
|
- **Free forever** — No API costs, rate limits, or subscriptions
|
|
38
|
-
- **
|
|
40
|
+
- **Gemma 4 on-device** — Download and run Gemma 4 E2B/E4B models directly on Android with GPU acceleration
|
|
41
|
+
- **Native performance** — Built on Apple Foundation Models (iOS), ML Kit (Android), and LiteRT-LM (Gemma 4)
|
|
39
42
|
- **Multi-turn conversations** — Full conversation context support
|
|
40
43
|
- **Streaming support** — Progressive token streaming for responsive UIs
|
|
41
44
|
- **Simple API** — Core functions plus prompt helpers for common tasks
|
package/android/build.gradle
CHANGED
|
@@ -208,7 +208,7 @@ class ExpoAiKitModule : Module() {
|
|
|
208
208
|
activeModelId
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
-
AsyncFunction("unloadModel") Coroutine {
|
|
211
|
+
AsyncFunction("unloadModel") Coroutine { ->
|
|
212
212
|
if (activeModelId != "mlkit" && gemmaClient.isModelLoaded()) {
|
|
213
213
|
val previousId = activeModelId
|
|
214
214
|
gemmaClient.unloadModel()
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-ai-kit",
|
|
3
|
-
"version": "0.3.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.3.2",
|
|
4
|
+
"description": "On-device AI for Expo apps — run Gemma 4, Apple Foundation Models, and ML Kit locally with zero API keys",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
7
7
|
"files": [
|
|
@@ -31,6 +31,14 @@
|
|
|
31
31
|
"keywords": [
|
|
32
32
|
"react-native",
|
|
33
33
|
"expo",
|
|
34
|
+
"gemma",
|
|
35
|
+
"gemma-4",
|
|
36
|
+
"on-device-ai",
|
|
37
|
+
"llm",
|
|
38
|
+
"litert",
|
|
39
|
+
"apple-foundation-models",
|
|
40
|
+
"ml-kit",
|
|
41
|
+
"local-inference",
|
|
34
42
|
"expo-ai-kit",
|
|
35
43
|
"ExpoAiKit"
|
|
36
44
|
],
|