some fixes + gliner first implementation
This commit is contained in:
parent
b9d5f41bbd
commit
a8ff3442ff
36 changed files with 1079 additions and 73 deletions
|
|
@ -10,6 +10,8 @@ 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_slot_extraction_engine" => format!("{:?}", settings.slot_extraction_engine),
|
||||
"selected_gliner_model" => settings.gliner_model.clone(),
|
||||
"selected_vosk_model" => settings.vosk_model.clone(),
|
||||
"speech_to_text_engine" => format!("{:?}", settings.speech_to_text_engine),
|
||||
"noise_suppression" => format!("{:?}", settings.noise_suppression),
|
||||
|
|
@ -54,6 +56,16 @@ pub fn db_write(state: tauri::State<'_, AppState>, key: &str, val: &str) -> bool
|
|||
_ => return false,
|
||||
}
|
||||
}
|
||||
"selected_slot_extraction_engine" => {
|
||||
match val.to_lowercase().as_str() {
|
||||
"none" => settings.slot_extraction_engine = jarvis_core::config::structs::SlotExtractionEngine::None,
|
||||
"gliner" => settings.slot_extraction_engine = jarvis_core::config::structs::SlotExtractionEngine::GLiNER,
|
||||
_ => return false,
|
||||
}
|
||||
}
|
||||
"selected_gliner_model" => {
|
||||
settings.gliner_model = val.to_string();
|
||||
}
|
||||
"selected_vosk_model" => {
|
||||
settings.vosk_model = val.to_string();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
use jarvis_core::{vosk_models, DB};
|
||||
use jarvis_core::{vosk_models, gliner_models};
|
||||
use serde::Serialize;
|
||||
|
||||
#[derive(Serialize)]
|
||||
|
|
@ -8,6 +8,12 @@ pub struct VoskModel {
|
|||
pub size: String,
|
||||
}
|
||||
|
||||
#[derive(Serialize)]
|
||||
pub struct GlinerVariant {
|
||||
pub display_name: String,
|
||||
pub value: String,
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub fn list_vosk_models() -> Vec<VoskModel> {
|
||||
vosk_models::scan_vosk_models()
|
||||
|
|
@ -18,4 +24,15 @@ pub fn list_vosk_models() -> Vec<VoskModel> {
|
|||
size: m.size,
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub fn list_gliner_models() -> Vec<GlinerVariant> {
|
||||
gliner_models::scan_gliner_variants()
|
||||
.into_iter()
|
||||
.map(|m| GlinerVariant {
|
||||
display_name: m.display_name,
|
||||
value: m.value,
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue