mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-03 00:47:53 +00:00
start tracking inference job product category for easier analytics
This commit is contained in:
1 parent
4cb8226117
commit
52c348be83
21 files changed
+77
-13
No files matched your search
-12
@@ -1,12 +0,0 @@
|
||||
{
|
||||
"db_name": "MySQL",
|
||||
"query": "\nINSERT INTO generic_inference_jobs\nSET\n token = ?,\n uuid_idempotency_token = ?,\n\n job_type = ?,\n\n inference_category = ?,\n maybe_model_type = ?,\n maybe_model_token = ?,\n\n maybe_input_source_token = ?,\n maybe_input_source_token_type = ?,\n\n maybe_download_url = ?,\n maybe_cover_image_media_file_token = ?,\n\n maybe_raw_inference_text = ?,\n\n maybe_inference_args = ?,\n\n maybe_creator_user_token = ?,\n maybe_creator_anonymous_visitor_token = ?,\n creator_ip_address = ?,\n\n creator_set_visibility = ?,\n\n priority_level = ?,\n is_keepalive_required = ?,\n max_duration_seconds = ?,\n\n is_debug_request = ?,\n maybe_routing_tag = ?,\n\n status = \"pending\"\n ",
|
||||
"describe": {
|
||||
"columns": [],
|
||||
"parameters": {
|
||||
"Right": 21
|
||||
},
|
||||
"nullable": []
|
||||
},
|
||||
"hash": "9b4c6f0d0db1c92e4d3eed8d572fa92c885bad4adcc053ae490b3a76c6c116d4"
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"db_name": "MySQL",
|
||||
"query": "\nINSERT INTO generic_inference_jobs\nSET\n token = ?,\n uuid_idempotency_token = ?,\n\n job_type = ?,\n\n product_category = ?,\n\n inference_category = ?,\n maybe_model_type = ?,\n maybe_model_token = ?,\n\n maybe_input_source_token = ?,\n maybe_input_source_token_type = ?,\n\n maybe_download_url = ?,\n maybe_cover_image_media_file_token = ?,\n\n maybe_raw_inference_text = ?,\n\n maybe_inference_args = ?,\n\n maybe_creator_user_token = ?,\n maybe_creator_anonymous_visitor_token = ?,\n creator_ip_address = ?,\n\n creator_set_visibility = ?,\n\n priority_level = ?,\n is_keepalive_required = ?,\n max_duration_seconds = ?,\n\n is_debug_request = ?,\n maybe_routing_tag = ?,\n\n status = \"pending\"\n ",
|
||||
"describe": {
|
||||
"columns": [],
|
||||
"parameters": {
|
||||
"Right": 22
|
||||
},
|
||||
"nullable": []
|
||||
},
|
||||
"hash": "b48e80845d80a6c07099918807d0495b8d70dca339cb1332e05bb3943fbb24c4"
|
||||
}
|
||||
+21
-1
@@ -16,6 +16,12 @@ use strum::EnumIter;
|
||||
#[derive(Clone, Copy, Eq, PartialEq, Hash, Ord, PartialOrd, Deserialize, Serialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum InferenceJobProductCategory {
|
||||
/// Lipsync: Face Fusion
|
||||
LipsyncFaceFusion,
|
||||
|
||||
/// Lipsync: SadTalker
|
||||
LipsyncSadTalker,
|
||||
|
||||
/// Live Portrait (normal interface)
|
||||
LivePortrait,
|
||||
|
||||
@@ -52,6 +58,8 @@ impl_mysql_enum_coders!(InferenceJobProductCategory);
|
||||
impl InferenceJobProductCategory {
|
||||
pub fn to_str(&self) -> &'static str {
|
||||
match self {
|
||||
Self::LipsyncFaceFusion => "lipsync_face_fusion",
|
||||
Self::LipsyncSadTalker => "lipsync_sad_talker",
|
||||
Self::LivePortrait => "live_portrait",
|
||||
Self::LivePortraitWebcam => "live_portrait_webcam",
|
||||
Self::Studio => "studio",
|
||||
@@ -66,6 +74,8 @@ impl InferenceJobProductCategory {
|
||||
|
||||
pub fn from_str(value: &str) -> Result<Self, String> {
|
||||
match value {
|
||||
"lipsync_face_fusion" => Ok(Self::LipsyncFaceFusion),
|
||||
"lipsync_sad_talker" => Ok(Self::LipsyncSadTalker),
|
||||
"live_portrait" => Ok(Self::LivePortrait),
|
||||
"live_portrait_webcam" => Ok(Self::LivePortraitWebcam),
|
||||
"studio" => Ok(Self::Studio),
|
||||
@@ -83,6 +93,8 @@ impl InferenceJobProductCategory {
|
||||
// NB: BTreeSet is sorted
|
||||
// NB: BTreeSet::from() isn't const, but not worth using LazyStatic, etc.
|
||||
BTreeSet::from([
|
||||
Self::LipsyncFaceFusion,
|
||||
Self::LipsyncSadTalker,
|
||||
Self::LivePortrait,
|
||||
Self::LivePortraitWebcam,
|
||||
Self::Studio,
|
||||
@@ -106,6 +118,8 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_serialization() {
|
||||
assert_serialization(InferenceJobProductCategory::LipsyncFaceFusion, "lipsync_face_fusion");
|
||||
assert_serialization(InferenceJobProductCategory::LipsyncSadTalker, "lipsync_sad_talker");
|
||||
assert_serialization(InferenceJobProductCategory::LivePortrait, "live_portrait");
|
||||
assert_serialization(InferenceJobProductCategory::LivePortraitWebcam, "live_portrait_webcam");
|
||||
assert_serialization(InferenceJobProductCategory::Studio, "studio");
|
||||
@@ -119,6 +133,8 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn to_str() {
|
||||
assert_eq!(InferenceJobProductCategory::LipsyncFaceFusion.to_str(), "lipsync_face_fusion");
|
||||
assert_eq!(InferenceJobProductCategory::LipsyncSadTalker.to_str(), "lipsync_sad_talker");
|
||||
assert_eq!(InferenceJobProductCategory::LivePortrait.to_str(), "live_portrait");
|
||||
assert_eq!(InferenceJobProductCategory::LivePortraitWebcam.to_str(), "live_portrait_webcam");
|
||||
assert_eq!(InferenceJobProductCategory::Studio.to_str(), "studio");
|
||||
@@ -132,6 +148,8 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn from_str() {
|
||||
assert_eq!(InferenceJobProductCategory::from_str("lipsync_face_fusion").unwrap(), InferenceJobProductCategory::LipsyncFaceFusion);
|
||||
assert_eq!(InferenceJobProductCategory::from_str("lipsync_sad_talker").unwrap(), InferenceJobProductCategory::LipsyncSadTalker);
|
||||
assert_eq!(InferenceJobProductCategory::from_str("live_portrait").unwrap(), InferenceJobProductCategory::LivePortrait);
|
||||
assert_eq!(InferenceJobProductCategory::from_str("live_portrait_webcam").unwrap(), InferenceJobProductCategory::LivePortraitWebcam);
|
||||
assert_eq!(InferenceJobProductCategory::from_str("studio").unwrap(), InferenceJobProductCategory::Studio);
|
||||
@@ -147,7 +165,9 @@ mod tests {
|
||||
fn all_variants() {
|
||||
// Static check
|
||||
let mut variants = InferenceJobProductCategory::all_variants();
|
||||
assert_eq!(variants.len(), 9);
|
||||
assert_eq!(variants.len(), 11);
|
||||
assert_eq!(variants.pop_first(), Some(InferenceJobProductCategory::LipsyncFaceFusion));
|
||||
assert_eq!(variants.pop_first(), Some(InferenceJobProductCategory::LipsyncSadTalker));
|
||||
assert_eq!(variants.pop_first(), Some(InferenceJobProductCategory::LivePortrait));
|
||||
assert_eq!(variants.pop_first(), Some(InferenceJobProductCategory::LivePortraitWebcam));
|
||||
assert_eq!(variants.pop_first(), Some(InferenceJobProductCategory::Studio));
|
||||
|
||||
+7
@@ -4,6 +4,7 @@ use sqlx::MySqlPool;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_input_source_token_type::InferenceInputSourceTokenType;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -23,6 +24,8 @@ pub struct InsertGenericInferenceArgs<'a> {
|
||||
// a concrete job type.
|
||||
pub job_type: InferenceJobType,
|
||||
|
||||
pub maybe_product_category: Option<InferenceJobProductCategory>,
|
||||
|
||||
pub inference_category: InferenceCategory,
|
||||
pub maybe_model_type: Option<InferenceModelType>,
|
||||
pub maybe_model_token: Option<&'a str>,
|
||||
@@ -89,6 +92,8 @@ SET
|
||||
|
||||
job_type = ?,
|
||||
|
||||
product_category = ?,
|
||||
|
||||
inference_category = ?,
|
||||
maybe_model_type = ?,
|
||||
maybe_model_token = ?,
|
||||
@@ -123,6 +128,8 @@ SET
|
||||
|
||||
args.job_type.to_str(),
|
||||
|
||||
args.maybe_product_category.map(|c| c.to_str()),
|
||||
|
||||
args.inference_category.to_str(),
|
||||
|
||||
args.maybe_model_type.map(|t| t.to_str()),
|
||||
|
||||
+2
@@ -11,6 +11,7 @@ use actix_web::http::StatusCode;
|
||||
use log::{info, warn};
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -298,6 +299,7 @@ pub async fn enqueue_face_animation_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::SadTalker,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::LipsyncSadTalker),
|
||||
inference_category: InferenceCategory::LipsyncAnimation,
|
||||
maybe_model_type: Some(InferenceModelType::SadTalker), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -201,6 +201,7 @@ pub async fn enqueue_rerender_animation_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::RerenderAVideo,
|
||||
maybe_product_category: None, // ReRender was never launched
|
||||
inference_category: InferenceCategory::VideoFilter,
|
||||
maybe_model_type: Some(InferenceModelType::RerenderAVideo), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -192,6 +192,7 @@ pub async fn enqueue_fbx_to_gltf_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ConvertFbxToGltf,
|
||||
maybe_product_category: None, // This is not a product
|
||||
inference_category: InferenceCategory::FormatConversion,
|
||||
maybe_model_type: Some(InferenceModelType::ConvertFbxToGltf),
|
||||
maybe_model_token: None,
|
||||
|
||||
+1
@@ -250,6 +250,7 @@ pub async fn enqueue_render_engine_scene_to_video_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::BevyToWorkflow,
|
||||
maybe_product_category: None, // This is not a product anymore
|
||||
inference_category: InferenceCategory::ConvertBvhToWorkflow,
|
||||
maybe_model_type: Some(InferenceModelType::BvhToWorkflow),
|
||||
maybe_model_token: None,
|
||||
|
||||
+1
@@ -412,6 +412,7 @@ pub async fn enqueue_image_generation_request(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::StableDiffusion,
|
||||
maybe_product_category: None, // This is not a product anymore
|
||||
inference_category: InferenceCategory::ImageGeneration,
|
||||
maybe_model_type: Some(InferenceModelType::StableDiffusion), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
@@ -205,6 +205,7 @@ pub async fn enqueue_mocapnet_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::MocapNet,
|
||||
maybe_product_category: None, // This is not a product anymore
|
||||
inference_category: InferenceCategory::Mocap,
|
||||
maybe_model_type: Some(InferenceModelType::MocapNet), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -170,6 +170,7 @@ pub async fn enqueue_gptsovits_model_download_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::GptSovits,
|
||||
maybe_product_category: None, // Do not count downloads as product usage (or perhaps they should be their own)
|
||||
inference_category: InferenceCategory::DeprecatedField,
|
||||
maybe_model_type: None,
|
||||
maybe_model_token: None,
|
||||
|
||||
+8
@@ -17,6 +17,7 @@ use rand::seq::SliceRandom;
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -420,9 +421,16 @@ pub async fn enqueue_infer_tts_handler(
|
||||
_ => None, // NB: Shouldn't occur
|
||||
};
|
||||
|
||||
let maybe_product_category = match tts_model.job_type() {
|
||||
InferenceJobType::Tacotron2 => Some(InferenceJobProductCategory::TtsTacotron2),
|
||||
InferenceJobType::GptSovits => Some(InferenceJobProductCategory::TtsGptSoVits),
|
||||
_ => None,
|
||||
};
|
||||
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: tts_model.job_type(),
|
||||
maybe_product_category,
|
||||
inference_category: InferenceCategory::TextToSpeech,
|
||||
maybe_model_type,
|
||||
maybe_model_token: Some(request.tts_model_token.as_str()),
|
||||
|
||||
+8
@@ -18,6 +18,7 @@ use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_input_source_token_type::InferenceInputSourceTokenType;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -357,9 +358,16 @@ pub async fn enqueue_voice_conversion_inference_handler(
|
||||
}
|
||||
};
|
||||
|
||||
let maybe_product_category = match model_inference_info.job_model_type {
|
||||
InferenceModelType::RvcV2 => Some(InferenceJobProductCategory::VcRvc2),
|
||||
InferenceModelType::SoVitsSvc => Some(InferenceJobProductCategory::VcSvc),
|
||||
_ => None,
|
||||
};
|
||||
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type,
|
||||
maybe_product_category,
|
||||
inference_category: InferenceCategory::VoiceConversion,
|
||||
maybe_model_type: Some(model_inference_info.job_model_type),
|
||||
maybe_model_token: Some(&model_token),
|
||||
|
||||
+2
@@ -14,6 +14,7 @@ use serde::Serialize;
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -192,6 +193,7 @@ pub async fn enqueue_tts_request(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::StyleTTS2,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::TtsStyleTts2),
|
||||
inference_category: InferenceCategory::TextToSpeech,
|
||||
maybe_model_type: Some(InferenceModelType::StyleTTS2), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+2
@@ -13,6 +13,7 @@ use serde::Deserialize;
|
||||
use serde::Serialize;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use http_server_common::request::get_request_header_optional::get_request_header_optional;
|
||||
@@ -178,6 +179,7 @@ pub async fn create_voice_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::StyleTTS2,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::TtsStyleTts2), // Perhaps we should count this another way?
|
||||
inference_category: InferenceCategory::TextToSpeech,
|
||||
maybe_model_type: Some(InferenceModelType::StyleTTS2), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+2
@@ -13,6 +13,7 @@ use log::{error, info, warn};
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -257,6 +258,7 @@ pub async fn enqueue_live_portrait_workflow_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::LivePortrait,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::LivePortrait),
|
||||
inference_category: InferenceCategory::LivePortrait,
|
||||
maybe_model_type: None,
|
||||
maybe_model_token: None,
|
||||
|
||||
+2
@@ -13,6 +13,7 @@ use log::{error, info, warn};
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -320,6 +321,7 @@ pub async fn enqueue_studio_workflow_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ComfyUi,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::Studio),
|
||||
inference_category: InferenceCategory::Workflow,
|
||||
maybe_model_type: Some(InferenceModelType::ComfyUi), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+2
@@ -13,6 +13,7 @@ use log::{error, info, warn};
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use enums::by_table::generic_inference_jobs::inference_category::InferenceCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_product_category::InferenceJobProductCategory;
|
||||
use enums::by_table::generic_inference_jobs::inference_job_type::InferenceJobType;
|
||||
use enums::by_table::generic_inference_jobs::inference_model_type::InferenceModelType;
|
||||
use enums::common::visibility::Visibility;
|
||||
@@ -320,6 +321,7 @@ pub async fn enqueue_video_style_transfer_workflow_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ComfyUi,
|
||||
maybe_product_category: Some(InferenceJobProductCategory::Vst),
|
||||
inference_category: InferenceCategory::Workflow,
|
||||
maybe_model_type: Some(InferenceModelType::ComfyUi), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -296,6 +296,7 @@ pub async fn enqueue_comfy_ui_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ComfyUi,
|
||||
maybe_product_category: None,
|
||||
inference_category: InferenceCategory::Workflow,
|
||||
maybe_model_type: Some(InferenceModelType::ComfyUi), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -449,6 +449,7 @@ pub async fn enqueue_video_style_transfer_handler(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ComfyUi,
|
||||
maybe_product_category: None, // TODO: This endpoint is deprecated. Is anyone calling it?
|
||||
inference_category: InferenceCategory::Workflow,
|
||||
maybe_model_type: Some(InferenceModelType::ComfyUi), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
+1
@@ -269,6 +269,7 @@ pub async fn enqueue_workflow_upload_request(
|
||||
let query_result = insert_generic_inference_job(InsertGenericInferenceArgs {
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
job_type: InferenceJobType::ComfyUi,
|
||||
maybe_product_category: None, // This endpoint is deprecated
|
||||
inference_category: InferenceCategory::Workflow,
|
||||
maybe_model_type: Some(InferenceModelType::ComfyUi), // NB: Model is static during inference
|
||||
maybe_model_token: None, // NB: Model is static during inference
|
||||
|
||||
Reference in new issue
Block a user