sherpa-onnx icon indicating copy to clipboard operation
sherpa-onnx copied to clipboard

sherpa onnx 的 jnilibs 好了,但是 其他想用onnx 推理的 模型无法找到onnx环境

Open hariji814 opened this issue 8 months ago • 9 comments

1、这个是日志

FATAL EXCEPTION: textTranslation Process: com.example.aartest, PID: 13235 java.lang.NoClassDefFoundError: Failed resolution of: Lai/onnxruntime/OrtEnvironment; at android.yan.kernel.translate.Translator$1.run(Translator.java:98) Caused by: java.lang.ClassNotFoundException: Didn't find class "ai.onnxruntime.OrtEnvironment" on path: DexPathList[[zip file "/data/app/~~JCTw255ZQ2sW71_agJPkQA==/com.example.aartest-cGT4KKr4Z9wQMCGedTZ5FQ==/base.apk"],nativeLibraryDirectories=[/data/app/~~JCTw255ZQ2sW71_agJPkQA==/com.example.aartest-cGT4KKr4Z9wQMCGedTZ5FQ==/lib/arm64, /data/app/~~JCTw255ZQ2sW71_agJPkQA==/com.example.aartest-cGT4KKr4Z9wQMCGedTZ5FQ==/base.apk!/lib/arm64-v8a, /system/lib64, /system_ext/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259) at java.lang.ClassLoader.loadClass(ClassLoader.java:637) at java.lang.ClassLoader.loadClass(ClassLoader.java:573) ... 1 more

2、这个是依赖:

dependencies { // Add Json dependency implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3") // implementation("com.google.mlkit:translate:17.0.3") // Ml-Kit implementation("com.google.mlkit:language-id:17.0.6") implementation("com.microsoft.onnxruntime:onnxruntime-android:1.17.1") implementation("com.microsoft.onnxruntime:onnxruntime-extensions-android:0.11.0") // JWS parser implementation("com.nimbusds:nimbus-jose-jwt:5.1") // Room library (database) val roomVersion = "2.1.0" implementation("androidx.room:room-runtime:$roomVersion") implementation("androidx.room:room-compiler:$roomVersion") // use kapt for Kotlin // optional - RxJava support for Room implementation("androidx.room:room-rxjava2:$roomVersion") // optional - Guava support for Room, including Optional and ListenableFuture implementation("androidx.room:room-guava:$roomVersion") // Test helpers testImplementation("androidx.room:room-testing:$roomVersion") // Tests testImplementation("junit:junit:4.12") androidTestImplementation("androidx.test:runner:1.2.0") androidTestImplementation("androidx.test.espresso:espresso-core:3.2.0") }

hariji814 avatar Mar 14 '25 10:03 hariji814

没看懂你要做什么

csukuangfj avatar Mar 14 '25 23:03 csukuangfj

Image

hariji814 avatar Mar 17 '25 01:03 hariji814

没看懂你要做什么

这里 语音 部分有个 onxxruntime 的so,语音部分可以正常运行,但是其他部分,例如翻译模块,需要 引用onnxruntime,依赖代码是:dependencies { // Add Json dependency implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3") // implementation("com.google.mlkit:translate:17.0.3") // Ml-Kit implementation("com.google.mlkit:language-id:17.0.6") implementation("com.microsoft.onnxruntime:onnxruntime-android:1.17.1") implementation("com.microsoft.onnxruntime:onnxruntime-extensions-android:0.11.0") // JWS parser implementation("com.nimbusds:nimbus-jose-jwt:5.1") // Room library (database) val roomVersion = "2.1.0" implementation("androidx.room:room-runtime:$roomVersion") implementation("androidx.room:room-compiler:$roomVersion") // use kapt for Kotlin // optional - RxJava support for Room implementation("androidx.room:room-rxjava2:$roomVersion") // optional - Guava support for Room, including Optional and ListenableFuture implementation("androidx.room:room-guava:$roomVersion") // Test helpers testImplementation("androidx.room:room-testing:$roomVersion") // Tests testImplementation("junit:junit:4.12") androidTestImplementation("androidx.test:runner:1.2.0") androidTestImplementation("androidx.test.espresso:espresso-core:3.2.0") }

报错的原因是翻译 需要onnx推理没有找到这个so

hariji814 avatar Mar 17 '25 01:03 hariji814

建议你一点点测试。先只测试 sherpa-onnx 的功能。如果测试没问题,那就不是 sherpa-onnx 的问题。你再单一点点加新功能.

你目前的这个问题,不是 sherpa-onnx 报错导致的。

csukuangfj avatar Mar 17 '25 06:03 csukuangfj

好的,谢谢。sherpa_onnx 可以完美运行,就是其他部分 依赖onnx 推理的模型 报错我在排查下。感谢您

hariji814 avatar Mar 17 '25 06:03 hariji814

我们用的是 onnxruntime 1.17.1

你看看你其他部分依赖哪个版本的 onnxruntime.

csukuangfj avatar Mar 17 '25 06:03 csukuangfj

我们用的是 onnxruntime 1.17.1

你看看你其他部分依赖哪个版本的 onnxruntime.

onnxruntime 1.19.0 按照教程重新编译 就可以完成 sherpaonnx 的环境替换了吗,感谢🙏

hariji814 avatar Mar 17 '25 08:03 hariji814

我们有没有 merge 的 PR, 里面有告诉你,如何替换 sherpa-onnx 里面使用的 onnxruntime 版本.

csukuangfj avatar Mar 17 '25 09:03 csukuangfj

我们有没有 merge 的 PR, 里面有告诉你,如何替换 sherpa-onnx 里面使用的 onnxruntime 版本.

有的感谢 https://github.com/k2-fsa/sherpa-onnx/issues/1320

hariji814 avatar Mar 17 '25 09:03 hariji814