Skip to content

Commit 2ccb469

Browse files
committed
Changed API Whisper -> ASR
1 parent 59bc422 commit 2ccb469

File tree

8 files changed

+28
-32
lines changed

8 files changed

+28
-32
lines changed

extension/android/CMakeLists.txt

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -239,11 +239,9 @@ if(EXECUTORCH_BUILD_LLAMA_JNI)
239239
endif()
240240
endif()
241241

242-
if(EXECUTORCH_BUILD_WHISPER_JNI)
243-
target_sources(executorch_jni PRIVATE jni/jni_layer_whisper.cpp jni/log.cpp)
244-
target_compile_definitions(
245-
executorch_jni PUBLIC EXECUTORCH_BUILD_WHISPER_JNI=1
246-
)
242+
if(EXECUTORCH_BUILD_ASR_JNI)
243+
target_sources(executorch_jni PRIVATE jni/jni_layer_asr.cpp jni/log.cpp)
244+
target_compile_definitions(executorch_jni PUBLIC EXECUTORCH_BUILD_ASR_JNI=1)
247245
if(QNN_SDK_ROOT)
248246
target_sources(
249247
executorch_jni
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
* <p>Warning: These APIs are experimental and subject to change without notice
1919
*/
2020
@Experimental
21-
public interface WhisperCallback {
21+
public interface ASRCallback {
2222
/**
2323
* Called when a new result is available from JNI. Users will keep getting onResult() invocations
2424
* until generate() finishes.
Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,20 @@
1414
import org.pytorch.executorch.annotations.Experimental;
1515

1616
/**
17-
* WhisperModule is a wrapper around the Executorch LLM. It provides a simple interface to generate text
18-
* from the model.
17+
* ASRModule is a wrapper around the Executorch ASR runners like Whisper runner.
1918
*
2019
* <p>Warning: These APIs are experimental and subject to change without notice
2120
*/
2221
@Experimental
23-
public class WhisperModule {
22+
public class ASRModule {
2423

2524
@DoNotStrip private final HybridData mHybridData;
2625

2726
@DoNotStrip
2827
private static native HybridData initHybrid(
2928
String modulePath, String tokenizerPath);
3029

31-
public WhisperModule(
30+
public ASRModule(
3231
String modulePath, String tokenizerPath) {
3332
ExecuTorchRuntime runtime = ExecuTorchRuntime.getRuntime();
3433

@@ -51,7 +50,7 @@ public void resetNative() {
5150
public native int transcribe(
5251
int seqLen,
5352
byte[][] inputs,
54-
WhisperCallback callback);
53+
ASRCallback callback);
5554

5655

5756
/** Force loading the module. Otherwise the model is loaded during first generate(). */
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
/** Extension for LLM related use cases for ExecuTorch Android Java/JNI package. */
1+
/** Extension for ASR related use cases for ExecuTorch Android Java/JNI package. */
22
package org.pytorch.executorch.extension.audio;

extension/android/jni/BUCK

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,15 +123,15 @@ non_fbcode_target(_kind = fb_android_cxx_library,
123123
)
124124

125125
non_fbcode_target(_kind = fb_android_cxx_library,
126-
name = "executorch_whisper_jni",
126+
name = "executorch_asr_jni",
127127
srcs = [
128128
"jni_layer.cpp",
129-
"jni_layer_whisper.cpp",
129+
"jni_layer_asr.cpp",
130130
"jni_layer_runtime.cpp",
131131
],
132132
allow_jni_merging = False,
133133
compiler_flags = ET_JNI_COMPILER_FLAGS + [
134-
"-DEXECUTORCH_BUILD_WHISPER_JNI",
134+
"-DEXECUTORCH_BUILD_ASR_JNI",
135135
],
136136
soname = "libexecutorch.$(ext)",
137137
visibility = ["PUBLIC"],

extension/android/jni/jni_layer.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -509,9 +509,9 @@ class ExecuTorchJni : public facebook::jni::HybridClass<ExecuTorchJni> {
509509
} // namespace executorch::extension
510510

511511
#ifdef EXECUTORCH_BUILD_WHISPER_JNI
512-
extern void register_natives_for_whisper();
512+
extern void register_natives_for_asr();
513513
#else
514-
void register_natives_for_whisper() {}
514+
void register_natives_for_asr() {}
515515
#endif
516516

517517
#ifdef EXECUTORCH_BUILD_LLAMA_JNI
@@ -532,7 +532,7 @@ void register_natives_for_training() {}
532532
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
533533
return facebook::jni::initialize(vm, [] {
534534
executorch::extension::ExecuTorchJni::registerNatives();
535-
register_natives_for_whisper();
535+
register_natives_for_asr();
536536
register_natives_for_llm();
537537
register_natives_for_runtime();
538538
register_natives_for_training();

extension/android/jni/jni_layer_whisper.cpp renamed to extension/android/jni/jni_layer_asr.cpp

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,14 @@ std::string token_buffer;
6767

6868
namespace executorch_jni {
6969

70-
class ExecuTorchWhisperCallbackJni
71-
: public facebook::jni::JavaClass<ExecuTorchWhisperCallbackJni> {
70+
class ExecuTorchASRCallbackJni
71+
: public facebook::jni::JavaClass<ExecuTorchASRCallbackJni> {
7272
public:
7373
constexpr static const char* kJavaDescriptor =
74-
"Lorg/pytorch/executorch/extension/audio/WhisperCallback;";
74+
"Lorg/pytorch/executorch/extension/audio/ASRCallback;";
7575

7676
void onResult(std::string result) const {
77-
static auto cls = ExecuTorchWhisperCallbackJni::javaClassStatic();
77+
static auto cls = ExecuTorchASRCallbackJni::javaClassStatic();
7878
static const auto method =
7979
cls->getMethod<void(facebook::jni::local_ref<jstring>)>("onResult");
8080

@@ -91,15 +91,14 @@ class ExecuTorchWhisperCallbackJni
9191
}
9292
};
9393

94-
class ExecuTorchWhisperJni
95-
: public facebook::jni::HybridClass<ExecuTorchWhisperJni> {
94+
class ExecuTorchASRJni : public facebook::jni::HybridClass<ExecuTorchASRJni> {
9695
private:
9796
friend HybridBase;
9897
std::unique_ptr<example::WhisperRunner> runner_;
9998

10099
public:
101100
constexpr static auto kJavaDescriptor =
102-
"Lorg/pytorch/executorch/extension/audio/WhisperModule;";
101+
"Lorg/pytorch/executorch/extension/audio/ASRModule;";
103102

104103
static facebook::jni::local_ref<jhybriddata> initHybrid(
105104
facebook::jni::alias_ref<jclass>,
@@ -108,7 +107,7 @@ class ExecuTorchWhisperJni
108107
return makeCxxInstance(model_path, tokenizer_path);
109108
}
110109

111-
ExecuTorchWhisperJni(
110+
ExecuTorchASRJni(
112111
facebook::jni::alias_ref<jstring> model_path,
113112
facebook::jni::alias_ref<jstring> tokenizer_path) {
114113
#if defined(ET_USE_THREADPOOL)
@@ -131,7 +130,7 @@ class ExecuTorchWhisperJni
131130
jint seq_len,
132131
facebook::jni::alias_ref<
133132
facebook::jni::JArrayClass<jbyteArray>::javaobject> inputs,
134-
facebook::jni::alias_ref<ExecuTorchWhisperCallbackJni> callback) {
133+
facebook::jni::alias_ref<ExecuTorchASRCallbackJni> callback) {
135134
// Convert Java byte[][] to C++ vector<vector<char>>
136135
std::vector<std::vector<char>> cppData;
137136
auto input_size = inputs->size();
@@ -162,15 +161,15 @@ class ExecuTorchWhisperJni
162161

163162
static void registerNatives() {
164163
registerHybrid({
165-
makeNativeMethod("initHybrid", ExecuTorchWhisperJni::initHybrid),
166-
makeNativeMethod("transcribe", ExecuTorchWhisperJni::transcribe),
167-
makeNativeMethod("load", ExecuTorchWhisperJni::load),
164+
makeNativeMethod("initHybrid", ExecuTorchASRJni::initHybrid),
165+
makeNativeMethod("transcribe", ExecuTorchASRJni::transcribe),
166+
makeNativeMethod("load", ExecuTorchASRJni::load),
168167
});
169168
}
170169
};
171170

172171
} // namespace executorch_jni
173172

174173
void register_natives_for_whisper() {
175-
executorch_jni::ExecuTorchWhisperJni::registerNatives();
174+
executorch_jni::ExecuTorchASRJni::registerNatives();
176175
}

scripts/build_android_library.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ build_android_native_library() {
4343
-DEXECUTORCH_BUILD_EXTENSION_LLM_RUNNER="${EXECUTORCH_BUILD_EXTENSION_LLM:-ON}" \
4444
-DEXECUTORCH_BUILD_EXTENSION_TRAINING=ON \
4545
-DEXECUTORCH_BUILD_LLAMA_JNI="${EXECUTORCH_BUILD_EXTENSION_LLM:-ON}" \
46-
-DEXECUTORCH_BUILD_WHISPER_JNI="${EXECUTORCH_BUILD_EXTENSION_AUDIO:-ON}" \
46+
-DEXECUTORCH_BUILD_ASR_JNI="${EXECUTORCH_BUILD_EXTENSION_AUDIO:-ON}" \
4747
-DEXECUTORCH_BUILD_NEURON="${EXECUTORCH_BUILD_NEURON}" \
4848
-DNEURON_BUFFER_ALLOCATOR_LIB="${NEURON_BUFFER_ALLOCATOR_LIB}" \
4949
-DEXECUTORCH_BUILD_QNN="${EXECUTORCH_BUILD_QNN}" \

0 commit comments

Comments
 (0)