diff --git a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_external_third_party.rs b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_external_third_party.rs index 3426172194..2aac8e1617 100644 --- a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_external_third_party.rs +++ b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_external_third_party.rs @@ -37,6 +37,10 @@ pub enum InferenceJobExternalThirdParty { #[serde(rename = "seedance2pro_alt")] Seedance2ProAlt, + /// Seedance 2 Pro BytePlus Ultra jobs + #[serde(rename = "seedance2pro_bpu")] + Seedance2ProBytePlusUltra, + /// World Labs jobs #[serde(rename = "worldlabs")] Worldlabs, @@ -56,6 +60,7 @@ impl InferenceJobExternalThirdParty { Self::GrokApi => "grok_api", Self::Seedance2Pro => "seedance2pro", Self::Seedance2ProAlt => "seedance2pro_alt", + Self::Seedance2ProBytePlusUltra => "seedance2pro_bpu", Self::Worldlabs => "worldlabs", } } @@ -68,6 +73,7 @@ impl InferenceJobExternalThirdParty { "grok_api" => Ok(Self::GrokApi), "seedance2pro" => Ok(Self::Seedance2Pro), "seedance2pro_alt" => Ok(Self::Seedance2ProAlt), + "seedance2pro_bpu" => Ok(Self::Seedance2ProBytePlusUltra), "worldlabs" => Ok(Self::Worldlabs), _ => Err(format!("invalid value: {:?}", value)), } @@ -83,6 +89,7 @@ impl InferenceJobExternalThirdParty { Self::GrokApi, Self::Seedance2Pro, Self::Seedance2ProAlt, + Self::Seedance2ProBytePlusUltra, Self::Worldlabs, ]) } @@ -104,6 +111,7 @@ mod tests { assert_serialization(InferenceJobExternalThirdParty::GrokApi, "grok_api"); assert_serialization(InferenceJobExternalThirdParty::Seedance2Pro, "seedance2pro"); assert_serialization(InferenceJobExternalThirdParty::Seedance2ProAlt, "seedance2pro_alt"); + assert_serialization(InferenceJobExternalThirdParty::Seedance2ProBytePlusUltra, "seedance2pro_bpu"); assert_serialization(InferenceJobExternalThirdParty::Worldlabs, "worldlabs"); } @@ -115,6 +123,7 @@ mod tests { assert_eq!(InferenceJobExternalThirdParty::GrokApi.to_str(), "grok_api"); assert_eq!(InferenceJobExternalThirdParty::Seedance2Pro.to_str(), "seedance2pro"); assert_eq!(InferenceJobExternalThirdParty::Seedance2ProAlt.to_str(), "seedance2pro_alt"); + assert_eq!(InferenceJobExternalThirdParty::Seedance2ProBytePlusUltra.to_str(), "seedance2pro_bpu"); assert_eq!(InferenceJobExternalThirdParty::Worldlabs.to_str(), "worldlabs"); } @@ -126,13 +135,14 @@ mod tests { assert_eq!(InferenceJobExternalThirdParty::from_str("grok_api").unwrap(), InferenceJobExternalThirdParty::GrokApi); assert_eq!(InferenceJobExternalThirdParty::from_str("seedance2pro").unwrap(), InferenceJobExternalThirdParty::Seedance2Pro); assert_eq!(InferenceJobExternalThirdParty::from_str("seedance2pro_alt").unwrap(), InferenceJobExternalThirdParty::Seedance2ProAlt); + assert_eq!(InferenceJobExternalThirdParty::from_str("seedance2pro_bpu").unwrap(), InferenceJobExternalThirdParty::Seedance2ProBytePlusUltra); assert_eq!(InferenceJobExternalThirdParty::from_str("worldlabs").unwrap(), InferenceJobExternalThirdParty::Worldlabs); } #[test] fn all_variants() { // Static check - const EXPECTED_COUNT : usize = 7; + const EXPECTED_COUNT : usize = 8; assert_eq!(InferenceJobExternalThirdParty::all_variants().len(), EXPECTED_COUNT); assert_eq!(InferenceJobExternalThirdParty::iter().len(), EXPECTED_COUNT); diff --git a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_product_category.rs b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_product_category.rs index df306f2227..fb447351de 100644 --- a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_product_category.rs +++ b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_product_category.rs @@ -58,6 +58,11 @@ pub enum InferenceJobProductCategory { #[serde(rename = "seedance2pro_video_alt")] Seedance2ProVideoAlt, + // =============== SEEDANCE 2 PRO BYTEPLUS ULTRA =============== + + #[serde(rename = "seedance2pro_video_bpu")] + Seedance2ProVideoBytePlusUltra, + // =============== WORLD LABS =============== /// World Labs: Gaussian Splat Generation @@ -165,6 +170,7 @@ impl InferenceJobProductCategory { Self::Seedance2ProVideo => "seedance2pro_video", Self::Seedance2ProCharacter => "seedance2pro_character", Self::Seedance2ProVideoAlt => "seedance2pro_video_alt", + Self::Seedance2ProVideoBytePlusUltra => "seedance2pro_video_bpu", Self::WorldlabsSplat => "worldlabs_splat", Self::TtsGptSoVits => "tts_gpt_so_vits", Self::TtsStyleTts2 => "tts_style_tts2", @@ -204,6 +210,7 @@ impl InferenceJobProductCategory { "seedance2pro_video" => Ok(Self::Seedance2ProVideo), "seedance2pro_character" => Ok(Self::Seedance2ProCharacter), "seedance2pro_video_alt" => Ok(Self::Seedance2ProVideoAlt), + "seedance2pro_video_bpu" => Ok(Self::Seedance2ProVideoBytePlusUltra), "worldlabs_splat" => Ok(Self::WorldlabsSplat), "tts_gpt_so_vits" => Ok(Self::TtsGptSoVits), "tts_style_tts2" => Ok(Self::TtsStyleTts2), @@ -246,6 +253,7 @@ impl InferenceJobProductCategory { Self::Seedance2ProVideo, Self::Seedance2ProCharacter, Self::Seedance2ProVideoAlt, + Self::Seedance2ProVideoBytePlusUltra, Self::WorldlabsSplat, Self::TtsGptSoVits, Self::TtsStyleTts2, @@ -294,6 +302,7 @@ mod tests { assert_serialization(InferenceJobProductCategory::Seedance2ProVideo, "seedance2pro_video"); assert_serialization(InferenceJobProductCategory::Seedance2ProCharacter, "seedance2pro_character"); assert_serialization(InferenceJobProductCategory::Seedance2ProVideoAlt, "seedance2pro_video_alt"); + assert_serialization(InferenceJobProductCategory::Seedance2ProVideoBytePlusUltra, "seedance2pro_video_bpu"); assert_serialization(InferenceJobProductCategory::WorldlabsSplat, "worldlabs_splat"); assert_serialization(InferenceJobProductCategory::TtsGptSoVits, "tts_gpt_so_vits"); assert_serialization(InferenceJobProductCategory::TtsStyleTts2, "tts_style_tts2"); @@ -332,6 +341,7 @@ mod tests { assert_eq!(InferenceJobProductCategory::Seedance2ProVideo.to_str(), "seedance2pro_video"); assert_eq!(InferenceJobProductCategory::Seedance2ProCharacter.to_str(), "seedance2pro_character"); assert_eq!(InferenceJobProductCategory::Seedance2ProVideoAlt.to_str(), "seedance2pro_video_alt"); + assert_eq!(InferenceJobProductCategory::Seedance2ProVideoBytePlusUltra.to_str(), "seedance2pro_video_bpu"); assert_eq!(InferenceJobProductCategory::WorldlabsSplat.to_str(), "worldlabs_splat"); assert_eq!(InferenceJobProductCategory::TtsGptSoVits.to_str(), "tts_gpt_so_vits"); assert_eq!(InferenceJobProductCategory::TtsStyleTts2.to_str(), "tts_style_tts2"); @@ -369,6 +379,7 @@ mod tests { assert_eq!(InferenceJobProductCategory::from_str("seedance2pro_video").unwrap(), InferenceJobProductCategory::Seedance2ProVideo); assert_eq!(InferenceJobProductCategory::from_str("seedance2pro_character").unwrap(), InferenceJobProductCategory::Seedance2ProCharacter); assert_eq!(InferenceJobProductCategory::from_str("seedance2pro_video_alt").unwrap(), InferenceJobProductCategory::Seedance2ProVideoAlt); + assert_eq!(InferenceJobProductCategory::from_str("seedance2pro_video_bpu").unwrap(), InferenceJobProductCategory::Seedance2ProVideoBytePlusUltra); assert_eq!(InferenceJobProductCategory::from_str("worldlabs_splat").unwrap(), InferenceJobProductCategory::WorldlabsSplat); assert_eq!(InferenceJobProductCategory::from_str("tts_gpt_so_vits").unwrap(), InferenceJobProductCategory::TtsGptSoVits); assert_eq!(InferenceJobProductCategory::from_str("tts_style_tts2").unwrap(), InferenceJobProductCategory::TtsStyleTts2); @@ -396,7 +407,7 @@ mod tests { #[test] fn all_variants() { // Static check - const EXPECTED_COUNT : usize = 34; + const EXPECTED_COUNT : usize = 35; assert_eq!(InferenceJobProductCategory::all_variants().len(), EXPECTED_COUNT); assert_eq!(InferenceJobProductCategory::iter().len(), EXPECTED_COUNT); diff --git a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_type.rs b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_type.rs index cd21d11980..22c9a538df 100644 --- a/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_type.rs +++ b/crates/schema/public/enums/src/by_table/generic_inference_jobs/inference_job_type.rs @@ -39,6 +39,10 @@ pub enum InferenceJobType { #[serde(rename = "seedance2pro_alt_queue")] Seedance2ProAltQueue, + /// Seedance 2 Pro BytePlus Ultra jobs. We poll for results. + #[serde(rename = "seedance2pro_bpu_queue")] + Seedance2ProBytePlusUltraQueue, + /// Beeble jobs. We poll for results. #[serde(rename = "beeble_queue")] BeebleQueue, @@ -143,6 +147,7 @@ impl InferenceJobType { Self::BeebleQueue => "beeble_queue", Self::Seedance2ProQueue => "seedance2pro_queue", Self::Seedance2ProAltQueue => "seedance2pro_alt_queue", + Self::Seedance2ProBytePlusUltraQueue => "seedance2pro_bpu_queue", Self::Seedance2ProCharacter => "seedance2pro_character", Self::WorldlabsQueue => "worldlabs_queue", Self::VideoRender => "video_render", @@ -177,6 +182,7 @@ impl InferenceJobType { "seedance2pro_queue" => Ok(Self::Seedance2ProQueue), "seedance2pro_character" => Ok(Self::Seedance2ProCharacter), "seedance2pro_alt_queue" => Ok(Self::Seedance2ProAltQueue), + "seedance2pro_bpu_queue" => Ok(Self::Seedance2ProBytePlusUltraQueue), "worldlabs_queue" => Ok(Self::WorldlabsQueue), "video_render" => Ok(Self::VideoRender), "live_portrait" => Ok(Self::LivePortrait), @@ -213,6 +219,7 @@ impl InferenceJobType { Self::Seedance2ProQueue, Self::Seedance2ProCharacter, Self::Seedance2ProAltQueue, + Self::Seedance2ProBytePlusUltraQueue, Self::WorldlabsQueue, Self::VideoRender, Self::LivePortrait, @@ -260,6 +267,7 @@ mod tests { assert_serialization(InferenceJobType::Seedance2ProQueue, "seedance2pro_queue"); assert_serialization(InferenceJobType::Seedance2ProCharacter, "seedance2pro_character"); assert_serialization(InferenceJobType::Seedance2ProAltQueue, "seedance2pro_alt_queue"); + assert_serialization(InferenceJobType::Seedance2ProBytePlusUltraQueue, "seedance2pro_bpu_queue"); assert_serialization(InferenceJobType::WorldlabsQueue, "worldlabs_queue"); assert_serialization(InferenceJobType::VideoRender, "video_render"); assert_serialization(InferenceJobType::LivePortrait, "live_portrait"); @@ -292,6 +300,7 @@ mod tests { assert_eq!(InferenceJobType::Seedance2ProQueue.to_str(), "seedance2pro_queue"); assert_eq!(InferenceJobType::Seedance2ProCharacter.to_str(), "seedance2pro_character"); assert_eq!(InferenceJobType::Seedance2ProAltQueue.to_str(), "seedance2pro_alt_queue"); + assert_eq!(InferenceJobType::Seedance2ProBytePlusUltraQueue.to_str(), "seedance2pro_bpu_queue"); assert_eq!(InferenceJobType::WorldlabsQueue.to_str(), "worldlabs_queue"); assert_eq!(InferenceJobType::VideoRender.to_str(), "video_render"); assert_eq!(InferenceJobType::LivePortrait.to_str(), "live_portrait"); @@ -324,6 +333,7 @@ mod tests { assert_eq!(InferenceJobType::from_str("seedance2pro_queue").unwrap(), InferenceJobType::Seedance2ProQueue); assert_eq!(InferenceJobType::from_str("seedance2pro_character").unwrap(), InferenceJobType::Seedance2ProCharacter); assert_eq!(InferenceJobType::from_str("seedance2pro_alt_queue").unwrap(), InferenceJobType::Seedance2ProAltQueue); + assert_eq!(InferenceJobType::from_str("seedance2pro_bpu_queue").unwrap(), InferenceJobType::Seedance2ProBytePlusUltraQueue); assert_eq!(InferenceJobType::from_str("worldlabs_queue").unwrap(), InferenceJobType::WorldlabsQueue); assert_eq!(InferenceJobType::from_str("video_render").unwrap(), InferenceJobType::VideoRender); assert_eq!(InferenceJobType::from_str("live_portrait").unwrap(), InferenceJobType::LivePortrait); @@ -350,7 +360,7 @@ mod tests { #[test] fn all_variants() { // Static check - const EXPECTED_COUNT : usize = 28; + const EXPECTED_COUNT : usize = 29; assert_eq!(InferenceJobType::all_variants().len(), EXPECTED_COUNT); assert_eq!(InferenceJobType::iter().len(), EXPECTED_COUNT);