diff --git a/packages/components/src/api/moderation/tts/KillTtsInferenceJobs.ts b/packages/components/src/api/moderation/tts/KillTtsInferenceJobs.ts index d72bc3f740..85154f7764 100644 --- a/packages/components/src/api/moderation/tts/KillTtsInferenceJobs.ts +++ b/packages/components/src/api/moderation/tts/KillTtsInferenceJobs.ts @@ -29,9 +29,13 @@ export function KillTtsInferenceJobsIsError(response: KillTtsInferenceJobsRespon return response?.success === false; } -export async function KillTtsInferenceJobs(request: KillTtsInferenceJobsRequest) : Promise +export async function KillTtsInferenceJobs(killAction: KillAction) : Promise { const endpoint = new ApiConfig().killTtsInferenceJobs(); + + const request : KillTtsInferenceJobsRequest = { + kill_action: killAction, + }; return await fetch(endpoint, { method: 'POST', diff --git a/packages/fakeyou/src/v2/view/moderation/moderation_job_stats/ModerationJobStatsFc.tsx b/packages/fakeyou/src/v2/view/moderation/moderation_job_stats/ModerationJobStatsFc.tsx index d2f63dc8e1..5ca315134a 100644 --- a/packages/fakeyou/src/v2/view/moderation/moderation_job_stats/ModerationJobStatsFc.tsx +++ b/packages/fakeyou/src/v2/view/moderation/moderation_job_stats/ModerationJobStatsFc.tsx @@ -6,6 +6,7 @@ import { GetTtsInferenceStats, GetTtsInferenceStatsIsOk } from '../../../api/mod import { GetW2lInferenceStats, GetW2lInferenceStatsIsOk } from '../../../api/moderation/GetW2lInferenceStats'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faBomb, faRedo } from '@fortawesome/free-solid-svg-icons'; +import { KillAction, KillTtsInferenceJobsRequest, KillTtsInferenceJobsIsSuccess, KillTtsInferenceJobs } from '@storyteller/components/src/api/moderation/tts/KillTtsInferenceJobs'; interface Props { sessionWrapper: SessionWrapper, @@ -52,14 +53,23 @@ function ModerationJobStatsFc(props: Props) { }, [reloadStats]); const killPending = async () => { - reloadStats(); + await doKill(KillAction.AllPending); } + const killPendingAndFailed = async () => { - reloadStats(); + await doKill(KillAction.AllPendingAndFailed); } const killZeroPriorityPending = async () => { - reloadStats(); + await doKill(KillAction.ZeroPriorityPending); + } + + const doKill = async(killAction: KillAction) => { + const response = await KillTtsInferenceJobs(killAction); + + if (KillTtsInferenceJobsIsSuccess(response)) { + reloadStats(); + } } if (ttsPendingJobCount === -1 && w2lPendingJobCount === -1) { @@ -109,31 +119,27 @@ function ModerationJobStatsFc(props: Props) { - All Jobs + Pending Jobs (All) {ttsPendingJobCount} pending - Priority > 0 + Pending Jobs (Priority > 0) - {ttsPendingJobCount} pending + {ttsPendingPriorityNonzeroJobCount} pending - Priority > 1 + Pending Jobs (Priority > 1) - {ttsPendingJobCount} pending + {ttsPendingPriorityGtOneJobCount} pending - Retryably failed + Failed Jobs w/ Retry - {ttsPendingJobCount} pending - - - Wait time - summary statistics, job counts, etc. + {ttsAttemptFailedJobCount} pending @@ -168,7 +174,7 @@ function ModerationJobStatsFc(props: Props) { - All Jobs + Pending Jobs (All) {w2lPendingJobCount} pending