vosk model selection in GUI
This commit is contained in:
parent
36acacf259
commit
cab53abcbe
14 changed files with 323 additions and 40 deletions
|
|
@ -10,6 +10,7 @@ pub fn db_read(state: tauri::State<'_, AppState>, key: &str) -> String {
|
|||
"assistant_voice" => settings.voice.clone(),
|
||||
"selected_wake_word_engine" => format!("{:?}", settings.wake_word_engine),
|
||||
"selected_intent_recognition_engine" => format!("{:?}", settings.intent_recognition_engine),
|
||||
"selected_vosk_model" => settings.vosk_model.clone(),
|
||||
"speech_to_text_engine" => format!("{:?}", settings.speech_to_text_engine),
|
||||
"api_key__picovoice" => settings.api_keys.picovoice.clone(),
|
||||
"api_key__openai" => settings.api_keys.openai.clone(),
|
||||
|
|
@ -49,6 +50,9 @@ pub fn db_write(state: tauri::State<'_, AppState>, key: &str, val: &str) -> bool
|
|||
_ => return false,
|
||||
}
|
||||
}
|
||||
"selected_vosk_model" => {
|
||||
settings.vosk_model = val.to_string();
|
||||
}
|
||||
"api_key__picovoice" => {
|
||||
settings.api_keys.picovoice = val.to_string();
|
||||
}
|
||||
|
|
|
|||
21
crates/jarvis-gui/src/tauri_commands/stt.rs
Normal file
21
crates/jarvis-gui/src/tauri_commands/stt.rs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
use jarvis_core::{vosk_models, DB};
|
||||
use serde::Serialize;
|
||||
|
||||
#[derive(Serialize)]
|
||||
pub struct VoskModel {
|
||||
pub name: String,
|
||||
pub language: String,
|
||||
pub size: String,
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub fn list_vosk_models() -> Vec<VoskModel> {
|
||||
vosk_models::scan_vosk_models()
|
||||
.into_iter()
|
||||
.map(|m| VoskModel {
|
||||
name: m.name,
|
||||
language: m.language,
|
||||
size: m.size,
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue