From 195a2eeb9cd0be85bf6705db08a8717b2c07ec5e Mon Sep 17 00:00:00 2001 From: Michael Chung Date: Fri, 6 Oct 2023 00:49:42 -0400 Subject: [PATCH] Outlined the things needed to be done in process_job --- .../job/job_types/tts/process_single_tts_job.rs | 14 +++++++++++++- .../src/job/job_types/tts/vall_e_x/mod.rs | 5 ++++- .../src/job/job_types/tts/vall_e_x/process_job.rs | 2 +- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/crates/service/job/inference_job/src/job/job_types/tts/process_single_tts_job.rs b/crates/service/job/inference_job/src/job/job_types/tts/process_single_tts_job.rs index 4777ae556a..33f781b6e1 100644 --- a/crates/service/job/inference_job/src/job/job_types/tts/process_single_tts_job.rs +++ b/crates/service/job/inference_job/src/job/job_types/tts/process_single_tts_job.rs @@ -10,8 +10,11 @@ use crate::job::job_loop::process_single_job_error::ProcessSingleJobError; use crate::job::job_types::tts::{tacotron2_v2_early_fakeyou, vits}; use crate::job::job_types::tts::tacotron2_v2_early_fakeyou::process_job::ProcessJobArgs; use crate::job::job_types::tts::vits::process_job::VitsProcessJobArgs; +use crate::job::job_types::tts::vall_e_x::process_job::VALLEXProcessJobArgs; use crate::job_dependencies::JobDependencies; +use super::vall_e_x; + pub async fn process_single_tts_job(job_dependencies: &JobDependencies, job: &AvailableInferenceJob) -> Result { let tts_model_token = match job.maybe_model_token.as_deref() { @@ -60,7 +63,16 @@ pub async fn process_single_tts_job(job_dependencies: &JobDependencies, job: &Av // Look for the Zeroshot job type - + let job_success_result = match job.maybe_model_type { + Some(InferenceModelType::VallEX) => { + vall_e_x::process_job::process_job(VALLEXProcessJobArgs { + job_dependencies, + job, + }).await? + } + Some(model_type) => return Err(ProcessSingleJobError::Other(anyhow!("wrong model type: {:?}", model_type))), + None => return Err(ProcessSingleJobError::Other(anyhow!("no model type in record"))), + }; // let these run anyways ? diff --git a/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/mod.rs b/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/mod.rs index 727c4b6166..b9f326ac0b 100644 --- a/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/mod.rs +++ b/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/mod.rs @@ -1,2 +1,5 @@ pub mod model_downloaders; -pub mod vall_e_x_inference_command; \ No newline at end of file +pub mod vall_e_x_inference_command; +pub mod process_job; +pub mod validate_job; +pub mod download_embedding_file; \ No newline at end of file diff --git a/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/process_job.rs b/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/process_job.rs index 2afc067c12..e0e3d5c65e 100644 --- a/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/process_job.rs +++ b/crates/service/job/inference_job/src/job/job_types/tts/vall_e_x/process_job.rs @@ -25,7 +25,7 @@ use crate::job::job_loop::process_single_job_error::ProcessSingleJobError; use crate::job_dependencies::JobDependencies; -pub struct VALL_E_XProcessJobArgs<'a> { +pub struct VALLEXProcessJobArgs<'a> { pub job_dependencies: &'a JobDependencies, pub job: &'a AvailableInferenceJob, }