react-native-nitro-mlx 0.2.2 → 0.4.0
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/MLXReactNative.podspec +7 -1
- package/ios/Sources/AudioCaptureManager.swift +110 -0
- package/ios/Sources/HybridLLM.swift +518 -42
- package/ios/Sources/HybridSTT.swift +202 -0
- package/ios/Sources/HybridTTS.swift +145 -0
- package/ios/Sources/JSONHelpers.swift +9 -0
- package/ios/Sources/ModelDownloader.swift +26 -12
- package/ios/Sources/StreamEventEmitter.swift +132 -0
- package/ios/Sources/ThinkingStateMachine.swift +206 -0
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/llm.js +72 -4
- package/lib/module/llm.js.map +1 -1
- package/lib/module/models.js +97 -26
- package/lib/module/models.js.map +1 -1
- package/lib/module/specs/STT.nitro.js +4 -0
- package/lib/module/specs/STT.nitro.js.map +1 -0
- package/lib/module/specs/TTS.nitro.js +4 -0
- package/lib/module/specs/TTS.nitro.js.map +1 -0
- package/lib/module/stt.js +49 -0
- package/lib/module/stt.js.map +1 -0
- package/lib/module/tool-utils.js +56 -0
- package/lib/module/tool-utils.js.map +1 -0
- package/lib/module/tts.js +40 -0
- package/lib/module/tts.js.map +1 -0
- package/lib/typescript/src/index.d.ts +8 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/llm.d.ts +46 -4
- package/lib/typescript/src/llm.d.ts.map +1 -1
- package/lib/typescript/src/models.d.ts +13 -4
- package/lib/typescript/src/models.d.ts.map +1 -1
- package/lib/typescript/src/specs/LLM.nitro.d.ts +79 -7
- package/lib/typescript/src/specs/LLM.nitro.d.ts.map +1 -1
- package/lib/typescript/src/specs/STT.nitro.d.ts +28 -0
- package/lib/typescript/src/specs/STT.nitro.d.ts.map +1 -0
- package/lib/typescript/src/specs/TTS.nitro.d.ts +22 -0
- package/lib/typescript/src/specs/TTS.nitro.d.ts.map +1 -0
- package/lib/typescript/src/stt.d.ts +16 -0
- package/lib/typescript/src/stt.d.ts.map +1 -0
- package/lib/typescript/src/tool-utils.d.ts +13 -0
- package/lib/typescript/src/tool-utils.d.ts.map +1 -0
- package/lib/typescript/src/tts.d.ts +13 -0
- package/lib/typescript/src/tts.d.ts.map +1 -0
- package/nitrogen/generated/ios/MLXReactNative+autolinking.rb +1 -1
- package/nitrogen/generated/ios/MLXReactNative-Swift-Cxx-Bridge.cpp +76 -1
- package/nitrogen/generated/ios/MLXReactNative-Swift-Cxx-Bridge.hpp +338 -1
- package/nitrogen/generated/ios/MLXReactNative-Swift-Cxx-Umbrella.hpp +28 -1
- package/nitrogen/generated/ios/MLXReactNativeAutolinking.mm +17 -1
- package/nitrogen/generated/ios/MLXReactNativeAutolinking.swift +31 -1
- package/nitrogen/generated/ios/c++/HybridLLMSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridLLMSpecSwift.hpp +18 -3
- package/nitrogen/generated/ios/c++/HybridModelManagerSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridModelManagerSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/c++/HybridSTTSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridSTTSpecSwift.hpp +149 -0
- package/nitrogen/generated/ios/c++/HybridTTSSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridTTSSpecSwift.hpp +128 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__shared_ptr_AnyMap______std__shared_ptr_AnyMap_.swift +62 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_double.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_AnyMap_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_ArrayBuffer_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_Promise_std__shared_ptr_AnyMap___.swift +67 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__string_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_std__string_.swift +1 -1
- package/nitrogen/generated/ios/swift/GenerationStats.swift +14 -3
- package/nitrogen/generated/ios/swift/HybridLLMSpec.swift +3 -2
- package/nitrogen/generated/ios/swift/HybridLLMSpec_cxx.swift +38 -2
- package/nitrogen/generated/ios/swift/HybridModelManagerSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridModelManagerSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridSTTSpec.swift +66 -0
- package/nitrogen/generated/ios/swift/HybridSTTSpec_cxx.swift +286 -0
- package/nitrogen/generated/ios/swift/HybridTTSSpec.swift +63 -0
- package/nitrogen/generated/ios/swift/HybridTTSSpec_cxx.swift +229 -0
- package/nitrogen/generated/ios/swift/LLMLoadOptions.swift +44 -2
- package/nitrogen/generated/ios/swift/LLMMessage.swift +1 -1
- package/nitrogen/generated/ios/swift/STTLoadOptions.swift +66 -0
- package/nitrogen/generated/ios/swift/TTSGenerateOptions.swift +78 -0
- package/nitrogen/generated/ios/swift/TTSLoadOptions.swift +66 -0
- package/nitrogen/generated/ios/swift/ToolDefinition.swift +113 -0
- package/nitrogen/generated/ios/swift/ToolParameter.swift +69 -0
- package/nitrogen/generated/shared/c++/GenerationStats.hpp +7 -3
- package/nitrogen/generated/shared/c++/HybridLLMSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridLLMSpec.hpp +3 -2
- package/nitrogen/generated/shared/c++/HybridModelManagerSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridModelManagerSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridSTTSpec.cpp +32 -0
- package/nitrogen/generated/shared/c++/HybridSTTSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridTTSSpec.cpp +29 -0
- package/nitrogen/generated/shared/c++/HybridTTSSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/LLMLoadOptions.hpp +10 -3
- package/nitrogen/generated/shared/c++/LLMMessage.hpp +1 -1
- package/nitrogen/generated/shared/c++/STTLoadOptions.hpp +76 -0
- package/nitrogen/generated/shared/c++/TTSGenerateOptions.hpp +80 -0
- package/nitrogen/generated/shared/c++/TTSLoadOptions.hpp +76 -0
- package/nitrogen/generated/shared/c++/ToolDefinition.hpp +93 -0
- package/nitrogen/generated/shared/c++/ToolParameter.hpp +87 -0
- package/package.json +13 -8
- package/src/index.ts +40 -3
- package/src/llm.ts +90 -5
- package/src/models.ts +81 -1
- package/src/specs/LLM.nitro.ts +111 -7
- package/src/specs/STT.nitro.ts +35 -0
- package/src/specs/TTS.nitro.ts +30 -0
- package/src/stt.ts +67 -0
- package/src/tool-utils.ts +74 -0
- package/src/tts.ts +60 -0
package/lib/module/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ModelFamily","ModelProvider","MLXModel","MLXModels","id","Llama_3_2_1B_Instruct_4bit","family","Llama","provider","Meta","parameters","quantization","displayName","downloadSize","Llama_3_2_1B_Instruct_8bit","Llama_3_2_3B_Instruct_4bit","Llama_3_2_3B_Instruct_8bit","Qwen2_5_0_5B_Instruct_4bit","Qwen","Alibaba","Qwen2_5_0_5B_Instruct_8bit","Qwen2_5_1_5B_Instruct_4bit","Qwen2_5_1_5B_Instruct_8bit","Qwen2_5_3B_Instruct_4bit","Qwen2_5_3B_Instruct_8bit","Qwen3_1_7B_4bit","Qwen3_1_7B_8bit","Gemma_3_1B_IT_4bit","Gemma","Google","Gemma_3_1B_IT_8bit","Phi_3_5_Mini_Instruct_4bit","Phi","Microsoft","Phi_3_5_Mini_Instruct_8bit","Phi_4_Mini_Instruct_4bit","Phi_4_Mini_Instruct_8bit","SmolLM_1_7B_Instruct_4bit","SmolLM","HuggingFace","SmolLM_1_7B_Instruct_8bit","SmolLM2_1_7B_Instruct_4bit","SmolLM2_1_7B_Instruct_8bit","OpenELM_1_1B_4bit","OpenELM","Apple","OpenELM_1_1B_8bit","OpenELM_3B_4bit","OpenELM_3B_8bit"],"sourceRoot":"../../src","sources":["models.ts"],"mappings":";;AAAA,WAAYA,WAAW,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;
|
|
1
|
+
{"version":3,"names":["ModelFamily","ModelProvider","MLXModel","MLXModels","id","Llama_3_2_1B_Instruct_4bit","family","Llama","provider","Meta","parameters","quantization","displayName","downloadSize","type","Llama_3_2_1B_Instruct_8bit","Llama_3_2_3B_Instruct_4bit","Llama_3_2_3B_Instruct_8bit","Qwen2_5_0_5B_Instruct_4bit","Qwen","Alibaba","Qwen2_5_0_5B_Instruct_8bit","Qwen2_5_1_5B_Instruct_4bit","Qwen2_5_1_5B_Instruct_8bit","Qwen2_5_3B_Instruct_4bit","Qwen2_5_3B_Instruct_8bit","Qwen3_1_7B_4bit","Qwen3_1_7B_8bit","Gemma_3_1B_IT_4bit","Gemma","Google","Gemma_3_1B_IT_8bit","Phi_3_5_Mini_Instruct_4bit","Phi","Microsoft","Phi_3_5_Mini_Instruct_8bit","Phi_4_Mini_Instruct_4bit","Phi_4_Mini_Instruct_8bit","SmolLM_1_7B_Instruct_4bit","SmolLM","HuggingFace","SmolLM_1_7B_Instruct_8bit","SmolLM2_1_7B_Instruct_4bit","SmolLM2_1_7B_Instruct_8bit","OpenELM_1_1B_4bit","OpenELM","Apple","OpenELM_1_1B_8bit","OpenELM_3B_4bit","OpenELM_3B_8bit","PocketTTS","Kyutai","PocketTTS_8bit","PocketTTS_4bit","GLM_ASR_Nano_4bit","GLMASR"],"sourceRoot":"../../src","sources":["models.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/STT.nitro.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/TTS.nitro.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { NitroModules } from 'react-native-nitro-modules';
|
|
4
|
+
let instance = null;
|
|
5
|
+
function getInstance() {
|
|
6
|
+
if (!instance) {
|
|
7
|
+
instance = NitroModules.createHybridObject('STT');
|
|
8
|
+
}
|
|
9
|
+
return instance;
|
|
10
|
+
}
|
|
11
|
+
export const STT = {
|
|
12
|
+
load(modelId, options) {
|
|
13
|
+
return getInstance().load(modelId, options);
|
|
14
|
+
},
|
|
15
|
+
transcribe(audio) {
|
|
16
|
+
return getInstance().transcribe(audio);
|
|
17
|
+
},
|
|
18
|
+
transcribeStream(audio, onToken) {
|
|
19
|
+
return getInstance().transcribeStream(audio, onToken);
|
|
20
|
+
},
|
|
21
|
+
startListening() {
|
|
22
|
+
return getInstance().startListening();
|
|
23
|
+
},
|
|
24
|
+
transcribeBuffer() {
|
|
25
|
+
return getInstance().transcribeBuffer();
|
|
26
|
+
},
|
|
27
|
+
stopListening() {
|
|
28
|
+
return getInstance().stopListening();
|
|
29
|
+
},
|
|
30
|
+
stop() {
|
|
31
|
+
getInstance().stop();
|
|
32
|
+
},
|
|
33
|
+
unload() {
|
|
34
|
+
getInstance().unload();
|
|
35
|
+
},
|
|
36
|
+
get isLoaded() {
|
|
37
|
+
return getInstance().isLoaded;
|
|
38
|
+
},
|
|
39
|
+
get isTranscribing() {
|
|
40
|
+
return getInstance().isTranscribing;
|
|
41
|
+
},
|
|
42
|
+
get isListening() {
|
|
43
|
+
return getInstance().isListening;
|
|
44
|
+
},
|
|
45
|
+
get modelId() {
|
|
46
|
+
return getInstance().modelId;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=stt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NitroModules","instance","getInstance","createHybridObject","STT","load","modelId","options","transcribe","audio","transcribeStream","onToken","startListening","transcribeBuffer","stopListening","stop","unload","isLoaded","isTranscribing","isListening"],"sourceRoot":"../../src","sources":["stt.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAMzD,IAAIC,QAAwB,GAAG,IAAI;AAEnC,SAASC,WAAWA,CAAA,EAAY;EAC9B,IAAI,CAACD,QAAQ,EAAE;IACbA,QAAQ,GAAGD,YAAY,CAACG,kBAAkB,CAAU,KAAK,CAAC;EAC5D;EACA,OAAOF,QAAQ;AACjB;AAEA,OAAO,MAAMG,GAAG,GAAG;EACjBC,IAAIA,CAACC,OAAe,EAAEC,OAAwB,EAAiB;IAC7D,OAAOL,WAAW,CAAC,CAAC,CAACG,IAAI,CAACC,OAAO,EAAEC,OAAO,CAAC;EAC7C,CAAC;EAEDC,UAAUA,CAACC,KAAkB,EAAmB;IAC9C,OAAOP,WAAW,CAAC,CAAC,CAACM,UAAU,CAACC,KAAK,CAAC;EACxC,CAAC;EAEDC,gBAAgBA,CACdD,KAAkB,EAClBE,OAAgC,EACf;IACjB,OAAOT,WAAW,CAAC,CAAC,CAACQ,gBAAgB,CAACD,KAAK,EAAEE,OAAO,CAAC;EACvD,CAAC;EAEDC,cAAcA,CAAA,EAAkB;IAC9B,OAAOV,WAAW,CAAC,CAAC,CAACU,cAAc,CAAC,CAAC;EACvC,CAAC;EAEDC,gBAAgBA,CAAA,EAAoB;IAClC,OAAOX,WAAW,CAAC,CAAC,CAACW,gBAAgB,CAAC,CAAC;EACzC,CAAC;EAEDC,aAAaA,CAAA,EAAoB;IAC/B,OAAOZ,WAAW,CAAC,CAAC,CAACY,aAAa,CAAC,CAAC;EACtC,CAAC;EAEDC,IAAIA,CAAA,EAAS;IACXb,WAAW,CAAC,CAAC,CAACa,IAAI,CAAC,CAAC;EACtB,CAAC;EAEDC,MAAMA,CAAA,EAAS;IACbd,WAAW,CAAC,CAAC,CAACc,MAAM,CAAC,CAAC;EACxB,CAAC;EAED,IAAIC,QAAQA,CAAA,EAAY;IACtB,OAAOf,WAAW,CAAC,CAAC,CAACe,QAAQ;EAC/B,CAAC;EAED,IAAIC,cAAcA,CAAA,EAAY;IAC5B,OAAOhB,WAAW,CAAC,CAAC,CAACgB,cAAc;EACrC,CAAC;EAED,IAAIC,WAAWA,CAAA,EAAY;IACzB,OAAOjB,WAAW,CAAC,CAAC,CAACiB,WAAW;EAClC,CAAC;EAED,IAAIb,OAAOA,CAAA,EAAW;IACpB,OAAOJ,WAAW,CAAC,CAAC,CAACI,OAAO;EAC9B;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function getZodTypeString(zodType) {
|
|
4
|
+
const typeName = zodType._zod.def.type;
|
|
5
|
+
switch (typeName) {
|
|
6
|
+
case 'string':
|
|
7
|
+
return 'string';
|
|
8
|
+
case 'number':
|
|
9
|
+
case 'int':
|
|
10
|
+
return 'number';
|
|
11
|
+
case 'boolean':
|
|
12
|
+
return 'boolean';
|
|
13
|
+
case 'array':
|
|
14
|
+
return 'array';
|
|
15
|
+
case 'object':
|
|
16
|
+
return 'object';
|
|
17
|
+
case 'optional':
|
|
18
|
+
return getZodTypeString(zodType._zod.def.innerType);
|
|
19
|
+
case 'default':
|
|
20
|
+
return getZodTypeString(zodType._zod.def.innerType);
|
|
21
|
+
default:
|
|
22
|
+
return 'string';
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function isZodOptional(zodType) {
|
|
26
|
+
const typeName = zodType._zod.def.type;
|
|
27
|
+
return typeName === 'optional' || typeName === 'default';
|
|
28
|
+
}
|
|
29
|
+
function zodSchemaToParameters(schema) {
|
|
30
|
+
const shape = schema._zod.def.shape;
|
|
31
|
+
const parameters = [];
|
|
32
|
+
for (const [key, zodType] of Object.entries(shape)) {
|
|
33
|
+
const zType = zodType;
|
|
34
|
+
parameters.push({
|
|
35
|
+
name: key,
|
|
36
|
+
type: getZodTypeString(zType),
|
|
37
|
+
description: zType.description ?? '',
|
|
38
|
+
required: !isZodOptional(zType)
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return parameters;
|
|
42
|
+
}
|
|
43
|
+
export function createTool(definition) {
|
|
44
|
+
return {
|
|
45
|
+
name: definition.name,
|
|
46
|
+
description: definition.description,
|
|
47
|
+
parameters: zodSchemaToParameters(definition.arguments),
|
|
48
|
+
handler: async args => {
|
|
49
|
+
const argsObj = args;
|
|
50
|
+
const parsedArgs = definition.arguments.parse(argsObj);
|
|
51
|
+
const result = await definition.handler(parsedArgs);
|
|
52
|
+
return result;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=tool-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getZodTypeString","zodType","typeName","_zod","def","type","innerType","isZodOptional","zodSchemaToParameters","schema","shape","parameters","key","Object","entries","zType","push","name","description","required","createTool","definition","arguments","handler","args","argsObj","parsedArgs","parse","result"],"sourceRoot":"../../src","sources":["tool-utils.ts"],"mappings":";;AAcA,SAASA,gBAAgBA,CAACC,OAAkB,EAAqB;EAC/D,MAAMC,QAAQ,GAAGD,OAAO,CAACE,IAAI,CAACC,GAAG,CAACC,IAAI;EACtC,QAAQH,QAAQ;IACd,KAAK,QAAQ;MACX,OAAO,QAAQ;IACjB,KAAK,QAAQ;IACb,KAAK,KAAK;MACR,OAAO,QAAQ;IACjB,KAAK,SAAS;MACZ,OAAO,SAAS;IAClB,KAAK,OAAO;MACV,OAAO,OAAO;IAChB,KAAK,QAAQ;MACX,OAAO,QAAQ;IACjB,KAAK,UAAU;MACb,OAAOF,gBAAgB,CAAEC,OAAO,CAA8BE,IAAI,CAACC,GAAG,CAACE,SAAS,CAAC;IACnF,KAAK,SAAS;MACZ,OAAON,gBAAgB,CAAEC,OAAO,CAA6BE,IAAI,CAACC,GAAG,CAACE,SAAS,CAAC;IAClF;MACE,OAAO,QAAQ;EACnB;AACF;AAEA,SAASC,aAAaA,CAACN,OAAkB,EAAW;EAClD,MAAMC,QAAQ,GAAGD,OAAO,CAACE,IAAI,CAACC,GAAG,CAACC,IAAI;EACtC,OAAOH,QAAQ,KAAK,UAAU,IAAIA,QAAQ,KAAK,SAAS;AAC1D;AAEA,SAASM,qBAAqBA,CAACC,MAAuB,EAAmB;EACvE,MAAMC,KAAK,GAAGD,MAAM,CAACN,IAAI,CAACC,GAAG,CAACM,KAAK;EACnC,MAAMC,UAA2B,GAAG,EAAE;EAEtC,KAAK,MAAM,CAACC,GAAG,EAAEX,OAAO,CAAC,IAAIY,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IAClD,MAAMK,KAAK,GAAGd,OAAoB;IAClCU,UAAU,CAACK,IAAI,CAAC;MACdC,IAAI,EAAEL,GAAG;MACTP,IAAI,EAAEL,gBAAgB,CAACe,KAAK,CAAC;MAC7BG,WAAW,EAAEH,KAAK,CAACG,WAAW,IAAI,EAAE;MACpCC,QAAQ,EAAE,CAACZ,aAAa,CAACQ,KAAK;IAChC,CAAC,CAAC;EACJ;EAEA,OAAOJ,UAAU;AACnB;AAEA,OAAO,SAASS,UAAUA,CACxBC,UAAqC,EACrB;EAChB,OAAO;IACLJ,IAAI,EAAEI,UAAU,CAACJ,IAAI;IACrBC,WAAW,EAAEG,UAAU,CAACH,WAAW;IACnCP,UAAU,EAAEH,qBAAqB,CAACa,UAAU,CAACC,SAAS,CAAC;IACvDC,OAAO,EAAE,MAAOC,IAAY,IAAK;MAC/B,MAAMC,OAAO,GAAGD,IAA0C;MAC1D,MAAME,UAAU,GAAGL,UAAU,CAACC,SAAS,CAACK,KAAK,CAACF,OAAO,CAAC;MACtD,MAAMG,MAAM,GAAG,MAAMP,UAAU,CAACE,OAAO,CAACG,UAAU,CAAC;MACnD,OAAOE,MAAM;IACf;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { NitroModules } from 'react-native-nitro-modules';
|
|
4
|
+
let instance = null;
|
|
5
|
+
function getInstance() {
|
|
6
|
+
if (!instance) {
|
|
7
|
+
instance = NitroModules.createHybridObject('TTS');
|
|
8
|
+
}
|
|
9
|
+
return instance;
|
|
10
|
+
}
|
|
11
|
+
export const TTS = {
|
|
12
|
+
load(modelId, options) {
|
|
13
|
+
return getInstance().load(modelId, options);
|
|
14
|
+
},
|
|
15
|
+
generate(text, options) {
|
|
16
|
+
return getInstance().generate(text, options);
|
|
17
|
+
},
|
|
18
|
+
stream(text, onAudioChunk, options) {
|
|
19
|
+
return getInstance().stream(text, onAudioChunk, options);
|
|
20
|
+
},
|
|
21
|
+
stop() {
|
|
22
|
+
getInstance().stop();
|
|
23
|
+
},
|
|
24
|
+
unload() {
|
|
25
|
+
getInstance().unload();
|
|
26
|
+
},
|
|
27
|
+
get isLoaded() {
|
|
28
|
+
return getInstance().isLoaded;
|
|
29
|
+
},
|
|
30
|
+
get isGenerating() {
|
|
31
|
+
return getInstance().isGenerating;
|
|
32
|
+
},
|
|
33
|
+
get modelId() {
|
|
34
|
+
return getInstance().modelId;
|
|
35
|
+
},
|
|
36
|
+
get sampleRate() {
|
|
37
|
+
return getInstance().sampleRate;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=tts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NitroModules","instance","getInstance","createHybridObject","TTS","load","modelId","options","generate","text","stream","onAudioChunk","stop","unload","isLoaded","isGenerating","sampleRate"],"sourceRoot":"../../src","sources":["tts.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAOzD,IAAIC,QAAwB,GAAG,IAAI;AAEnC,SAASC,WAAWA,CAAA,EAAY;EAC9B,IAAI,CAACD,QAAQ,EAAE;IACbA,QAAQ,GAAGD,YAAY,CAACG,kBAAkB,CAAU,KAAK,CAAC;EAC5D;EACA,OAAOF,QAAQ;AACjB;AAEA,OAAO,MAAMG,GAAG,GAAG;EACjBC,IAAIA,CAACC,OAAe,EAAEC,OAAwB,EAAiB;IAC7D,OAAOL,WAAW,CAAC,CAAC,CAACG,IAAI,CAACC,OAAO,EAAEC,OAAO,CAAC;EAC7C,CAAC;EAEDC,QAAQA,CACNC,IAAY,EACZF,OAA4B,EACN;IACtB,OAAOL,WAAW,CAAC,CAAC,CAACM,QAAQ,CAACC,IAAI,EAAEF,OAAO,CAAC;EAC9C,CAAC;EAEDG,MAAMA,CACJD,IAAY,EACZE,YAA0C,EAC1CJ,OAA4B,EACb;IACf,OAAOL,WAAW,CAAC,CAAC,CAACQ,MAAM,CAACD,IAAI,EAAEE,YAAY,EAAEJ,OAAO,CAAC;EAC1D,CAAC;EAEDK,IAAIA,CAAA,EAAS;IACXV,WAAW,CAAC,CAAC,CAACU,IAAI,CAAC,CAAC;EACtB,CAAC;EAEDC,MAAMA,CAAA,EAAS;IACbX,WAAW,CAAC,CAAC,CAACW,MAAM,CAAC,CAAC;EACxB,CAAC;EAED,IAAIC,QAAQA,CAAA,EAAY;IACtB,OAAOZ,WAAW,CAAC,CAAC,CAACY,QAAQ;EAC/B,CAAC;EAED,IAAIC,YAAYA,CAAA,EAAY;IAC1B,OAAOb,WAAW,CAAC,CAAC,CAACa,YAAY;EACnC,CAAC;EAED,IAAIT,OAAOA,CAAA,EAAW;IACpB,OAAOJ,WAAW,CAAC,CAAC,CAACI,OAAO;EAC9B,CAAC;EAED,IAAIU,UAAUA,CAAA,EAAW;IACvB,OAAOd,WAAW,CAAC,CAAC,CAACc,UAAU;EACjC;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
export { LLM, type Message } from './llm';
|
|
1
|
+
export { LLM, type EventCallback, type Message, type ToolCallInfo, type ToolCallUpdate, } from './llm';
|
|
2
2
|
export { ModelManager } from './modelManager';
|
|
3
|
-
export { MLXModel, MLXModels, ModelFamily, type ModelInfo, ModelProvider, type ModelQuantization, } from './models';
|
|
4
|
-
export type { GenerationStats, LLM as LLMSpec, LLMLoadOptions } from './specs/LLM.nitro';
|
|
3
|
+
export { MLXModel, MLXModels, ModelFamily, type ModelInfo, ModelProvider, type ModelQuantization, type ModelType, } from './models';
|
|
4
|
+
export type { GenerationStats, LLM as LLMSpec, LLMLoadOptions, StreamEvent, GenerationStartEvent, TokenEvent, ThinkingStartEvent, ThinkingChunkEvent, ThinkingEndEvent, ToolCallStartEvent, ToolCallExecutingEvent, ToolCallCompletedEvent, ToolCallFailedEvent, GenerationEndEvent, ToolDefinition, ToolParameter, ToolParameterType, } from './specs/LLM.nitro';
|
|
5
5
|
export type { ModelManager as ModelManagerSpec } from './specs/ModelManager.nitro';
|
|
6
|
+
export { createTool, type TypeSafeToolDefinition } from './tool-utils';
|
|
7
|
+
export { TTS } from './tts';
|
|
8
|
+
export type { TTS as TTSSpec, TTSLoadOptions, TTSGenerateOptions, } from './specs/TTS.nitro';
|
|
9
|
+
export { STT } from './stt';
|
|
10
|
+
export type { STT as STTSpec, STTLoadOptions, STTTranscriptionInfo, } from './specs/STT.nitro';
|
|
6
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,KAAK,SAAS,EACd,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,SAAS,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EACV,eAAe,EACf,GAAG,IAAI,OAAO,EACd,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAClF,OAAO,EAAE,UAAU,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,YAAY,EACV,GAAG,IAAI,OAAO,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,YAAY,EACV,GAAG,IAAI,OAAO,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,mBAAmB,CAAA"}
|
|
@@ -1,8 +1,17 @@
|
|
|
1
|
-
import type { GenerationStats, LLMLoadOptions } from './specs/LLM.nitro';
|
|
1
|
+
import type { GenerationStats, LLMLoadOptions, StreamEvent } from './specs/LLM.nitro';
|
|
2
|
+
export type EventCallback = (event: StreamEvent) => void;
|
|
2
3
|
export type Message = {
|
|
3
4
|
role: 'user' | 'assistant' | 'system';
|
|
4
5
|
content: string;
|
|
5
6
|
};
|
|
7
|
+
export type ToolCallInfo = {
|
|
8
|
+
name: string;
|
|
9
|
+
arguments: Record<string, unknown>;
|
|
10
|
+
};
|
|
11
|
+
export type ToolCallUpdate = {
|
|
12
|
+
toolCall: ToolCallInfo;
|
|
13
|
+
allToolCalls: ToolCallInfo[];
|
|
14
|
+
};
|
|
6
15
|
/**
|
|
7
16
|
* LLM text generation using MLX on Apple Silicon.
|
|
8
17
|
*
|
|
@@ -40,12 +49,45 @@ export declare const LLM: {
|
|
|
40
49
|
*/
|
|
41
50
|
generate(prompt: string): Promise<string>;
|
|
42
51
|
/**
|
|
43
|
-
* Stream a response token by token.
|
|
52
|
+
* Stream a response token by token with optional tool calling support.
|
|
53
|
+
* Tools must be provided when loading the model via `load()` options.
|
|
54
|
+
* Tools are automatically executed when the model calls them.
|
|
44
55
|
* @param prompt - The input text to generate a response for
|
|
45
56
|
* @param onToken - Callback invoked for each generated token
|
|
57
|
+
* @param onToolCall - Optional callback invoked when a tool is called.
|
|
58
|
+
* Receives the current tool call and an accumulated array of all tool calls so far.
|
|
46
59
|
* @returns The complete generated text
|
|
47
60
|
*/
|
|
48
|
-
stream(prompt: string, onToken: (token: string) => void): Promise<string>;
|
|
61
|
+
stream(prompt: string, onToken: (token: string) => void, onToolCall?: (update: ToolCallUpdate) => void): Promise<string>;
|
|
62
|
+
/**
|
|
63
|
+
* Stream with typed events for thinking blocks and tool calls.
|
|
64
|
+
* Provides granular lifecycle events for UI updates.
|
|
65
|
+
*
|
|
66
|
+
* @param prompt - The input text
|
|
67
|
+
* @param onEvent - Callback receiving typed StreamEvent objects
|
|
68
|
+
* @returns Promise resolving to final content string (thinking content stripped)
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```ts
|
|
72
|
+
* await LLM.streamWithEvents(prompt, (event) => {
|
|
73
|
+
* switch (event.type) {
|
|
74
|
+
* case 'token':
|
|
75
|
+
* appendToContent(event.token)
|
|
76
|
+
* break
|
|
77
|
+
* case 'thinking_start':
|
|
78
|
+
* showThinkingIndicator()
|
|
79
|
+
* break
|
|
80
|
+
* case 'thinking_chunk':
|
|
81
|
+
* appendToThinking(event.chunk)
|
|
82
|
+
* break
|
|
83
|
+
* case 'tool_call_start':
|
|
84
|
+
* showToolCallCard(event.name, event.arguments)
|
|
85
|
+
* break
|
|
86
|
+
* }
|
|
87
|
+
* })
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
streamWithEvents(prompt: string, onEvent: EventCallback): Promise<string>;
|
|
49
91
|
/**
|
|
50
92
|
* Stop the current generation. Safe to call even if not generating.
|
|
51
93
|
*/
|
|
@@ -57,7 +99,7 @@ export declare const LLM: {
|
|
|
57
99
|
unload(): void;
|
|
58
100
|
/**
|
|
59
101
|
* Get statistics from the last generation.
|
|
60
|
-
* @returns Statistics including token count, tokens/sec, TTFT, and
|
|
102
|
+
* @returns Statistics including token count, tokens/sec (excluding tool execution), TTFT, total time, and tool execution time
|
|
61
103
|
*/
|
|
62
104
|
getLastGenerationStats(): GenerationStats;
|
|
63
105
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../../src/llm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../../src/llm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;AAIxD,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,YAAY,CAAA;IACtB,YAAY,EAAE,YAAY,EAAE,CAAA;CAC7B,CAAA;AASD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,GAAG;IACd;;;;OAIG;kBACW,MAAM,WAAW,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D;;;;;OAKG;qBACc,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIzC;;;;;;;;;OASG;mBAEO,MAAM,WACL,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,eACnB,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GAC5C,OAAO,CAAC,MAAM,CAAC;IAyBlB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;6BACsB,MAAM,WAAW,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAWzE;;OAEG;YACK,IAAI;IAIZ;;;OAGG;cACO,IAAI;IAId;;;OAGG;8BACuB,eAAe;IAIzC;;;OAGG;kBACW,OAAO,EAAE;IAIvB;;OAEG;oBACa,IAAI;IAIpB,mEAAmE;uBACnD,OAAO;IAIvB,gDAAgD;2BAC5B,OAAO;IAI3B,oEAAoE;sBACrD,MAAM;IAIrB,sCAAsC;WACzB,OAAO;IAQpB;;;;OAIG;kBACiB,MAAM;CAO3B,CAAA"}
|
|
@@ -4,7 +4,9 @@ export declare enum ModelFamily {
|
|
|
4
4
|
Gemma = "Gemma",
|
|
5
5
|
Phi = "Phi",
|
|
6
6
|
SmolLM = "SmolLM",
|
|
7
|
-
OpenELM = "OpenELM"
|
|
7
|
+
OpenELM = "OpenELM",
|
|
8
|
+
PocketTTS = "PocketTTS",
|
|
9
|
+
GLMASR = "GLMASR"
|
|
8
10
|
}
|
|
9
11
|
export declare enum ModelProvider {
|
|
10
12
|
Meta = "Meta",
|
|
@@ -12,9 +14,11 @@ export declare enum ModelProvider {
|
|
|
12
14
|
Google = "Google",
|
|
13
15
|
Microsoft = "Microsoft",
|
|
14
16
|
HuggingFace = "HuggingFace",
|
|
15
|
-
Apple = "Apple"
|
|
17
|
+
Apple = "Apple",
|
|
18
|
+
Kyutai = "Kyutai"
|
|
16
19
|
}
|
|
17
|
-
export type ModelQuantization = '4bit' | '8bit';
|
|
20
|
+
export type ModelQuantization = '4bit' | '8bit' | 'bf16';
|
|
21
|
+
export type ModelType = 'llm' | 'tts' | 'stt';
|
|
18
22
|
export interface ModelInfo {
|
|
19
23
|
id: MLXModel;
|
|
20
24
|
family: ModelFamily;
|
|
@@ -23,6 +27,7 @@ export interface ModelInfo {
|
|
|
23
27
|
quantization: ModelQuantization;
|
|
24
28
|
displayName: string;
|
|
25
29
|
downloadSize: number;
|
|
30
|
+
type: ModelType;
|
|
26
31
|
}
|
|
27
32
|
export declare enum MLXModel {
|
|
28
33
|
Llama_3_2_1B_Instruct_4bit = "mlx-community/Llama-3.2-1B-Instruct-4bit",
|
|
@@ -50,7 +55,11 @@ export declare enum MLXModel {
|
|
|
50
55
|
OpenELM_1_1B_4bit = "mlx-community/OpenELM-1_1B-4bit",
|
|
51
56
|
OpenELM_1_1B_8bit = "mlx-community/OpenELM-1_1B-8bit",
|
|
52
57
|
OpenELM_3B_4bit = "mlx-community/OpenELM-3B-4bit",
|
|
53
|
-
OpenELM_3B_8bit = "mlx-community/OpenELM-3B-8bit"
|
|
58
|
+
OpenELM_3B_8bit = "mlx-community/OpenELM-3B-8bit",
|
|
59
|
+
PocketTTS = "mlx-community/pocket-tts",
|
|
60
|
+
PocketTTS_8bit = "mlx-community/pocket-tts-8bit",
|
|
61
|
+
PocketTTS_4bit = "mlx-community/pocket-tts-4bit",
|
|
62
|
+
GLM_ASR_Nano_4bit = "mlx-community/GLM-ASR-Nano-2512-4bit"
|
|
54
63
|
}
|
|
55
64
|
export declare const MLXModels: ModelInfo[];
|
|
56
65
|
//# sourceMappingURL=models.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/models.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/models.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,WAAW;CAClB;AAED,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAExD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAE7C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,QAAQ,CAAA;IACZ,MAAM,EAAE,WAAW,CAAA;IACnB,QAAQ,EAAE,aAAa,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,iBAAiB,CAAA;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,SAAS,CAAA;CAChB;AAED,oBAAY,QAAQ;IAElB,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IAGvE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IACvE,wBAAwB,2CAA2C;IACnE,wBAAwB,2CAA2C;IAGnE,eAAe,kCAAkC;IACjD,eAAe,kCAAkC;IAGjD,kBAAkB,qCAAqC;IACvD,kBAAkB,qCAAqC;IAGvD,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IAGvE,wBAAwB,2CAA2C;IACnE,wBAAwB,2CAA2C;IAGnE,yBAAyB,4CAA4C;IACrE,yBAAyB,4CAA4C;IAGrE,0BAA0B,6CAA6C;IACvE,0BAA0B,6CAA6C;IAGvE,iBAAiB,oCAAoC;IACrD,iBAAiB,oCAAoC;IACrD,eAAe,kCAAkC;IACjD,eAAe,kCAAkC;IAGjD,SAAS,6BAA6B;IACtC,cAAc,kCAAkC;IAChD,cAAc,kCAAkC;IAGhD,iBAAiB,yCAAyC;CAC3D;AAED,eAAO,MAAM,SAAS,EAAE,SAAS,EA6ShC,CAAA"}
|
|
@@ -1,21 +1,83 @@
|
|
|
1
|
-
import type { HybridObject } from 'react-native-nitro-modules';
|
|
1
|
+
import type { AnyMap, HybridObject } from 'react-native-nitro-modules';
|
|
2
2
|
/**
|
|
3
3
|
* Statistics from the last text generation.
|
|
4
4
|
*/
|
|
5
5
|
export interface GenerationStats {
|
|
6
|
-
/** Total number of tokens generated */
|
|
7
6
|
tokenCount: number;
|
|
8
|
-
/** Generation speed in tokens per second */
|
|
9
7
|
tokensPerSecond: number;
|
|
10
|
-
/** Time in milliseconds until the first token was generated */
|
|
11
8
|
timeToFirstToken: number;
|
|
12
|
-
/** Total generation time in milliseconds */
|
|
13
9
|
totalTime: number;
|
|
10
|
+
toolExecutionTime: number;
|
|
14
11
|
}
|
|
12
|
+
export interface GenerationStartEvent {
|
|
13
|
+
type: 'generation_start';
|
|
14
|
+
timestamp: number;
|
|
15
|
+
}
|
|
16
|
+
export interface TokenEvent {
|
|
17
|
+
type: 'token';
|
|
18
|
+
token: string;
|
|
19
|
+
}
|
|
20
|
+
export interface ThinkingStartEvent {
|
|
21
|
+
type: 'thinking_start';
|
|
22
|
+
timestamp: number;
|
|
23
|
+
}
|
|
24
|
+
export interface ThinkingChunkEvent {
|
|
25
|
+
type: 'thinking_chunk';
|
|
26
|
+
chunk: string;
|
|
27
|
+
}
|
|
28
|
+
export interface ThinkingEndEvent {
|
|
29
|
+
type: 'thinking_end';
|
|
30
|
+
content: string;
|
|
31
|
+
timestamp: number;
|
|
32
|
+
}
|
|
33
|
+
export interface ToolCallStartEvent {
|
|
34
|
+
type: 'tool_call_start';
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
arguments: string;
|
|
38
|
+
}
|
|
39
|
+
export interface ToolCallExecutingEvent {
|
|
40
|
+
type: 'tool_call_executing';
|
|
41
|
+
id: string;
|
|
42
|
+
}
|
|
43
|
+
export interface ToolCallCompletedEvent {
|
|
44
|
+
type: 'tool_call_completed';
|
|
45
|
+
id: string;
|
|
46
|
+
result: string;
|
|
47
|
+
}
|
|
48
|
+
export interface ToolCallFailedEvent {
|
|
49
|
+
type: 'tool_call_failed';
|
|
50
|
+
id: string;
|
|
51
|
+
error: string;
|
|
52
|
+
}
|
|
53
|
+
export interface GenerationEndEvent {
|
|
54
|
+
type: 'generation_end';
|
|
55
|
+
content: string;
|
|
56
|
+
stats: GenerationStats;
|
|
57
|
+
}
|
|
58
|
+
export type StreamEvent = GenerationStartEvent | TokenEvent | ThinkingStartEvent | ThinkingChunkEvent | ThinkingEndEvent | ToolCallStartEvent | ToolCallExecutingEvent | ToolCallCompletedEvent | ToolCallFailedEvent | GenerationEndEvent;
|
|
15
59
|
export interface LLMMessage {
|
|
16
60
|
role: string;
|
|
17
61
|
content: string;
|
|
18
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Parameter definition for a tool.
|
|
65
|
+
*/
|
|
66
|
+
export interface ToolParameter {
|
|
67
|
+
name: string;
|
|
68
|
+
type: string;
|
|
69
|
+
description: string;
|
|
70
|
+
required: boolean;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Tool definition that can be called by the model.
|
|
74
|
+
*/
|
|
75
|
+
export interface ToolDefinition {
|
|
76
|
+
name: string;
|
|
77
|
+
description: string;
|
|
78
|
+
parameters: ToolParameter[];
|
|
79
|
+
handler: (args: AnyMap) => Promise<AnyMap>;
|
|
80
|
+
}
|
|
19
81
|
/** Options for loading a model.
|
|
20
82
|
*/
|
|
21
83
|
export interface LLMLoadOptions {
|
|
@@ -25,6 +87,8 @@ export interface LLMLoadOptions {
|
|
|
25
87
|
additionalContext?: LLMMessage[];
|
|
26
88
|
/** Whether to automatically manage message history */
|
|
27
89
|
manageHistory?: boolean;
|
|
90
|
+
/** Tools available for the model to call */
|
|
91
|
+
tools?: ToolDefinition[];
|
|
28
92
|
}
|
|
29
93
|
/**
|
|
30
94
|
* Low-level LLM interface for text generation using MLX.
|
|
@@ -46,12 +110,15 @@ export interface LLM extends HybridObject<{
|
|
|
46
110
|
*/
|
|
47
111
|
generate(prompt: string): Promise<string>;
|
|
48
112
|
/**
|
|
49
|
-
* Stream a response token by token.
|
|
113
|
+
* Stream a response token by token with optional tool calling support.
|
|
114
|
+
* Tools are automatically executed when the model calls them.
|
|
50
115
|
* @param prompt - The input text to generate a response for
|
|
51
116
|
* @param onToken - Callback invoked for each generated token
|
|
117
|
+
* @param onToolCall - Optional callback invoked when a tool is called (for UI feedback)
|
|
52
118
|
* @returns The complete generated text
|
|
53
119
|
*/
|
|
54
|
-
stream(prompt: string, onToken: (token: string) => void): Promise<string>;
|
|
120
|
+
stream(prompt: string, onToken: (token: string) => void, onToolCall?: (toolName: string, args: string) => void): Promise<string>;
|
|
121
|
+
streamWithEvents(prompt: string, onEvent: (eventJson: string) => void): Promise<string>;
|
|
55
122
|
/**
|
|
56
123
|
* Stop the current generation.
|
|
57
124
|
*/
|
|
@@ -85,4 +152,9 @@ export interface LLM extends HybridObject<{
|
|
|
85
152
|
/** System prompt used when loading the model */
|
|
86
153
|
systemPrompt: string;
|
|
87
154
|
}
|
|
155
|
+
/**
|
|
156
|
+
* Supported parameter types for tool definitions.
|
|
157
|
+
* Used for type safety in createTool().
|
|
158
|
+
*/
|
|
159
|
+
export type ToolParameterType = 'string' | 'number' | 'boolean' | 'array' | 'object';
|
|
88
160
|
//# sourceMappingURL=LLM.nitro.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LLM.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/LLM.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"LLM.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/LLM.nitro.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { HybridObject } from 'react-native-nitro-modules';
|
|
2
|
+
export interface STTLoadOptions {
|
|
3
|
+
onProgress?: (progress: number) => void;
|
|
4
|
+
}
|
|
5
|
+
export interface STTTranscriptionInfo {
|
|
6
|
+
promptTokens: number;
|
|
7
|
+
generationTokens: number;
|
|
8
|
+
tokensPerSecond: number;
|
|
9
|
+
prefillTime: number;
|
|
10
|
+
generateTime: number;
|
|
11
|
+
}
|
|
12
|
+
export interface STT extends HybridObject<{
|
|
13
|
+
ios: 'swift';
|
|
14
|
+
}> {
|
|
15
|
+
readonly isLoaded: boolean;
|
|
16
|
+
readonly isTranscribing: boolean;
|
|
17
|
+
readonly isListening: boolean;
|
|
18
|
+
readonly modelId: string;
|
|
19
|
+
load(modelId: string, options?: STTLoadOptions): Promise<void>;
|
|
20
|
+
transcribe(audio: ArrayBuffer): Promise<string>;
|
|
21
|
+
transcribeStream(audio: ArrayBuffer, onToken: (token: string) => void): Promise<string>;
|
|
22
|
+
startListening(): Promise<void>;
|
|
23
|
+
transcribeBuffer(): Promise<string>;
|
|
24
|
+
stopListening(): Promise<string>;
|
|
25
|
+
stop(): void;
|
|
26
|
+
unload(): void;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=STT.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STT.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/STT.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,GAAI,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;IACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAExB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9D,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/C,gBAAgB,CACd,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,CAAA;IAElB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IACnC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAEhC,IAAI,IAAI,IAAI,CAAA;IACZ,MAAM,IAAI,IAAI,CAAA;CACf"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { HybridObject } from 'react-native-nitro-modules';
|
|
2
|
+
export interface TTSLoadOptions {
|
|
3
|
+
onProgress?: (progress: number) => void;
|
|
4
|
+
}
|
|
5
|
+
export interface TTSGenerateOptions {
|
|
6
|
+
voice?: string;
|
|
7
|
+
speed?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface TTS extends HybridObject<{
|
|
10
|
+
ios: 'swift';
|
|
11
|
+
}> {
|
|
12
|
+
readonly isLoaded: boolean;
|
|
13
|
+
readonly isGenerating: boolean;
|
|
14
|
+
readonly modelId: string;
|
|
15
|
+
readonly sampleRate: number;
|
|
16
|
+
load(modelId: string, options?: TTSLoadOptions): Promise<void>;
|
|
17
|
+
generate(text: string, options?: TTSGenerateOptions): Promise<ArrayBuffer>;
|
|
18
|
+
stream(text: string, onAudioChunk: (audio: ArrayBuffer) => void, options?: TTSGenerateOptions): Promise<void>;
|
|
19
|
+
stop(): void;
|
|
20
|
+
unload(): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=TTS.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTS.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/TTS.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,GAAI,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;IACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAE3B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9D,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,WAAW,CAAC,CAAA;IACvB,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,EAC1C,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,IAAI,IAAI,IAAI,CAAA;IACZ,MAAM,IAAI,IAAI,CAAA;CACf"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { STTLoadOptions } from './specs/STT.nitro';
|
|
2
|
+
export declare const STT: {
|
|
3
|
+
load(modelId: string, options?: STTLoadOptions): Promise<void>;
|
|
4
|
+
transcribe(audio: ArrayBuffer): Promise<string>;
|
|
5
|
+
transcribeStream(audio: ArrayBuffer, onToken: (token: string) => void): Promise<string>;
|
|
6
|
+
startListening(): Promise<void>;
|
|
7
|
+
transcribeBuffer(): Promise<string>;
|
|
8
|
+
stopListening(): Promise<string>;
|
|
9
|
+
stop(): void;
|
|
10
|
+
unload(): void;
|
|
11
|
+
readonly isLoaded: boolean;
|
|
12
|
+
readonly isTranscribing: boolean;
|
|
13
|
+
readonly isListening: boolean;
|
|
14
|
+
readonly modelId: string;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=stt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stt.d.ts","sourceRoot":"","sources":["../../../src/stt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,mBAAmB,CAAA;AAW1B,eAAO,MAAM,GAAG;kBACA,MAAM,YAAY,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;sBAI5C,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;4BAKtC,WAAW,WACT,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC;sBAIA,OAAO,CAAC,IAAI,CAAC;wBAIX,OAAO,CAAC,MAAM,CAAC;qBAIlB,OAAO,CAAC,MAAM,CAAC;YAIxB,IAAI;cAIF,IAAI;uBAIE,OAAO;6BAID,OAAO;0BAIV,OAAO;sBAIX,MAAM;CAGtB,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import type { ToolDefinition } from './specs/LLM.nitro';
|
|
3
|
+
type ZodObjectSchema = z.ZodObject<z.core.$ZodShape>;
|
|
4
|
+
type InferArgs<T extends ZodObjectSchema> = z.infer<T>;
|
|
5
|
+
export interface TypeSafeToolDefinition<T extends ZodObjectSchema> {
|
|
6
|
+
name: string;
|
|
7
|
+
description: string;
|
|
8
|
+
arguments: T;
|
|
9
|
+
handler: (args: InferArgs<T>) => Promise<Record<string, unknown>>;
|
|
10
|
+
}
|
|
11
|
+
export declare function createTool<T extends ZodObjectSchema>(definition: TypeSafeToolDefinition<T>): ToolDefinition;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=tool-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-utils.d.ts","sourceRoot":"","sources":["../../../src/tool-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAoC,MAAM,mBAAmB,CAAA;AAEzF,KAAK,eAAe,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACpD,KAAK,SAAS,CAAC,CAAC,SAAS,eAAe,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAEtD,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,eAAe;IAC/D,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,CAAC,CAAA;IACZ,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAClE;AA+CD,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,EAClD,UAAU,EAAE,sBAAsB,CAAC,CAAC,CAAC,GACpC,cAAc,CAYhB"}
|