Zackriya-Solutions/meetily · error · anyhow::Error

Failed to load Parakeet model '{}': {}

Error message

Failed to load Parakeet model '{}': {}

What it means

ParakeetEngine::load_model(target_model) failed while preparing the engine. discover_models() runs first and its failure is only a warning; the hard error is from load_model. The inner '{}' typically means the ONNX model files are missing from the models directory, corrupt/incomplete, incompatible with the ONNX runtime build, or memory ran out while loading weights.

Source

Thrown at frontend/src-tauri/src/audio/retranscription.rs:669

                info!(
                    "Loading Parakeet model '{}' (current: {:?})",
                    target_model, current_model
                );

                // Discover available models first
                info!("Discovering available Parakeet models...");
                if let Err(discover_err) = e.discover_models().await {
                    warn!("Error during Parakeet model discovery (continuing anyway): {}", discover_err);
                }

                match e.load_model(&target_model).await {
                    Ok(_) => {
                        info!("Parakeet model '{}' loaded successfully", target_model);
                        Ok(e)
                    }
                    Err(load_err) => {
                        error!("Failed to load Parakeet model '{}': {}", target_model, load_err);
                        Err(anyhow!("Failed to load Parakeet model '{}': {}", target_model, load_err))
                    }
                }
            } else {
                info!("Parakeet model '{}' already loaded", target_model);
                Ok(e)
            }
        }
        None => Err(anyhow!("Parakeet engine not initialized")),
    }
}

/// Get the configured Parakeet model name from the database
async fn get_configured_parakeet_model<R: Runtime>(app: &AppHandle<R>) -> Result<String> {
    debug!("Getting configured Parakeet model from database...");

    let app_state = app
        .try_state::<AppState>()
        .ok_or_else(|| {

View on GitHub (pinned to 0281737d87)

Solutions

  1. Verify the Parakeet model files exist in the models directory.
  2. Re-download the model from Settings and retry.
  3. Read the inner error: missing file vs load/inference error vs out-of-memory point to different fixes.
  4. Fall back to the default Parakeet model to isolate a model-specific problem.
Defensive patterns

Strategy: validation

Validate before calling

// Verify Parakeet model files exist before the batch job
let models_dir = get_models_directory();
if !models_dir.map(|d| d.join(&target_model).exists()).unwrap_or(false) {
    return Err(anyhow!("Parakeet model {target_model} not present - download it first"));
}

Try / catch

// Frontend: offer model download on load failure
if (String(e).includes('Failed to load Parakeet model')) promptModelDownload(provider, model);

Prevention

When it happens

Trigger: Retranscribing with provider='parakeet' and a model name whose files were never downloaded; models directory moved; truncated download; loading on a machine below the model's RAM requirement.

Common situations: User selects a Parakeet model that is not downloaded; app data dir synced/copied incompletely to a new machine; ONNX runtime updated and the old model file no longer loads.

Related errors


AI-assisted analysis of Zackriya-Solutions/meetily@0281737d87 (2026-08-16). Data as JSON: /api/errors/e99dabeacc5f20ad. Report an issue: GitHub.