react-native-executorch 0.5.1-rc.0 → 0.5.1

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.
Files changed (88) hide show
  1. package/README.md +132 -0
  2. package/common/rnexecutorch/models/speech_to_text/SpeechToText.cpp +4 -10
  3. package/common/rnexecutorch/models/speech_to_text/SpeechToText.h +1 -1
  4. package/common/rnexecutorch/models/speech_to_text/SpeechToTextStrategy.h +3 -2
  5. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.cpp +16 -4
  6. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.h +2 -2
  7. package/ios/RnExecutorch.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  8. package/ios/RnExecutorch.xcodeproj/project.xcworkspace/xcuserdata/jakubchmura.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  9. package/ios/RnExecutorch.xcodeproj/xcuserdata/jakubchmura.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  10. package/lib/module/constants/modelUrls.js +61 -36
  11. package/lib/module/constants/modelUrls.js.map +1 -1
  12. package/lib/module/constants/ocr/models.js +1 -1
  13. package/lib/module/hooks/natural_language_processing/useSpeechToText.js +71 -34
  14. package/lib/module/hooks/natural_language_processing/useSpeechToText.js.map +1 -1
  15. package/lib/module/index.js +2 -3
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js +72 -31
  18. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js.map +1 -1
  19. package/lib/module/types/stt.js +1 -85
  20. package/lib/module/types/stt.js.map +1 -1
  21. package/lib/module/utils/SpeechToTextModule/ASR.js +191 -0
  22. package/lib/module/utils/SpeechToTextModule/ASR.js.map +1 -0
  23. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js +73 -0
  24. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js.map +1 -0
  25. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js +56 -0
  26. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js.map +1 -0
  27. package/lib/tsconfig.tsbuildinfo +1 -0
  28. package/lib/typescript/constants/modelUrls.d.ts +24 -7
  29. package/lib/typescript/constants/modelUrls.d.ts.map +1 -1
  30. package/lib/typescript/constants/ocr/models.d.ts +126 -126
  31. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts +15 -24
  32. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts.map +1 -1
  33. package/lib/typescript/index.d.ts +2 -3
  34. package/lib/typescript/index.d.ts.map +1 -1
  35. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts +19 -22
  36. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts.map +1 -1
  37. package/lib/typescript/types/stt.d.ts +17 -91
  38. package/lib/typescript/types/stt.d.ts.map +1 -1
  39. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts +27 -0
  40. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts.map +1 -0
  41. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts +23 -0
  42. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts.map +1 -0
  43. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts +13 -0
  44. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts.map +1 -0
  45. package/package.json +5 -3
  46. package/src/constants/modelUrls.ts +70 -37
  47. package/src/constants/ocr/models.ts +1 -1
  48. package/src/hooks/natural_language_processing/useSpeechToText.ts +87 -92
  49. package/src/index.ts +6 -8
  50. package/src/modules/natural_language_processing/SpeechToTextModule.ts +81 -69
  51. package/src/types/stt.ts +97 -92
  52. package/src/utils/SpeechToTextModule/ASR.ts +303 -0
  53. package/src/utils/SpeechToTextModule/OnlineProcessor.ts +87 -0
  54. package/src/utils/SpeechToTextModule/hypothesisBuffer.ts +79 -0
  55. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.xcworkspace/xcuserdata/jakubchmura.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  56. package/common/rnexecutorch/models/speech_to_text/MoonshineStrategy.cpp +0 -31
  57. package/common/rnexecutorch/models/speech_to_text/MoonshineStrategy.h +0 -21
  58. package/lib/common/Logger.d.ts +0 -8
  59. package/lib/common/Logger.js +0 -19
  60. package/lib/constants/modelUrls.d.ts +0 -89
  61. package/lib/constants/modelUrls.js +0 -116
  62. package/lib/constants/sttDefaults.js +0 -66
  63. package/lib/controllers/LLMController.js +0 -210
  64. package/lib/controllers/OCRController.js +0 -65
  65. package/lib/controllers/SpeechToTextController.d.ts +0 -52
  66. package/lib/controllers/SpeechToTextController.js +0 -343
  67. package/lib/hooks/natural_language_processing/useSpeechToText.js +0 -44
  68. package/lib/index.d.ts +0 -50
  69. package/lib/index.js +0 -59
  70. package/lib/module/constants/sttDefaults.js +0 -74
  71. package/lib/module/constants/sttDefaults.js.map +0 -1
  72. package/lib/module/controllers/SpeechToTextController.js +0 -320
  73. package/lib/module/controllers/SpeechToTextController.js.map +0 -1
  74. package/lib/modules/natural_language_processing/SpeechToTextModule.d.ts +0 -14
  75. package/lib/modules/natural_language_processing/SpeechToTextModule.js +0 -30
  76. package/lib/modules/natural_language_processing/TokenizerModule.js +0 -29
  77. package/lib/native/RnExecutorchModules.d.ts +0 -3
  78. package/lib/native/RnExecutorchModules.js +0 -16
  79. package/lib/typescript/constants/sttDefaults.d.ts +0 -29
  80. package/lib/typescript/constants/sttDefaults.d.ts.map +0 -1
  81. package/lib/typescript/controllers/SpeechToTextController.d.ts +0 -57
  82. package/lib/typescript/controllers/SpeechToTextController.d.ts.map +0 -1
  83. package/lib/utils/ResourceFetcherUtils.js +0 -119
  84. package/lib/utils/llm.js +0 -72
  85. package/src/constants/sttDefaults.ts +0 -82
  86. package/src/controllers/SpeechToTextController.ts +0 -471
  87. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.xcworkspace/xcuserdata/norbertklockiewicz.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  88. /package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/xcuserdata/{norbertklockiewicz.xcuserdatad → jakubchmura.xcuserdatad}/xcschemes/xcschememanagement.plist +0 -0
package/README.md ADDED
@@ -0,0 +1,132 @@
1
+ <div align="right">
2
+ <h1 align="left" style="display:inline-block">React Native ExecuTorch
3
+ <!-- Discord Badge -->
4
+ <a href="https://discord.gg/ZGqqY55qkP">
5
+ <img src="https://img.shields.io/badge/Discord-Join%20Us-00008B?logo=discord&logoColor=white&style=for-the-badge" alt="Join our Discord community">
6
+ </a>
7
+ </h1>
8
+ </div>
9
+
10
+ ![Software Mansion banner](https://github.com/user-attachments/assets/fa2c4735-e75c-4cc1-970d-88905d95e3a4)
11
+
12
+ **React Native ExecuTorch** provides a declarative way to run AI models on-device using React Native, powered by **ExecuTorch** :rocket:. It offers out-of-the-box support for a wide range of LLMs, computer vision models, and more. Visit our [HuggingFace](https://huggingface.co/software-mansion) page to explore these models.
13
+
14
+ **ExecuTorch**, developed by Meta, is a novel framework allowing AI model execution on devices like mobile phones or microcontrollers.
15
+
16
+ React Native ExecuTorch bridges the gap between React Native and native platform capabilities, enabling developers to efficiently run local AI models on mobile devices. This can be achieved without the need for extensive expertise in native programming or machine learning.
17
+
18
+ [![npm version](https://img.shields.io/npm/v/react-native-executorch?color=00008B)](https://www.npmjs.com/package/react-native-executorch)
19
+ [![CI](https://github.com/software-mansion/react-native-executorch/actions/workflows/ci.yml/badge.svg)](https://github.com/software-mansion/react-native-executorch/actions/workflows/ci.yml)
20
+
21
+ **Table of contents:**
22
+
23
+ - [:yin_yang: Supported versions](#yin_yang-supported-versions)
24
+ - [:robot: Ready-made models](#robot-ready-made-models)
25
+ - [:books: Documentation](#books-documentation)
26
+ - [:llama: Quickstart - Running Llama](#llama-quickstart---running-llama)
27
+ - [:calling: Examples](#calling-examples)
28
+ - [:balance_scale: License](#balance_scale-license)
29
+ - [:soon: What's next?](#soon-whats-next)
30
+
31
+ ## :yin_yang: Supported versions
32
+
33
+ The minimal supported version are:
34
+ * iOS 17.0
35
+ * Android 13
36
+ * React Native 0.76
37
+
38
+ > [!IMPORTANT]
39
+ > React Native Executorch supports only the [New React Native architecture](https://reactnative.dev/architecture/landing-page).
40
+
41
+ ## :robot: Ready-made models
42
+
43
+ Our library has a number of ready-to-use AI models; a complete list is available in the documentation. If you're interested in running your own AI model, you need to first export it to the `.pte` format. Instructions on how to do this are available in the [Python API](https://pypi.org/project/executorch/).
44
+
45
+ ## :books: Documentation
46
+
47
+ Check out how our library can help you build your React Native AI features by visiting our docs:
48
+ https://docs.swmansion.com/react-native-executorch
49
+
50
+ ## :llama: **Quickstart - Running Llama**
51
+
52
+ **Get started with AI-powered text generation in 3 easy steps!**
53
+
54
+ ### :one: **Installation**
55
+
56
+ ```bash
57
+ # Install the package
58
+ yarn add react-native-executorch
59
+ # Depending on the platform, choose either iOS or Android
60
+ yarn expo run:< ios | android >
61
+ ```
62
+
63
+ ### :two: **Setup & Initialization**
64
+
65
+ Add this to your component file:
66
+
67
+ ```tsx
68
+ import {
69
+ useLLM,
70
+ LLAMA3_2_1B,
71
+ Message
72
+ } from 'react-native-executorch';
73
+
74
+ function MyComponent() {
75
+ // Initialize the model 🚀
76
+ const llm = useLLM({ model: LLAMA3_2_1B });
77
+ // ... rest of your component
78
+ }
79
+ ```
80
+
81
+ ### :three: **Run the model!**
82
+
83
+ ```tsx
84
+ const handleGenerate = async () => {
85
+ const chat: Message[] = [
86
+ { role: 'system', content: 'You are a helpful assistant' },
87
+ { role: 'user', content: 'What is the meaning of life?' }
88
+ ];
89
+
90
+ // Chat completion
91
+ await llm.generate(chat);
92
+ console.log('Llama says:', llm.response);
93
+ };
94
+ ```
95
+
96
+ ## :calling: Examples
97
+
98
+ We currently host a few example [apps](https://github.com/software-mansion/react-native-executorch/tree/main/apps) demonstrating use cases of our library:
99
+
100
+ - `llm` - Chat application showcasing use of LLMs
101
+ - `speech-to-text` - Whisper and Moonshine models ready for transcription tasks
102
+ - `computer-vision` - Computer vision related tasks
103
+ - `text-embeddings` - Computing text representations for semantic search
104
+
105
+ If you would like to run demo app, navigate to its project directory and install dependencies with:
106
+
107
+ ```bash
108
+ yarn
109
+ ```
110
+
111
+ Then, depending on the platform, choose either iOS or Android:
112
+
113
+ ```bash
114
+ yarn expo run:< ios | android >
115
+ ```
116
+
117
+ > [!WARNING]
118
+ > Running LLMs requires a significant amount of RAM. If you are encountering unexpected app crashes, try to increase the amount of RAM allocated to the emulator.
119
+
120
+ ## :balance_scale: License
121
+
122
+ This library is licensed under [The MIT License](./LICENSE).
123
+
124
+ ## :soon: What's next?
125
+
126
+ To learn about our upcoming plans and developments, please visit our [milestones](https://github.com/software-mansion/react-native-executorch/milestones).
127
+
128
+ ## React Native ExecuTorch is created by Software Mansion
129
+
130
+ Since 2012, [Software Mansion](https://swmansion.com) is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – [Hire us](https://swmansion.com/contact/projects?utm_source=react-native-executorch&utm_medium=readme).
131
+
132
+ [![swm](https://logo.swmansion.com/logo?color=white&variant=desktop&width=150&tag=react-native-executorch-github 'Software Mansion')](https://swmansion.com)
@@ -1,4 +1,3 @@
1
- #include <rnexecutorch/models/speech_to_text/MoonshineStrategy.h>
2
1
  #include <rnexecutorch/models/speech_to_text/SpeechToText.h>
3
2
  #include <rnexecutorch/models/speech_to_text/WhisperStrategy.h>
4
3
  #include <stdexcept>
@@ -19,11 +18,9 @@ SpeechToText::SpeechToText(const std::string &encoderPath,
19
18
  void SpeechToText::initializeStrategy() {
20
19
  if (modelName == "whisper") {
21
20
  strategy = std::make_unique<WhisperStrategy>();
22
- } else if (modelName == "moonshine") {
23
- strategy = std::make_unique<MoonshineStrategy>();
24
21
  } else {
25
22
  throw std::runtime_error("Unsupported STT model: " + modelName +
26
- ". Only 'whisper' and 'moonshine' are supported.");
23
+ ". Only 'whisper' is supported.");
27
24
  }
28
25
  }
29
26
 
@@ -40,7 +37,8 @@ void SpeechToText::encode(std::span<float> waveform) {
40
37
  encoderOutput = result.get().at(0);
41
38
  }
42
39
 
43
- int64_t SpeechToText::decode(std::vector<int64_t> prevTokens) {
40
+ std::shared_ptr<OwningArrayBuffer>
41
+ SpeechToText::decode(std::vector<int64_t> prevTokens) {
44
42
  if (encoderOutput.isNone()) {
45
43
  throw std::runtime_error("Empty encodings on decode call, make sure to "
46
44
  "call encode() prior to decode()!");
@@ -49,9 +47,6 @@ int64_t SpeechToText::decode(std::vector<int64_t> prevTokens) {
49
47
  const auto prevTokensTensor = strategy->prepareTokenInput(prevTokens);
50
48
 
51
49
  const auto decoderMethod = strategy->getDecoderMethod();
52
- // BEWARE!!!
53
- // Moonshine will fail with invalid input if you pass large tokens i.e.
54
- // Whisper's BOS/EOS
55
50
  const auto decoderResult =
56
51
  decoder_->execute(decoderMethod, {prevTokensTensor, encoderOutput});
57
52
 
@@ -63,8 +58,7 @@ int64_t SpeechToText::decode(std::vector<int64_t> prevTokens) {
63
58
 
64
59
  const auto decoderOutputTensor = decoderResult.get().at(0).toTensor();
65
60
  const auto innerDim = decoderOutputTensor.size(1);
66
- return strategy->extractOutputToken(decoderOutputTensor.const_data_ptr(),
67
- innerDim);
61
+ return strategy->extractOutputToken(decoderOutputTensor);
68
62
  }
69
63
 
70
64
  } // namespace rnexecutorch
@@ -18,7 +18,7 @@ public:
18
18
  const std::string &modelName,
19
19
  std::shared_ptr<react::CallInvoker> callInvoker);
20
20
  void encode(std::span<float> waveform);
21
- int64_t decode(std::vector<int64_t> prevTokens);
21
+ std::shared_ptr<OwningArrayBuffer> decode(std::vector<int64_t> prevTokens);
22
22
 
23
23
  private:
24
24
  const std::string modelName;
@@ -1,6 +1,7 @@
1
1
  #pragma once
2
2
 
3
3
  #include "executorch/extension/tensor/tensor_ptr.h"
4
+ #include <rnexecutorch/host_objects/JSTensorViewOut.h>
4
5
  #include <span>
5
6
  #include <vector>
6
7
 
@@ -19,8 +20,8 @@ public:
19
20
 
20
21
  virtual std::string getDecoderMethod() const = 0;
21
22
 
22
- virtual int64_t extractOutputToken(const void *outputPtr,
23
- size_t innerDim) const = 0;
23
+ virtual std::shared_ptr<OwningArrayBuffer> extractOutputToken(
24
+ const executorch::aten::Tensor &decoderOutputTensor) const = 0;
24
25
  };
25
26
 
26
27
  } // namespace rnexecutorch
@@ -29,10 +29,22 @@ WhisperStrategy::prepareTokenInput(const std::vector<int64_t> &prevTokens) {
29
29
  return make_tensor_ptr(std::move(tensorSizes), std::move(tokens32));
30
30
  }
31
31
 
32
- int64_t WhisperStrategy::extractOutputToken(const void *outputPtr,
33
- size_t innerDim) const {
34
- const auto *data = static_cast<const int32_t *>(outputPtr);
35
- return static_cast<int64_t>(data[innerDim - 1]);
32
+ std::shared_ptr<OwningArrayBuffer> WhisperStrategy::extractOutputToken(
33
+ const executorch::aten::Tensor &decoderOutputTensor) const {
34
+ const auto innerDim = decoderOutputTensor.size(1);
35
+ const auto dictSize = decoderOutputTensor.size(2);
36
+ auto outputNumel = decoderOutputTensor.numel();
37
+ auto dataPtr =
38
+ static_cast<const float *>(decoderOutputTensor.const_data_ptr()) +
39
+ (innerDim - 1) * dictSize;
40
+
41
+ std::span<const float> modelOutput(dataPtr, outputNumel / innerDim);
42
+ auto createBuffer = [](const auto &data, size_t size) {
43
+ auto buffer = std::make_shared<OwningArrayBuffer>(size);
44
+ std::memcpy(buffer->data(), data, size);
45
+ return buffer;
46
+ };
47
+ return createBuffer(modelOutput.data(), modelOutput.size_bytes());
36
48
  }
37
49
 
38
50
  } // namespace rnexecutorch
@@ -14,8 +14,8 @@ public:
14
14
 
15
15
  std::string getDecoderMethod() const override { return "forward"; }
16
16
 
17
- int64_t extractOutputToken(const void *outputPtr,
18
- size_t innerDim) const override;
17
+ std::shared_ptr<OwningArrayBuffer> extractOutputToken(
18
+ const executorch::aten::Tensor &decoderOutputTensor) const override;
19
19
 
20
20
  private:
21
21
  std::vector<float> preprocessedData;
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "self:">
6
+ </FileRef>
7
+ </Workspace>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>SchemeUserState</key>
6
+ <dict>
7
+ <key>RnExecutorch.xcscheme_^#shared#^_</key>
8
+ <dict>
9
+ <key>orderHint</key>
10
+ <integer>0</integer>
11
+ </dict>
12
+ </dict>
13
+ </dict>
14
+ </plist>
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import { Platform } from 'react-native';
4
- import { AvailableModels } from '../types/stt';
5
4
  const URL_PREFIX = 'https://huggingface.co/software-mansion/react-native-executorch';
6
- const VERSION_TAG = 'resolve/v0.4.0';
7
- const NEXT_VERSION_TAG = 'resolve/v0.5.0';
5
+ const VERSION_TAG = 'resolve/v0.5.0';
8
6
 
9
7
  // LLMs
10
8
 
@@ -255,32 +253,59 @@ export const STYLE_TRANSFER_UDNIE = {
255
253
  };
256
254
 
257
255
  // S2T
258
- const MOONSHINE_TINY_DECODER_MODEL = `${URL_PREFIX}-moonshine-tiny/${VERSION_TAG}/xnnpack/moonshine_tiny_xnnpack_decoder.pte`;
259
- const MOONSHINE_TINY_ENCODER_MODEL = `${URL_PREFIX}-moonshine-tiny/${VERSION_TAG}/xnnpack/moonshine_tiny_xnnpack_encoder.pte`;
260
- const MOONSHINE_TOKENIZER = `${URL_PREFIX}-moonshine-tiny/${VERSION_TAG}/moonshine_tiny_tokenizer.json`;
261
- const WHISPER_TOKENIZER = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/whisper_tokenizer.json`;
262
- const WHISPER_TINY_DECODER_MODEL = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/xnnpack/whisper_tiny_en_xnnpack_decoder.pte`;
263
- const WHISPER_TINY_ENCODER_MODEL = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/xnnpack/whisper_tiny_en_xnnpack_encoder.pte`;
264
- const WHISPER_TINY_MULTILINGUAL_ENCODER_MODEL = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/xnnpack/xnnpack_whisper_encoder.pte`;
265
- const WHISPER_TINY_MULTILINGUAL_DECODER_MODEL = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/xnnpack/xnnpack_whisper_decoder.pte`;
266
- const WHISPER_TINY_MULTILINGUAL_TOKENIZER = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/tokenizer.json`;
267
- export const MOONSHINE_TINY = {
268
- modelName: AvailableModels.MOONSHINE,
269
- decoderSource: MOONSHINE_TINY_DECODER_MODEL,
270
- encoderSource: MOONSHINE_TINY_ENCODER_MODEL,
271
- tokenizerSource: MOONSHINE_TOKENIZER
256
+ const WHISPER_TINY_EN_TOKENIZER = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/tokenizer.json`;
257
+ const WHISPER_TINY_EN_ENCODER = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/xnnpack/whisper_tiny_en_encoder_xnnpack.pte`;
258
+ const WHISPER_TINY_EN_DECODER = `${URL_PREFIX}-whisper-tiny.en/${VERSION_TAG}/xnnpack/whisper_tiny_en_decoder_xnnpack.pte`;
259
+ const WHISPER_BASE_EN_TOKENIZER = `${URL_PREFIX}-whisper-base.en/${VERSION_TAG}/tokenizer.json`;
260
+ const WHISPER_BASE_EN_ENCODER = `${URL_PREFIX}-whisper-base.en/${VERSION_TAG}/xnnpack/whisper_base_en_encoder_xnnpack.pte`;
261
+ const WHISPER_BASE_EN_DECODER = `${URL_PREFIX}-whisper-base.en/${VERSION_TAG}/xnnpack/whisper_base_en_decoder_xnnpack.pte`;
262
+ const WHISPER_SMALL_EN_TOKENIZER = `${URL_PREFIX}-whisper-small.en/${VERSION_TAG}/tokenizer.json`;
263
+ const WHISPER_SMALL_EN_ENCODER = `${URL_PREFIX}-whisper-small.en/${VERSION_TAG}/xnnpack/whisper_small_en_encoder_xnnpack.pte`;
264
+ const WHISPER_SMALL_EN_DECODER = `${URL_PREFIX}-whisper-small.en/${VERSION_TAG}/xnnpack/whisper_small_en_decoder_xnnpack.pte`;
265
+ const WHISPER_TINY_TOKENIZER = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/tokenizer.json`;
266
+ const WHISPER_TINY_ENCODER_MODEL = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/xnnpack/whisper_tiny_encoder_xnnpack.pte`;
267
+ const WHISPER_TINY_DECODER_MODEL = `${URL_PREFIX}-whisper-tiny/${VERSION_TAG}/xnnpack/whisper_tiny_decoder_xnnpack.pte`;
268
+ const WHISPER_BASE_TOKENIZER = `${URL_PREFIX}-whisper-base/${VERSION_TAG}/tokenizer.json`;
269
+ const WHISPER_BASE_ENCODER_MODEL = `${URL_PREFIX}-whisper-base/${VERSION_TAG}/xnnpack/whisper_base_encoder_xnnpack.pte`;
270
+ const WHISPER_BASE_DECODER_MODEL = `${URL_PREFIX}-whisper-base/${VERSION_TAG}/xnnpack/whisper_base_decoder_xnnpack.pte`;
271
+ const WHISPER_SMALL_TOKENIZER = `${URL_PREFIX}-whisper-small/${VERSION_TAG}/tokenizer.json`;
272
+ const WHISPER_SMALL_ENCODER_MODEL = `${URL_PREFIX}-whisper-small/${VERSION_TAG}/xnnpack/whisper_small_encoder_xnnpack.pte`;
273
+ const WHISPER_SMALL_DECODER_MODEL = `${URL_PREFIX}-whisper-small/${VERSION_TAG}/xnnpack/whisper_small_decoder_xnnpack.pte`;
274
+ export const WHISPER_TINY_EN = {
275
+ isMultilingual: false,
276
+ encoderSource: WHISPER_TINY_EN_ENCODER,
277
+ decoderSource: WHISPER_TINY_EN_DECODER,
278
+ tokenizerSource: WHISPER_TINY_EN_TOKENIZER
279
+ };
280
+ export const WHISPER_BASE_EN = {
281
+ isMultilingual: false,
282
+ encoderSource: WHISPER_BASE_EN_ENCODER,
283
+ decoderSource: WHISPER_BASE_EN_DECODER,
284
+ tokenizerSource: WHISPER_BASE_EN_TOKENIZER
285
+ };
286
+ export const WHISPER_SMALL_EN = {
287
+ isMultilingual: false,
288
+ encoderSource: WHISPER_SMALL_EN_ENCODER,
289
+ decoderSource: WHISPER_SMALL_EN_DECODER,
290
+ tokenizerSource: WHISPER_SMALL_EN_TOKENIZER
272
291
  };
273
292
  export const WHISPER_TINY = {
274
- modelName: AvailableModels.WHISPER,
275
- decoderSource: WHISPER_TINY_DECODER_MODEL,
293
+ isMultilingual: true,
276
294
  encoderSource: WHISPER_TINY_ENCODER_MODEL,
277
- tokenizerSource: WHISPER_TOKENIZER
295
+ decoderSource: WHISPER_TINY_DECODER_MODEL,
296
+ tokenizerSource: WHISPER_TINY_TOKENIZER
297
+ };
298
+ export const WHISPER_BASE = {
299
+ isMultilingual: true,
300
+ encoderSource: WHISPER_BASE_ENCODER_MODEL,
301
+ decoderSource: WHISPER_BASE_DECODER_MODEL,
302
+ tokenizerSource: WHISPER_BASE_TOKENIZER
278
303
  };
279
- export const WHISPER_TINY_MULTILINGUAL = {
280
- modelName: AvailableModels.WHISPER_MULTILINGUAL,
281
- decoderSource: WHISPER_TINY_MULTILINGUAL_DECODER_MODEL,
282
- encoderSource: WHISPER_TINY_MULTILINGUAL_ENCODER_MODEL,
283
- tokenizerSource: WHISPER_TINY_MULTILINGUAL_TOKENIZER
304
+ export const WHISPER_SMALL = {
305
+ isMultilingual: true,
306
+ encoderSource: WHISPER_SMALL_ENCODER_MODEL,
307
+ decoderSource: WHISPER_SMALL_DECODER_MODEL,
308
+ tokenizerSource: WHISPER_SMALL_TOKENIZER
284
309
  };
285
310
 
286
311
  // Image segmentation
@@ -290,22 +315,22 @@ export const DEEPLAB_V3_RESNET50 = {
290
315
  };
291
316
 
292
317
  // Image Embeddings
293
- const CLIP_VIT_BASE_PATCH32_IMAGE_MODEL = `${URL_PREFIX}-clip-vit-base-patch32/${NEXT_VERSION_TAG}/clip-vit-base-patch32-vision_xnnpack.pte`;
318
+ const CLIP_VIT_BASE_PATCH32_IMAGE_MODEL = `${URL_PREFIX}-clip-vit-base-patch32/${VERSION_TAG}/clip-vit-base-patch32-vision_xnnpack.pte`;
294
319
  export const CLIP_VIT_BASE_PATCH32_IMAGE = {
295
320
  modelSource: CLIP_VIT_BASE_PATCH32_IMAGE_MODEL
296
321
  };
297
322
 
298
323
  // Text Embeddings
299
- const ALL_MINILM_L6_V2_MODEL = `${URL_PREFIX}-all-MiniLM-L6-v2/${NEXT_VERSION_TAG}/all-MiniLM-L6-v2_xnnpack.pte`;
300
- const ALL_MINILM_L6_V2_TOKENIZER = `${URL_PREFIX}-all-MiniLM-L6-v2/${NEXT_VERSION_TAG}/tokenizer.json`;
301
- const ALL_MPNET_BASE_V2_MODEL = `${URL_PREFIX}-all-mpnet-base-v2/${NEXT_VERSION_TAG}/all-mpnet-base-v2_xnnpack.pte`;
302
- const ALL_MPNET_BASE_V2_TOKENIZER = `${URL_PREFIX}-all-mpnet-base-v2/${NEXT_VERSION_TAG}/tokenizer.json`;
303
- const MULTI_QA_MINILM_L6_COS_V1_MODEL = `${URL_PREFIX}-multi-qa-MiniLM-L6-cos-v1/${NEXT_VERSION_TAG}/multi-qa-MiniLM-L6-cos-v1_xnnpack.pte`;
304
- const MULTI_QA_MINILM_L6_COS_V1_TOKENIZER = `${URL_PREFIX}-multi-qa-MiniLM-L6-cos-v1/${NEXT_VERSION_TAG}/tokenizer.json`;
305
- const MULTI_QA_MPNET_BASE_DOT_V1_MODEL = `${URL_PREFIX}-multi-qa-mpnet-base-dot-v1/${NEXT_VERSION_TAG}/multi-qa-mpnet-base-dot-v1_xnnpack.pte`;
306
- const MULTI_QA_MPNET_BASE_DOT_V1_TOKENIZER = `${URL_PREFIX}-multi-qa-mpnet-base-dot-v1/${NEXT_VERSION_TAG}/tokenizer.json`;
307
- const CLIP_VIT_BASE_PATCH32_TEXT_MODEL = `${URL_PREFIX}-clip-vit-base-patch32/${NEXT_VERSION_TAG}/clip-vit-base-patch32-text_xnnpack.pte`;
308
- const CLIP_VIT_BASE_PATCH32_TEXT_TOKENIZER = `${URL_PREFIX}-clip-vit-base-patch32/${NEXT_VERSION_TAG}/tokenizer.json`;
324
+ const ALL_MINILM_L6_V2_MODEL = `${URL_PREFIX}-all-MiniLM-L6-v2/${VERSION_TAG}/all-MiniLM-L6-v2_xnnpack.pte`;
325
+ const ALL_MINILM_L6_V2_TOKENIZER = `${URL_PREFIX}-all-MiniLM-L6-v2/${VERSION_TAG}/tokenizer.json`;
326
+ const ALL_MPNET_BASE_V2_MODEL = `${URL_PREFIX}-all-mpnet-base-v2/${VERSION_TAG}/all-mpnet-base-v2_xnnpack.pte`;
327
+ const ALL_MPNET_BASE_V2_TOKENIZER = `${URL_PREFIX}-all-mpnet-base-v2/${VERSION_TAG}/tokenizer.json`;
328
+ const MULTI_QA_MINILM_L6_COS_V1_MODEL = `${URL_PREFIX}-multi-qa-MiniLM-L6-cos-v1/${VERSION_TAG}/multi-qa-MiniLM-L6-cos-v1_xnnpack.pte`;
329
+ const MULTI_QA_MINILM_L6_COS_V1_TOKENIZER = `${URL_PREFIX}-multi-qa-MiniLM-L6-cos-v1/${VERSION_TAG}/tokenizer.json`;
330
+ const MULTI_QA_MPNET_BASE_DOT_V1_MODEL = `${URL_PREFIX}-multi-qa-mpnet-base-dot-v1/${VERSION_TAG}/multi-qa-mpnet-base-dot-v1_xnnpack.pte`;
331
+ const MULTI_QA_MPNET_BASE_DOT_V1_TOKENIZER = `${URL_PREFIX}-multi-qa-mpnet-base-dot-v1/${VERSION_TAG}/tokenizer.json`;
332
+ const CLIP_VIT_BASE_PATCH32_TEXT_MODEL = `${URL_PREFIX}-clip-vit-base-patch32/${VERSION_TAG}/clip-vit-base-patch32-text_xnnpack.pte`;
333
+ const CLIP_VIT_BASE_PATCH32_TEXT_TOKENIZER = `${URL_PREFIX}-clip-vit-base-patch32/${VERSION_TAG}/tokenizer.json`;
309
334
  export const ALL_MINILM_L6_V2 = {
310
335
  modelSource: ALL_MINILM_L6_V2_MODEL,
311
336
  tokenizerSource: ALL_MINILM_L6_V2_TOKENIZER
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","AvailableModels","URL_PREFIX","VERSION_TAG","NEXT_VERSION_TAG","LLAMA3_2_3B_MODEL","LLAMA3_2_3B_QLORA_MODEL","LLAMA3_2_3B_SPINQUANT_MODEL","LLAMA3_2_1B_MODEL","LLAMA3_2_1B_QLORA_MODEL","LLAMA3_2_1B_SPINQUANT_MODEL","LLAMA3_2_TOKENIZER","LLAMA3_2_TOKENIZER_CONFIG","LLAMA3_2_3B","modelSource","tokenizerSource","tokenizerConfigSource","LLAMA3_2_3B_QLORA","LLAMA3_2_3B_SPINQUANT","LLAMA3_2_1B","LLAMA3_2_1B_QLORA","LLAMA3_2_1B_SPINQUANT","QWEN3_0_6B_MODEL","QWEN3_0_6B_QUANTIZED_MODEL","QWEN3_1_7B_MODEL","QWEN3_1_7B_QUANTIZED_MODEL","QWEN3_4B_MODEL","QWEN3_4B_QUANTIZED_MODEL","QWEN3_TOKENIZER","QWEN3_TOKENIZER_CONFIG","QWEN3_0_6B","QWEN3_0_6B_QUANTIZED","QWEN3_1_7B","QWEN3_1_7B_QUANTIZED","QWEN3_4B","QWEN3_4B_QUANTIZED","HAMMER2_1_0_5B_MODEL","HAMMER2_1_0_5B_QUANTIZED_MODEL","HAMMER2_1_1_5B_MODEL","HAMMER2_1_1_5B_QUANTIZED_MODEL","HAMMER2_1_3B_MODEL","HAMMER2_1_3B_QUANTIZED_MODEL","HAMMER2_1_TOKENIZER","HAMMER2_1_TOKENIZER_CONFIG","HAMMER2_1_0_5B","HAMMER2_1_0_5B_QUANTIZED","HAMMER2_1_1_5B","HAMMER2_1_1_5B_QUANTIZED","HAMMER2_1_3B","HAMMER2_1_3B_QUANTIZED","SMOLLM2_1_135M_MODEL","SMOLLM2_1_135M_QUANTIZED_MODEL","SMOLLM2_1_360M_MODEL","SMOLLM2_1_360M_QUANTIZED_MODEL","SMOLLM2_1_1_7B_MODEL","SMOLLM2_1_1_7B_QUANTIZED_MODEL","SMOLLM2_1_TOKENIZER","SMOLLM2_1_TOKENIZER_CONFIG","SMOLLM2_1_135M","SMOLLM2_1_135M_QUANTIZED","SMOLLM2_1_360M","SMOLLM2_1_360M_QUANTIZED","SMOLLM2_1_1_7B","SMOLLM2_1_1_7B_QUANTIZED","QWEN2_5_0_5B_MODEL","QWEN2_5_0_5B_QUANTIZED_MODEL","QWEN2_5_1_5B_MODEL","QWEN2_5_1_5B_QUANTIZED_MODEL","QWEN2_5_3B_MODEL","QWEN2_5_3B_QUANTIZED_MODEL","QWEN2_5_TOKENIZER","QWEN2_5_TOKENIZER_CONFIG","QWEN2_5_0_5B","QWEN2_5_0_5B_QUANTIZED","QWEN2_5_1_5B","QWEN2_5_1_5B_QUANTIZED","QWEN2_5_3B","QWEN2_5_3B_QUANTIZED","PHI_4_MINI_4B_MODEL","PHI_4_MINI_4B_QUANTIZED_MODEL","PHI_4_MINI_TOKENIZER","PHI_4_MINI_TOKENIZER_CONFIG","PHI_4_MINI_4B","PHI_4_MINI_4B_QUANTIZED","EFFICIENTNET_V2_S_MODEL","OS","EFFICIENTNET_V2_S","SSDLITE_320_MOBILENET_V3_LARGE_MODEL","SSDLITE_320_MOBILENET_V3_LARGE","STYLE_TRANSFER_CANDY_MODEL","STYLE_TRANSFER_MOSAIC_MODEL","STYLE_TRANSFER_RAIN_PRINCESS_MODEL","STYLE_TRANSFER_UDNIE_MODEL","STYLE_TRANSFER_CANDY","STYLE_TRANSFER_MOSAIC","STYLE_TRANSFER_RAIN_PRINCESS","STYLE_TRANSFER_UDNIE","MOONSHINE_TINY_DECODER_MODEL","MOONSHINE_TINY_ENCODER_MODEL","MOONSHINE_TOKENIZER","WHISPER_TOKENIZER","WHISPER_TINY_DECODER_MODEL","WHISPER_TINY_ENCODER_MODEL","WHISPER_TINY_MULTILINGUAL_ENCODER_MODEL","WHISPER_TINY_MULTILINGUAL_DECODER_MODEL","WHISPER_TINY_MULTILINGUAL_TOKENIZER","MOONSHINE_TINY","modelName","MOONSHINE","decoderSource","encoderSource","WHISPER_TINY","WHISPER","WHISPER_TINY_MULTILINGUAL","WHISPER_MULTILINGUAL","DEEPLAB_V3_RESNET50_MODEL","DEEPLAB_V3_RESNET50","CLIP_VIT_BASE_PATCH32_IMAGE_MODEL","CLIP_VIT_BASE_PATCH32_IMAGE","ALL_MINILM_L6_V2_MODEL","ALL_MINILM_L6_V2_TOKENIZER","ALL_MPNET_BASE_V2_MODEL","ALL_MPNET_BASE_V2_TOKENIZER","MULTI_QA_MINILM_L6_COS_V1_MODEL","MULTI_QA_MINILM_L6_COS_V1_TOKENIZER","MULTI_QA_MPNET_BASE_DOT_V1_MODEL","MULTI_QA_MPNET_BASE_DOT_V1_TOKENIZER","CLIP_VIT_BASE_PATCH32_TEXT_MODEL","CLIP_VIT_BASE_PATCH32_TEXT_TOKENIZER","ALL_MINILM_L6_V2","ALL_MPNET_BASE_V2","MULTI_QA_MINILM_L6_COS_V1","MULTI_QA_MPNET_BASE_DOT_V1","CLIP_VIT_BASE_PATCH32_TEXT"],"sourceRoot":"../../../src","sources":["constants/modelUrls.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","URL_PREFIX","VERSION_TAG","LLAMA3_2_3B_MODEL","LLAMA3_2_3B_QLORA_MODEL","LLAMA3_2_3B_SPINQUANT_MODEL","LLAMA3_2_1B_MODEL","LLAMA3_2_1B_QLORA_MODEL","LLAMA3_2_1B_SPINQUANT_MODEL","LLAMA3_2_TOKENIZER","LLAMA3_2_TOKENIZER_CONFIG","LLAMA3_2_3B","modelSource","tokenizerSource","tokenizerConfigSource","LLAMA3_2_3B_QLORA","LLAMA3_2_3B_SPINQUANT","LLAMA3_2_1B","LLAMA3_2_1B_QLORA","LLAMA3_2_1B_SPINQUANT","QWEN3_0_6B_MODEL","QWEN3_0_6B_QUANTIZED_MODEL","QWEN3_1_7B_MODEL","QWEN3_1_7B_QUANTIZED_MODEL","QWEN3_4B_MODEL","QWEN3_4B_QUANTIZED_MODEL","QWEN3_TOKENIZER","QWEN3_TOKENIZER_CONFIG","QWEN3_0_6B","QWEN3_0_6B_QUANTIZED","QWEN3_1_7B","QWEN3_1_7B_QUANTIZED","QWEN3_4B","QWEN3_4B_QUANTIZED","HAMMER2_1_0_5B_MODEL","HAMMER2_1_0_5B_QUANTIZED_MODEL","HAMMER2_1_1_5B_MODEL","HAMMER2_1_1_5B_QUANTIZED_MODEL","HAMMER2_1_3B_MODEL","HAMMER2_1_3B_QUANTIZED_MODEL","HAMMER2_1_TOKENIZER","HAMMER2_1_TOKENIZER_CONFIG","HAMMER2_1_0_5B","HAMMER2_1_0_5B_QUANTIZED","HAMMER2_1_1_5B","HAMMER2_1_1_5B_QUANTIZED","HAMMER2_1_3B","HAMMER2_1_3B_QUANTIZED","SMOLLM2_1_135M_MODEL","SMOLLM2_1_135M_QUANTIZED_MODEL","SMOLLM2_1_360M_MODEL","SMOLLM2_1_360M_QUANTIZED_MODEL","SMOLLM2_1_1_7B_MODEL","SMOLLM2_1_1_7B_QUANTIZED_MODEL","SMOLLM2_1_TOKENIZER","SMOLLM2_1_TOKENIZER_CONFIG","SMOLLM2_1_135M","SMOLLM2_1_135M_QUANTIZED","SMOLLM2_1_360M","SMOLLM2_1_360M_QUANTIZED","SMOLLM2_1_1_7B","SMOLLM2_1_1_7B_QUANTIZED","QWEN2_5_0_5B_MODEL","QWEN2_5_0_5B_QUANTIZED_MODEL","QWEN2_5_1_5B_MODEL","QWEN2_5_1_5B_QUANTIZED_MODEL","QWEN2_5_3B_MODEL","QWEN2_5_3B_QUANTIZED_MODEL","QWEN2_5_TOKENIZER","QWEN2_5_TOKENIZER_CONFIG","QWEN2_5_0_5B","QWEN2_5_0_5B_QUANTIZED","QWEN2_5_1_5B","QWEN2_5_1_5B_QUANTIZED","QWEN2_5_3B","QWEN2_5_3B_QUANTIZED","PHI_4_MINI_4B_MODEL","PHI_4_MINI_4B_QUANTIZED_MODEL","PHI_4_MINI_TOKENIZER","PHI_4_MINI_TOKENIZER_CONFIG","PHI_4_MINI_4B","PHI_4_MINI_4B_QUANTIZED","EFFICIENTNET_V2_S_MODEL","OS","EFFICIENTNET_V2_S","SSDLITE_320_MOBILENET_V3_LARGE_MODEL","SSDLITE_320_MOBILENET_V3_LARGE","STYLE_TRANSFER_CANDY_MODEL","STYLE_TRANSFER_MOSAIC_MODEL","STYLE_TRANSFER_RAIN_PRINCESS_MODEL","STYLE_TRANSFER_UDNIE_MODEL","STYLE_TRANSFER_CANDY","STYLE_TRANSFER_MOSAIC","STYLE_TRANSFER_RAIN_PRINCESS","STYLE_TRANSFER_UDNIE","WHISPER_TINY_EN_TOKENIZER","WHISPER_TINY_EN_ENCODER","WHISPER_TINY_EN_DECODER","WHISPER_BASE_EN_TOKENIZER","WHISPER_BASE_EN_ENCODER","WHISPER_BASE_EN_DECODER","WHISPER_SMALL_EN_TOKENIZER","WHISPER_SMALL_EN_ENCODER","WHISPER_SMALL_EN_DECODER","WHISPER_TINY_TOKENIZER","WHISPER_TINY_ENCODER_MODEL","WHISPER_TINY_DECODER_MODEL","WHISPER_BASE_TOKENIZER","WHISPER_BASE_ENCODER_MODEL","WHISPER_BASE_DECODER_MODEL","WHISPER_SMALL_TOKENIZER","WHISPER_SMALL_ENCODER_MODEL","WHISPER_SMALL_DECODER_MODEL","WHISPER_TINY_EN","isMultilingual","encoderSource","decoderSource","WHISPER_BASE_EN","WHISPER_SMALL_EN","WHISPER_TINY","WHISPER_BASE","WHISPER_SMALL","DEEPLAB_V3_RESNET50_MODEL","DEEPLAB_V3_RESNET50","CLIP_VIT_BASE_PATCH32_IMAGE_MODEL","CLIP_VIT_BASE_PATCH32_IMAGE","ALL_MINILM_L6_V2_MODEL","ALL_MINILM_L6_V2_TOKENIZER","ALL_MPNET_BASE_V2_MODEL","ALL_MPNET_BASE_V2_TOKENIZER","MULTI_QA_MINILM_L6_COS_V1_MODEL","MULTI_QA_MINILM_L6_COS_V1_TOKENIZER","MULTI_QA_MPNET_BASE_DOT_V1_MODEL","MULTI_QA_MPNET_BASE_DOT_V1_TOKENIZER","CLIP_VIT_BASE_PATCH32_TEXT_MODEL","CLIP_VIT_BASE_PATCH32_TEXT_TOKENIZER","ALL_MINILM_L6_V2","ALL_MPNET_BASE_V2","MULTI_QA_MINILM_L6_COS_V1","MULTI_QA_MPNET_BASE_DOT_V1","CLIP_VIT_BASE_PATCH32_TEXT"],"sourceRoot":"../../../src","sources":["constants/modelUrls.ts"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  const URL_PREFIX = 'https://huggingface.co/software-mansion/react-native-executorch';
4
- const VERSION_TAG = 'resolve/v0.4.0';
4
+ const VERSION_TAG = 'resolve/v0.5.0';
5
5
  const DETECTOR_CRAFT_1280_MODEL = `${URL_PREFIX}-detector-craft/${VERSION_TAG}/xnnpack/xnnpack_craft_1280.pte`;
6
6
  const DETECTOR_CRAFT_800_MODEL = `${URL_PREFIX}-detector-craft/${VERSION_TAG}/xnnpack/xnnpack_craft_800.pte`;
7
7
  const DETECTOR_CRAFT_320_MODEL = `${URL_PREFIX}-detector-craft/${VERSION_TAG}/xnnpack/xnnpack_craft_320.pte`;
@@ -1,51 +1,88 @@
1
1
  "use strict";
2
2
 
3
- import { useEffect, useMemo, useState } from 'react';
4
- import { SpeechToTextController } from '../../controllers/SpeechToTextController';
3
+ import { useEffect, useCallback, useState } from 'react';
4
+ import { ETError, getError } from '../../Error';
5
+ import { SpeechToTextModule } from '../../modules/natural_language_processing/SpeechToTextModule';
5
6
  export const useSpeechToText = ({
6
7
  model,
7
- overlapSeconds,
8
- windowSize,
9
- streamingConfig,
10
8
  preventLoad = false
11
9
  }) => {
12
- const [sequence, setSequence] = useState('');
10
+ const [error, setError] = useState(null);
13
11
  const [isReady, setIsReady] = useState(false);
14
- const [downloadProgress, setDownloadProgress] = useState(0);
15
12
  const [isGenerating, setIsGenerating] = useState(false);
16
- const [error, setError] = useState();
17
- const controllerInstance = useMemo(() => new SpeechToTextController({
18
- transcribeCallback: setSequence,
19
- isReadyCallback: setIsReady,
20
- isGeneratingCallback: setIsGenerating,
21
- onErrorCallback: setError
22
- }), []);
23
- useEffect(() => {
24
- controllerInstance.configureStreaming(overlapSeconds, windowSize, streamingConfig);
25
- }, [controllerInstance, overlapSeconds, windowSize, streamingConfig]);
13
+ const [downloadProgress, setDownloadProgress] = useState(0);
14
+ const [modelInstance] = useState(() => new SpeechToTextModule());
15
+ const [committedTranscription, setCommittedTranscription] = useState('');
16
+ const [nonCommittedTranscription, setNonCommittedTranscription] = useState('');
26
17
  useEffect(() => {
27
- const loadModel = async () => {
28
- await controllerInstance.load({
29
- modelName: model.modelName,
30
- encoderSource: model.encoderSource,
31
- decoderSource: model.decoderSource,
32
- tokenizerSource: model.tokenizerSource,
33
- onDownloadProgressCallback: setDownloadProgress
34
- });
35
- };
36
- if (!preventLoad) {
37
- loadModel();
18
+ if (preventLoad) return;
19
+ (async () => {
20
+ setDownloadProgress(0);
21
+ setError(null);
22
+ try {
23
+ setIsReady(false);
24
+ await modelInstance.load({
25
+ isMultilingual: model.isMultilingual,
26
+ encoderSource: model.encoderSource,
27
+ decoderSource: model.decoderSource,
28
+ tokenizerSource: model.tokenizerSource
29
+ }, setDownloadProgress);
30
+ setIsReady(true);
31
+ } catch (err) {
32
+ setError(err.message);
33
+ }
34
+ })();
35
+ }, [modelInstance, model.isMultilingual, model.encoderSource, model.decoderSource, model.tokenizerSource, preventLoad]);
36
+ const stateWrapper = useCallback(fn => async (...args) => {
37
+ if (!isReady) throw new Error(getError(ETError.ModuleNotLoaded));
38
+ if (isGenerating) throw new Error(getError(ETError.ModelGenerating));
39
+ setIsGenerating(true);
40
+ try {
41
+ return await fn.apply(modelInstance, args);
42
+ } finally {
43
+ setIsGenerating(false);
38
44
  }
39
- }, [controllerInstance, model.modelName, model.encoderSource, model.decoderSource, model.tokenizerSource, preventLoad]);
45
+ }, [isReady, isGenerating, modelInstance]);
46
+ const stream = useCallback(async () => {
47
+ if (!isReady) throw new Error(getError(ETError.ModuleNotLoaded));
48
+ if (isGenerating) throw new Error(getError(ETError.ModelGenerating));
49
+ setIsGenerating(true);
50
+ setCommittedTranscription('');
51
+ setNonCommittedTranscription('');
52
+ let transcription = '';
53
+ try {
54
+ for await (const {
55
+ committed,
56
+ nonCommitted
57
+ } of modelInstance.stream()) {
58
+ setCommittedTranscription(prev => prev + committed);
59
+ setNonCommittedTranscription(nonCommitted);
60
+ transcription += committed;
61
+ }
62
+ } finally {
63
+ setIsGenerating(false);
64
+ }
65
+ return transcription;
66
+ }, [isReady, isGenerating, modelInstance]);
67
+ const wrapper = useCallback(fn => {
68
+ return (...args) => {
69
+ if (!isReady) throw new Error(getError(ETError.ModuleNotLoaded));
70
+ return fn.apply(modelInstance, args);
71
+ };
72
+ }, [isReady, modelInstance]);
40
73
  return {
74
+ error,
41
75
  isReady,
42
76
  isGenerating,
43
77
  downloadProgress,
44
- configureStreaming: controllerInstance.configureStreaming,
45
- sequence,
46
- error,
47
- transcribe: (waveform, audioLanguage) => controllerInstance.transcribe(waveform, audioLanguage),
48
- streamingTranscribe: (streamAction, waveform, audioLanguage) => controllerInstance.streamingTranscribe(streamAction, waveform, audioLanguage)
78
+ committedTranscription,
79
+ nonCommittedTranscription,
80
+ encode: stateWrapper(SpeechToTextModule.prototype.encode),
81
+ decode: stateWrapper(SpeechToTextModule.prototype.decode),
82
+ transcribe: stateWrapper(SpeechToTextModule.prototype.transcribe),
83
+ stream,
84
+ streamStop: wrapper(SpeechToTextModule.prototype.streamStop),
85
+ streamInsert: wrapper(SpeechToTextModule.prototype.streamInsert)
49
86
  };
50
87
  };
51
88
  //# sourceMappingURL=useSpeechToText.js.map