react-native-vosk icon indicating copy to clipboard operation
react-native-vosk copied to clipboard

Unable to load model

Open ap9086013 opened this issue 8 months ago • 4 comments

my model is not added i am getting Error: vosk-model-small-en-us-0.15/uuid and i am download zip from https://alphacephei.com/vosk/models how can i fix this issue

ap9086013 avatar Apr 29 '25 10:04 ap9086013

Hi @ap9086013 Some questions: Are you using Expo? If so, are you building natively or through EAS?

joaolobao380 avatar Apr 29 '25 20:04 joaolobao380

I have the same problem I use cli

serveroid avatar Jun 12 '25 11:06 serveroid

add this on your android/build.gradle, also make sure your models folder start with "model", for example, "model-en", "model-fr".

tasks.register('genUUID') {
    doLast {
        def searchDir = rootDir.toPath()
        fileTree(dir: "$searchDir/app/src/main/assets", include: ['model*']).visit { fileDetails ->
            if (fileDetails.directory) {
                def outDir = fileDetails.file
                def outFile = new File(outDir, "uuid")
                outDir.mkdirs()
                if (!outFile.exists()) {
                    outFile.text = UUID.randomUUID().toString()
                    println("UUID already exists: ${outDir.name}")
                } else {
                    println("UUID created: ${outDir.name}")
                }
            }
        }
    }
}


gradle.projectsEvaluated {
    if (project(":app").tasks.findByName("preBuild")) {
        project(":app").preBuild.dependsOn(tasks.named("genUUID"))
    }
}

So your build.gradle should look like this:

buildscript {
    ext {
        buildToolsVersion = findProperty('android.buildToolsVersion') ?: '34.0.0'
        minSdkVersion = Integer.parseInt(findProperty('android.minSdkVersion') ?: '23')
        compileSdkVersion = Integer.parseInt(findProperty('android.compileSdkVersion') ?: '34')
        targetSdkVersion = Integer.parseInt(findProperty('android.targetSdkVersion') ?: '34')
        kotlinVersion = findProperty('android.kotlinVersion') ?: '1.9.23'
        supportLibVersion = "28.0.0"
        ndkVersion = "26.1.10909125"
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath('com.android.tools.build:gradle')
        classpath('com.facebook.react:react-native-gradle-plugin')
        classpath('org.jetbrains.kotlin:kotlin-gradle-plugin')
        classpath 'com.google.gms:google-services:4.4.2'
    }
}

apply plugin: "com.facebook.react.rootproject"

allprojects {
    repositories {
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url(new File(['node', '--print', "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), '../android'))
        }
        maven {
            // Android JSC is installed from npm
            url(new File(['node', '--print', "require.resolve('jsc-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), '../dist'))
        }

        google()
        mavenCentral()
        maven { url 'https://www.jitpack.io' }
    }
}


tasks.register('genUUID') {
    doLast {
        def searchDir = rootDir.toPath()
        fileTree(dir: "$searchDir/app/src/main/assets", include: ['model*']).visit { fileDetails ->
            if (fileDetails.directory) {
                def outDir = fileDetails.file
                def outFile = new File(outDir, "uuid")
                outDir.mkdirs()
                if (!outFile.exists()) {
                    outFile.text = UUID.randomUUID().toString()
                    println("UUID created: ${outDir.name}")
                } else {
                    println("UUID already exists: ${outDir.name}")
                }
            }
        }
    }
}


gradle.projectsEvaluated {
    if (project(":app").tasks.findByName("preBuild")) {
        project(":app").preBuild.dependsOn(tasks.named("genUUID"))
    }
}

pedrolmsin avatar Jun 26 '25 01:06 pedrolmsin

Thank you, renaming vosk-model-small-en-us-0.15 to model-small-en-us-0.15 helped me

Metre-Ray avatar Aug 11 '25 01:08 Metre-Ray