react-native-executorch 0.5.15 → 0.6.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/README.md +42 -36
- package/android/CMakeLists.txt +13 -25
- package/android/build.gradle +2 -3
- package/android/libs/classes.jar +0 -0
- package/android/src/main/cpp/CMakeLists.txt +2 -1
- package/common/rnexecutorch/RnExecutorchInstaller.cpp +18 -0
- package/common/rnexecutorch/TokenizerModule.cpp +3 -3
- package/common/rnexecutorch/data_processing/Numerical.cpp +31 -23
- package/common/rnexecutorch/data_processing/Numerical.h +6 -1
- package/common/rnexecutorch/data_processing/dsp.cpp +0 -46
- package/common/rnexecutorch/host_objects/JsiConversions.h +16 -0
- package/common/rnexecutorch/host_objects/ModelHostObject.h +26 -11
- package/common/rnexecutorch/jsi/OwningArrayBuffer.h +19 -2
- package/common/rnexecutorch/metaprogramming/TypeConcepts.h +0 -20
- package/common/rnexecutorch/models/BaseModel.cpp +12 -11
- package/common/rnexecutorch/models/BaseModel.h +18 -10
- package/common/rnexecutorch/models/embeddings/BaseEmbeddings.cpp +3 -11
- package/common/rnexecutorch/models/embeddings/text/TextEmbeddings.cpp +0 -1
- package/common/rnexecutorch/models/image_segmentation/ImageSegmentation.cpp +6 -12
- package/common/rnexecutorch/models/llm/LLM.cpp +25 -8
- package/common/rnexecutorch/models/llm/LLM.h +4 -4
- package/common/rnexecutorch/models/ocr/CTCLabelConverter.h +1 -1
- package/common/rnexecutorch/models/ocr/utils/RecognitionHandlerUtils.cpp +7 -4
- package/common/rnexecutorch/models/speech_to_text/SpeechToText.cpp +8 -13
- package/common/rnexecutorch/models/speech_to_text/SpeechToText.h +1 -3
- package/common/rnexecutorch/models/speech_to_text/asr/ASR.cpp +12 -19
- package/common/rnexecutorch/models/speech_to_text/asr/ASR.h +4 -5
- package/common/rnexecutorch/models/text_to_image/Constants.h +9 -0
- package/common/rnexecutorch/models/text_to_image/Decoder.cpp +32 -0
- package/common/rnexecutorch/models/text_to_image/Decoder.h +24 -0
- package/common/rnexecutorch/models/text_to_image/Encoder.cpp +44 -0
- package/common/rnexecutorch/models/text_to_image/Encoder.h +32 -0
- package/common/rnexecutorch/models/text_to_image/Scheduler.cpp +152 -0
- package/common/rnexecutorch/models/text_to_image/Scheduler.h +41 -0
- package/common/rnexecutorch/models/text_to_image/TextToImage.cpp +141 -0
- package/common/rnexecutorch/models/text_to_image/TextToImage.h +64 -0
- package/common/rnexecutorch/models/text_to_image/UNet.cpp +38 -0
- package/common/rnexecutorch/models/text_to_image/UNet.h +28 -0
- package/common/rnexecutorch/models/voice_activity_detection/Constants.h +27 -0
- package/common/rnexecutorch/models/voice_activity_detection/Types.h +12 -0
- package/common/rnexecutorch/models/voice_activity_detection/Utils.cpp +15 -0
- package/common/rnexecutorch/models/voice_activity_detection/Utils.h +13 -0
- package/common/rnexecutorch/models/voice_activity_detection/VoiceActivityDetection.cpp +160 -0
- package/common/rnexecutorch/models/voice_activity_detection/VoiceActivityDetection.h +36 -0
- package/common/rnexecutorch/tests/CMakeLists.txt +30 -0
- package/common/rnexecutorch/tests/NumericalTest.cpp +110 -0
- package/common/rnexecutorch/tests/README.md +30 -13
- package/common/rnexecutorch/threads/GlobalThreadPool.h +4 -0
- package/common/runner/arange_util.cpp +44 -0
- package/common/runner/arange_util.h +37 -0
- package/common/runner/constants.h +28 -0
- package/common/runner/io_manager.h +240 -0
- package/common/runner/irunner.h +87 -16
- package/common/runner/kernel_includes.h +23 -0
- package/common/runner/runner.cpp +151 -66
- package/common/runner/runner.h +39 -22
- package/common/runner/sampler.cpp +8 -1
- package/common/runner/sampler.h +4 -2
- package/common/runner/stats.h +1 -4
- package/common/runner/text_decoder_runner.cpp +26 -12
- package/common/runner/text_decoder_runner.h +52 -31
- package/common/runner/text_prefiller.cpp +46 -12
- package/common/runner/text_prefiller.h +38 -4
- package/common/runner/text_token_generator.h +51 -26
- package/common/runner/util.h +53 -8
- package/ios/RnExecutorch.xcodeproj/project.pbxproj +0 -23
- package/lib/module/Error.js +1 -0
- package/lib/module/Error.js.map +1 -1
- package/lib/module/constants/directories.js +1 -1
- package/lib/module/constants/directories.js.map +1 -1
- package/lib/module/constants/modelUrls.js +32 -1
- package/lib/module/constants/modelUrls.js.map +1 -1
- package/lib/module/constants/ocr/models.js +7 -7
- package/lib/module/constants/ocr/models.js.map +1 -1
- package/lib/module/constants/ocr/symbols.js +3 -2
- package/lib/module/constants/ocr/symbols.js.map +1 -1
- package/lib/module/controllers/LLMController.js +10 -1
- package/lib/module/controllers/LLMController.js.map +1 -1
- package/lib/module/controllers/OCRController.js +3 -3
- package/lib/module/controllers/OCRController.js.map +1 -1
- package/lib/module/controllers/VerticalOCRController.js +2 -2
- package/lib/module/controllers/VerticalOCRController.js.map +1 -1
- package/lib/module/hooks/computer_vision/useOCR.js +3 -3
- package/lib/module/hooks/computer_vision/useOCR.js.map +1 -1
- package/lib/module/hooks/{useNonStaticModule.js → computer_vision/useTextToImage.js} +21 -16
- package/lib/module/hooks/computer_vision/useTextToImage.js.map +1 -0
- package/lib/module/hooks/computer_vision/useVerticalOCR.js +3 -3
- package/lib/module/hooks/computer_vision/useVerticalOCR.js.map +1 -1
- package/lib/module/hooks/natural_language_processing/useLLM.js +3 -3
- package/lib/module/hooks/natural_language_processing/useLLM.js.map +1 -1
- package/lib/module/hooks/natural_language_processing/useTokenizer.js +5 -5
- package/lib/module/hooks/natural_language_processing/useTokenizer.js.map +1 -1
- package/lib/module/hooks/natural_language_processing/useVAD.js +13 -0
- package/lib/module/hooks/natural_language_processing/useVAD.js.map +1 -0
- package/lib/module/index.js +7 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/modules/computer_vision/OCRModule.js +2 -2
- package/lib/module/modules/computer_vision/OCRModule.js.map +1 -1
- package/lib/module/modules/computer_vision/TextToImageModule.js +48 -0
- package/lib/module/modules/computer_vision/TextToImageModule.js.map +1 -0
- package/lib/module/modules/computer_vision/VerticalOCRModule.js +2 -2
- package/lib/module/modules/computer_vision/VerticalOCRModule.js.map +1 -1
- package/lib/module/modules/natural_language_processing/SpeechToTextModule.js +7 -4
- package/lib/module/modules/natural_language_processing/SpeechToTextModule.js.map +1 -1
- package/lib/module/modules/natural_language_processing/VADModule.js +19 -0
- package/lib/module/modules/natural_language_processing/VADModule.js.map +1 -0
- package/lib/module/types/llm.js.map +1 -1
- package/lib/module/types/vad.js +2 -0
- package/lib/module/types/vad.js.map +1 -0
- package/lib/module/utils/ResourceFetcher.js +2 -1
- package/lib/module/utils/ResourceFetcher.js.map +1 -1
- package/lib/module/utils/ResourceFetcherUtils.js +6 -6
- package/lib/module/utils/ResourceFetcherUtils.js.map +1 -1
- package/lib/typescript/Error.d.ts +1 -0
- package/lib/typescript/Error.d.ts.map +1 -1
- package/lib/typescript/constants/modelUrls.d.ts +23 -0
- package/lib/typescript/constants/modelUrls.d.ts.map +1 -1
- package/lib/typescript/constants/ocr/symbols.d.ts +1 -1
- package/lib/typescript/constants/ocr/symbols.d.ts.map +1 -1
- package/lib/typescript/controllers/LLMController.d.ts.map +1 -1
- package/lib/typescript/controllers/OCRController.d.ts +1 -1
- package/lib/typescript/controllers/OCRController.d.ts.map +1 -1
- package/lib/typescript/controllers/VerticalOCRController.d.ts +1 -1
- package/lib/typescript/controllers/VerticalOCRController.d.ts.map +1 -1
- package/lib/typescript/hooks/computer_vision/useOCR.d.ts +1 -1
- package/lib/typescript/hooks/computer_vision/useOCR.d.ts.map +1 -1
- package/lib/typescript/hooks/computer_vision/useTextToImage.d.ts +22 -0
- package/lib/typescript/hooks/computer_vision/useTextToImage.d.ts.map +1 -0
- package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts +1 -1
- package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts.map +1 -1
- package/lib/typescript/hooks/natural_language_processing/useLLM.d.ts.map +1 -1
- package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts +2 -2
- package/lib/typescript/hooks/natural_language_processing/useVAD.d.ts +16 -0
- package/lib/typescript/hooks/natural_language_processing/useVAD.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +8 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/modules/computer_vision/OCRModule.d.ts +1 -1
- package/lib/typescript/modules/computer_vision/OCRModule.d.ts.map +1 -1
- package/lib/typescript/modules/computer_vision/TextToImageModule.d.ts +16 -0
- package/lib/typescript/modules/computer_vision/TextToImageModule.d.ts.map +1 -0
- package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts +1 -1
- package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts.map +1 -1
- package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts +3 -2
- package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts.map +1 -1
- package/lib/typescript/modules/natural_language_processing/VADModule.d.ts +10 -0
- package/lib/typescript/modules/natural_language_processing/VADModule.d.ts.map +1 -0
- package/lib/typescript/types/llm.d.ts +2 -0
- package/lib/typescript/types/llm.d.ts.map +1 -1
- package/lib/typescript/types/vad.d.ts +5 -0
- package/lib/typescript/types/vad.d.ts.map +1 -0
- package/lib/typescript/utils/ResourceFetcher.d.ts +29 -0
- package/lib/typescript/utils/ResourceFetcher.d.ts.map +1 -1
- package/lib/typescript/utils/ResourceFetcherUtils.d.ts +2 -2
- package/lib/typescript/utils/ResourceFetcherUtils.d.ts.map +1 -1
- package/package.json +11 -8
- package/react-native-executorch.podspec +9 -9
- package/src/Error.ts +1 -0
- package/src/constants/directories.ts +1 -1
- package/src/constants/modelUrls.ts +36 -1
- package/src/constants/ocr/models.ts +7 -7
- package/src/constants/ocr/symbols.ts +3 -2
- package/src/controllers/LLMController.ts +12 -1
- package/src/controllers/OCRController.ts +3 -3
- package/src/controllers/VerticalOCRController.ts +2 -2
- package/src/hooks/computer_vision/useOCR.ts +4 -5
- package/src/hooks/computer_vision/useTextToImage.ts +92 -0
- package/src/hooks/computer_vision/useVerticalOCR.ts +4 -5
- package/src/hooks/natural_language_processing/useLLM.ts +3 -4
- package/src/hooks/natural_language_processing/useTokenizer.ts +5 -5
- package/src/hooks/natural_language_processing/useVAD.ts +15 -0
- package/src/index.ts +20 -1
- package/src/modules/computer_vision/OCRModule.ts +2 -2
- package/src/modules/computer_vision/TextToImageModule.ts +93 -0
- package/src/modules/computer_vision/VerticalOCRModule.ts +2 -2
- package/src/modules/natural_language_processing/SpeechToTextModule.ts +8 -4
- package/src/modules/natural_language_processing/VADModule.ts +27 -0
- package/src/types/llm.ts +2 -0
- package/src/types/vad.ts +4 -0
- package/src/utils/ResourceFetcher.ts +2 -1
- package/src/utils/ResourceFetcherUtils.ts +8 -8
- package/third-party/android/libs/cpuinfo/arm64-v8a/libcpuinfo.so +0 -0
- package/third-party/android/libs/executorch/arm64-v8a/libexecutorch.so +0 -0
- package/third-party/android/libs/executorch/x86_64/libexecutorch.so +0 -0
- package/third-party/android/libs/pthreadpool/arm64-v8a/libpthreadpool.so +0 -0
- package/third-party/include/c10/macros/Export.h +0 -78
- package/third-party/include/c10/macros/Macros.h +1 -520
- package/third-party/include/c10/util/BFloat16-inl.h +1 -339
- package/third-party/include/c10/util/BFloat16.h +1 -122
- package/third-party/include/c10/util/Half-inl.h +1 -347
- package/third-party/include/c10/util/Half.h +6 -419
- package/third-party/include/c10/util/TypeSafeSignMath.h +1 -133
- package/third-party/include/c10/util/bit_cast.h +1 -43
- package/third-party/include/c10/util/complex.h +1 -568
- package/third-party/include/c10/util/floating_point_utils.h +1 -33
- package/third-party/include/c10/util/irange.h +1 -1
- package/third-party/include/c10/util/llvmMathExtras.h +866 -0
- package/third-party/include/c10/util/safe_numerics.h +97 -0
- package/third-party/include/executorch/ExecuTorchError.h +6 -7
- package/third-party/include/executorch/ExecuTorchLLM/ExecuTorchLLM.h +12 -0
- package/third-party/include/executorch/ExecuTorchLLM/ExecuTorchLLMConfig.h +56 -0
- package/third-party/include/executorch/ExecuTorchLLM/ExecuTorchLLMError.h +16 -0
- package/third-party/include/executorch/ExecuTorchLLM/ExecuTorchLLMMultimodalRunner.h +227 -0
- package/third-party/include/executorch/ExecuTorchLLM/ExecuTorchLLMTextRunner.h +97 -0
- package/third-party/include/executorch/ExecuTorchLLM/module.modulemap +4 -0
- package/third-party/include/executorch/ExecuTorchLog.h +1 -0
- package/third-party/include/executorch/ExecuTorchModule.h +177 -4
- package/third-party/include/executorch/ExecuTorchTensor.h +3 -4
- package/third-party/include/executorch/ExecuTorchValue.h +1 -7
- package/third-party/include/executorch/extension/module/module.h +139 -8
- package/third-party/include/executorch/extension/tensor/tensor.h +1 -0
- package/third-party/include/executorch/extension/tensor/tensor_ptr.h +88 -26
- package/third-party/include/executorch/extension/threadpool/threadpool.h +4 -1
- package/third-party/include/executorch/runtime/backend/backend_init_context.h +6 -0
- package/third-party/include/executorch/runtime/backend/interface.h +1 -1
- package/third-party/include/executorch/runtime/core/error.h +76 -49
- package/third-party/include/executorch/runtime/core/exec_aten/util/scalar_type_util.h +18 -4
- package/third-party/include/executorch/runtime/core/memory_allocator.h +12 -2
- package/third-party/include/executorch/runtime/core/named_data_map.h +1 -11
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +0 -78
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +1 -520
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +1 -339
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +1 -122
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +1 -347
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half.h +6 -419
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +1 -133
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +1 -43
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/complex.h +1 -568
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +1 -33
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/irange.h +1 -1
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/llvmMathExtras.h +866 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/safe_numerics.h +97 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/macros/Export.h +66 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/macros/Macros.h +553 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/BFloat16.h +477 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/Half.h +781 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/TypeSafeSignMath.h +141 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/bit_cast.h +49 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/complex.h +593 -0
- package/third-party/include/executorch/runtime/core/portable_type/c10/torch/headeronly/util/floating_point_utils.h +38 -0
- package/third-party/include/executorch/runtime/core/tensor_layout.h +1 -1
- package/third-party/include/executorch/runtime/executor/merged_data_map.h +142 -0
- package/third-party/include/executorch/runtime/executor/method.h +21 -8
- package/third-party/include/executorch/runtime/executor/method_meta.h +20 -2
- package/third-party/include/executorch/runtime/executor/program.h +0 -10
- package/third-party/include/executorch/runtime/kernel/operator_registry.h +1 -1
- package/third-party/include/executorch/runtime/platform/compiler.h +2 -0
- package/third-party/include/executorch/schema/extended_header.h +10 -1
- package/third-party/include/torch/headeronly/macros/Export.h +66 -0
- package/third-party/include/torch/headeronly/macros/Macros.h +553 -0
- package/third-party/include/torch/headeronly/util/BFloat16.h +477 -0
- package/third-party/include/torch/headeronly/util/Half.h +781 -0
- package/third-party/include/torch/headeronly/util/TypeSafeSignMath.h +141 -0
- package/third-party/include/torch/headeronly/util/bit_cast.h +49 -0
- package/third-party/include/torch/headeronly/util/complex.h +593 -0
- package/third-party/include/torch/headeronly/util/floating_point_utils.h +38 -0
- package/third-party/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/ExecutorchLib +0 -0
- package/third-party/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Info.plist +0 -0
- package/third-party/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/ExecutorchLib +0 -0
- package/third-party/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Info.plist +0 -0
- package/common/rnexecutorch/tests/run_all_tests.sh +0 -14
- package/common/rnexecutorch/tests/run_test.sh +0 -18
- package/ios/RnExecutorch/utils/Conversions.h +0 -14
- package/ios/RnExecutorch/utils/ETError.h +0 -26
- package/ios/RnExecutorch/utils/ImageProcessor.h +0 -15
- package/ios/RnExecutorch/utils/ImageProcessor.mm +0 -147
- package/ios/RnExecutorch/utils/Numerical.h +0 -3
- package/ios/RnExecutorch/utils/Numerical.mm +0 -18
- package/ios/RnExecutorch/utils/ScalarType.h +0 -14
- package/ios/RnExecutorch/utils/ScalarType.mm +0 -21
- package/lib/module/hooks/useNonStaticModule.js.map +0 -1
- package/lib/typescript/hooks/useNonStaticModule.d.ts +0 -21
- package/lib/typescript/hooks/useNonStaticModule.d.ts.map +0 -1
- package/src/hooks/useNonStaticModule.ts +0 -74
- package/third-party/include/executorch/extension/kernel_util/make_boxed_from_unboxed_functor.h +0 -181
- package/third-party/include/executorch/extension/kernel_util/meta_programming.h +0 -108
- package/third-party/include/executorch/extension/kernel_util/type_list.h +0 -137
- package/third-party/include/executorch/extension/threadpool/threadpool_guard.h +0 -35
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { ResourceFetcher } from '../../utils/ResourceFetcher';
|
|
2
|
+
import { ResourceSource } from '../../types/common';
|
|
3
|
+
import { BaseModule } from '../BaseModule';
|
|
4
|
+
import { Buffer } from 'buffer';
|
|
5
|
+
import { PNG } from 'pngjs/browser';
|
|
6
|
+
|
|
7
|
+
export class TextToImageModule extends BaseModule {
|
|
8
|
+
private inferenceCallback: (stepIdx: number) => void;
|
|
9
|
+
|
|
10
|
+
constructor(inferenceCallback?: (stepIdx: number) => void) {
|
|
11
|
+
super();
|
|
12
|
+
this.inferenceCallback = (stepIdx: number) => {
|
|
13
|
+
inferenceCallback?.(stepIdx);
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async load(
|
|
18
|
+
model: {
|
|
19
|
+
tokenizerSource: ResourceSource;
|
|
20
|
+
schedulerSource: ResourceSource;
|
|
21
|
+
encoderSource: ResourceSource;
|
|
22
|
+
unetSource: ResourceSource;
|
|
23
|
+
decoderSource: ResourceSource;
|
|
24
|
+
},
|
|
25
|
+
onDownloadProgressCallback: (progress: number) => void = () => {}
|
|
26
|
+
): Promise<void> {
|
|
27
|
+
const results = await ResourceFetcher.fetch(
|
|
28
|
+
onDownloadProgressCallback,
|
|
29
|
+
model.tokenizerSource,
|
|
30
|
+
model.schedulerSource,
|
|
31
|
+
model.encoderSource,
|
|
32
|
+
model.unetSource,
|
|
33
|
+
model.decoderSource
|
|
34
|
+
);
|
|
35
|
+
if (!results) {
|
|
36
|
+
throw new Error('Failed to fetch one or more resources.');
|
|
37
|
+
}
|
|
38
|
+
const [tokenizerPath, schedulerPath, encoderPath, unetPath, decoderPath] =
|
|
39
|
+
results;
|
|
40
|
+
|
|
41
|
+
if (
|
|
42
|
+
!tokenizerPath ||
|
|
43
|
+
!schedulerPath ||
|
|
44
|
+
!encoderPath ||
|
|
45
|
+
!unetPath ||
|
|
46
|
+
!decoderPath
|
|
47
|
+
) {
|
|
48
|
+
throw new Error('Download interrupted.');
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const response = await fetch('file://' + schedulerPath);
|
|
52
|
+
const schedulerConfig = await response.json();
|
|
53
|
+
|
|
54
|
+
this.nativeModule = global.loadTextToImage(
|
|
55
|
+
tokenizerPath,
|
|
56
|
+
encoderPath,
|
|
57
|
+
unetPath,
|
|
58
|
+
decoderPath,
|
|
59
|
+
schedulerConfig.beta_start,
|
|
60
|
+
schedulerConfig.beta_end,
|
|
61
|
+
schedulerConfig.num_train_timesteps,
|
|
62
|
+
schedulerConfig.steps_offset
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
async forward(
|
|
67
|
+
input: string,
|
|
68
|
+
imageSize: number = 512,
|
|
69
|
+
numSteps: number = 5,
|
|
70
|
+
seed?: number
|
|
71
|
+
): Promise<string> {
|
|
72
|
+
const output = await this.nativeModule.generate(
|
|
73
|
+
input,
|
|
74
|
+
imageSize,
|
|
75
|
+
numSteps,
|
|
76
|
+
seed ? seed : -1,
|
|
77
|
+
this.inferenceCallback
|
|
78
|
+
);
|
|
79
|
+
const outputArray = new Uint8Array(output);
|
|
80
|
+
if (!outputArray.length) {
|
|
81
|
+
return '';
|
|
82
|
+
}
|
|
83
|
+
const png = new PNG({ width: imageSize, height: imageSize });
|
|
84
|
+
png.data = Buffer.from(outputArray);
|
|
85
|
+
const pngBuffer = PNG.sync.write(png, { colorType: 6 });
|
|
86
|
+
const pngString = pngBuffer.toString('base64');
|
|
87
|
+
return pngString;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
public interrupt(): void {
|
|
91
|
+
this.nativeModule.interrupt();
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -43,6 +43,10 @@ export class SpeechToTextModule {
|
|
|
43
43
|
);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
public delete(): void {
|
|
47
|
+
this.nativeModule.unload();
|
|
48
|
+
}
|
|
49
|
+
|
|
46
50
|
public async encode(
|
|
47
51
|
waveform: Float32Array | number[]
|
|
48
52
|
): Promise<Float32Array> {
|
|
@@ -150,18 +154,18 @@ export class SpeechToTextModule {
|
|
|
150
154
|
}
|
|
151
155
|
}
|
|
152
156
|
|
|
153
|
-
public
|
|
157
|
+
public streamInsert(waveform: Float32Array | number[]): void {
|
|
154
158
|
if (Array.isArray(waveform)) {
|
|
155
159
|
Logger.info(
|
|
156
160
|
'Passing waveform as number[] is deprecated, use Float32Array instead'
|
|
157
161
|
);
|
|
158
162
|
waveform = new Float32Array(waveform);
|
|
159
163
|
}
|
|
160
|
-
|
|
164
|
+
this.nativeModule.streamInsert(waveform);
|
|
161
165
|
}
|
|
162
166
|
|
|
163
|
-
public
|
|
164
|
-
|
|
167
|
+
public streamStop(): void {
|
|
168
|
+
this.nativeModule.streamStop();
|
|
165
169
|
}
|
|
166
170
|
|
|
167
171
|
private validateOptions(options: DecodingOptions) {
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ResourceFetcher } from '../../utils/ResourceFetcher';
|
|
2
|
+
import { ResourceSource } from '../../types/common';
|
|
3
|
+
import { Segment } from '../../types/vad';
|
|
4
|
+
import { ETError, getError } from '../../Error';
|
|
5
|
+
import { BaseModule } from '../BaseModule';
|
|
6
|
+
|
|
7
|
+
export class VADModule extends BaseModule {
|
|
8
|
+
async load(
|
|
9
|
+
model: { modelSource: ResourceSource },
|
|
10
|
+
onDownloadProgressCallback: (progress: number) => void = () => {}
|
|
11
|
+
): Promise<void> {
|
|
12
|
+
const paths = await ResourceFetcher.fetch(
|
|
13
|
+
onDownloadProgressCallback,
|
|
14
|
+
model.modelSource
|
|
15
|
+
);
|
|
16
|
+
if (paths === null || paths.length < 1) {
|
|
17
|
+
throw new Error('Download interrupted.');
|
|
18
|
+
}
|
|
19
|
+
this.nativeModule = global.loadVAD(paths[0] || '');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
async forward(waveform: Float32Array): Promise<Segment[]> {
|
|
23
|
+
if (this.nativeModule == null)
|
|
24
|
+
throw new Error(getError(ETError.ModuleNotLoaded));
|
|
25
|
+
return await this.nativeModule.generate(waveform);
|
|
26
|
+
}
|
|
27
|
+
}
|
package/src/types/llm.ts
CHANGED
package/src/types/vad.ts
ADDED
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
* - Implements linked list behavior via the `.next` attribute
|
|
28
28
|
* - Automatically processes subsequent downloads when `.next` contains a valid resource
|
|
29
29
|
*/
|
|
30
|
+
|
|
30
31
|
import {
|
|
31
32
|
cacheDirectory,
|
|
32
33
|
copyAsync,
|
|
@@ -37,7 +38,7 @@ import {
|
|
|
37
38
|
EncodingType,
|
|
38
39
|
deleteAsync,
|
|
39
40
|
readDirectoryAsync,
|
|
40
|
-
} from 'expo-file-system';
|
|
41
|
+
} from 'expo-file-system/legacy';
|
|
41
42
|
import { Asset } from 'expo-asset';
|
|
42
43
|
import { Platform } from 'react-native';
|
|
43
44
|
import { RNEDirectory } from '../constants/directories';
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
import { RNEDirectory } from '../constants/directories';
|
|
2
|
+
import { ResourceSource } from '../types/common';
|
|
3
|
+
import { Asset } from 'expo-asset';
|
|
4
|
+
import { Logger } from '../common/Logger';
|
|
5
|
+
|
|
1
6
|
/**
|
|
2
7
|
* @internal
|
|
3
8
|
*/
|
|
4
|
-
|
|
5
9
|
import {
|
|
6
|
-
DownloadResumable,
|
|
7
10
|
getInfoAsync,
|
|
8
11
|
makeDirectoryAsync,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
import { ResourceSource } from '../types/common';
|
|
12
|
-
import { Asset } from 'expo-asset';
|
|
13
|
-
import { Logger } from '../common/Logger';
|
|
12
|
+
type DownloadResumable,
|
|
13
|
+
} from 'expo-file-system/legacy';
|
|
14
14
|
|
|
15
15
|
export const enum HTTP_CODE {
|
|
16
16
|
OK = 200,
|
|
@@ -75,7 +75,7 @@ export namespace ResourceFetcherUtils {
|
|
|
75
75
|
let totalLength = 0;
|
|
76
76
|
let previousFilesTotalLength = 0;
|
|
77
77
|
for (const source of sources) {
|
|
78
|
-
const type =
|
|
78
|
+
const type = ResourceFetcherUtils.getType(source);
|
|
79
79
|
let length = 0;
|
|
80
80
|
try {
|
|
81
81
|
if (type === SourceType.REMOTE_FILE && typeof source === 'string') {
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
@@ -1,79 +1 @@
|
|
|
1
|
-
#define C10_USING_CUSTOM_GENERATED_MACROS
|
|
2
|
-
#ifndef C10_MACROS_EXPORT_H_
|
|
3
|
-
#define C10_MACROS_EXPORT_H_
|
|
4
|
-
|
|
5
|
-
#ifndef C10_USING_CUSTOM_GENERATED_MACROS
|
|
6
|
-
#include <c10/macros/cmake_macros.h>
|
|
7
|
-
#endif // C10_USING_CUSTOM_GENERATED_MACROS
|
|
8
|
-
|
|
9
1
|
#include <torch/headeronly/macros/Export.h>
|
|
10
|
-
|
|
11
|
-
// This one is being used by libtorch.so
|
|
12
|
-
#ifdef CAFFE2_BUILD_MAIN_LIB
|
|
13
|
-
#define TORCH_API C10_EXPORT
|
|
14
|
-
#else
|
|
15
|
-
#define TORCH_API C10_IMPORT
|
|
16
|
-
#endif
|
|
17
|
-
|
|
18
|
-
// You may be wondering: Whose brilliant idea was it to split torch_cuda into
|
|
19
|
-
// two pieces with confusing names?
|
|
20
|
-
// Once upon a time, there _was_ only TORCH_CUDA_API. All was happy until we
|
|
21
|
-
// tried to compile PyTorch for CUDA 11.1, which ran into relocation marker
|
|
22
|
-
// issues when linking big binaries.
|
|
23
|
-
// (https://github.com/pytorch/pytorch/issues/39968) We had two choices:
|
|
24
|
-
// (1) Stop supporting so many GPU architectures
|
|
25
|
-
// (2) Do something else
|
|
26
|
-
// We chose #2 and decided to split the behemoth that was torch_cuda into two
|
|
27
|
-
// smaller libraries, one with most of the core kernel functions (torch_cuda_cu)
|
|
28
|
-
// and the other that had..well..everything else (torch_cuda_cpp). The idea was
|
|
29
|
-
// this: instead of linking our static libraries (like the hefty
|
|
30
|
-
// libcudnn_static.a) with another huge library, torch_cuda, and run into pesky
|
|
31
|
-
// relocation marker issues, we could link our static libraries to a smaller
|
|
32
|
-
// part of torch_cuda (torch_cuda_cpp) and avoid the issues.
|
|
33
|
-
|
|
34
|
-
// libtorch_cuda_cu.so
|
|
35
|
-
#ifdef TORCH_CUDA_CU_BUILD_MAIN_LIB
|
|
36
|
-
#define TORCH_CUDA_CU_API C10_EXPORT
|
|
37
|
-
#elif defined(BUILD_SPLIT_CUDA)
|
|
38
|
-
#define TORCH_CUDA_CU_API C10_IMPORT
|
|
39
|
-
#endif
|
|
40
|
-
|
|
41
|
-
// libtorch_cuda_cpp.so
|
|
42
|
-
#ifdef TORCH_CUDA_CPP_BUILD_MAIN_LIB
|
|
43
|
-
#define TORCH_CUDA_CPP_API C10_EXPORT
|
|
44
|
-
#elif defined(BUILD_SPLIT_CUDA)
|
|
45
|
-
#define TORCH_CUDA_CPP_API C10_IMPORT
|
|
46
|
-
#endif
|
|
47
|
-
|
|
48
|
-
// libtorch_cuda.so (where torch_cuda_cu and torch_cuda_cpp are a part of the
|
|
49
|
-
// same api)
|
|
50
|
-
#ifdef TORCH_CUDA_BUILD_MAIN_LIB
|
|
51
|
-
#define TORCH_CUDA_CPP_API C10_EXPORT
|
|
52
|
-
#define TORCH_CUDA_CU_API C10_EXPORT
|
|
53
|
-
#elif !defined(BUILD_SPLIT_CUDA)
|
|
54
|
-
#define TORCH_CUDA_CPP_API C10_IMPORT
|
|
55
|
-
#define TORCH_CUDA_CU_API C10_IMPORT
|
|
56
|
-
#endif
|
|
57
|
-
|
|
58
|
-
#if defined(TORCH_HIP_BUILD_MAIN_LIB)
|
|
59
|
-
#define TORCH_HIP_CPP_API C10_EXPORT
|
|
60
|
-
#define TORCH_HIP_API C10_EXPORT
|
|
61
|
-
#else
|
|
62
|
-
#define TORCH_HIP_CPP_API C10_IMPORT
|
|
63
|
-
#define TORCH_HIP_API C10_IMPORT
|
|
64
|
-
#endif
|
|
65
|
-
|
|
66
|
-
#if defined(TORCH_XPU_BUILD_MAIN_LIB)
|
|
67
|
-
#define TORCH_XPU_API C10_EXPORT
|
|
68
|
-
#else
|
|
69
|
-
#define TORCH_XPU_API C10_IMPORT
|
|
70
|
-
#endif
|
|
71
|
-
|
|
72
|
-
// Enums only need to be exported on windows for non-CUDA files
|
|
73
|
-
#if defined(_WIN32) && defined(__CUDACC__)
|
|
74
|
-
#define C10_API_ENUM C10_API
|
|
75
|
-
#else
|
|
76
|
-
#define C10_API_ENUM
|
|
77
|
-
#endif
|
|
78
|
-
|
|
79
|
-
#endif // C10_MACROS_EXPORT_H_
|