From 6191df76b7055d5827c129c94c0370dc3ee7269c Mon Sep 17 00:00:00 2001 From: Jihyun Kang Date: Thu, 9 Jan 2025 18:08:57 +0900 Subject: [PATCH] add: draft Phi-4 SLM from Microsoft with thumbnail and tryout inside model-card --- react/src/components/ModelTryContent.tsx | 14 +++++++++----- react/src/pages/ModelStoreListPage.tsx | 1 + ...jpeg => Llama-3.2-11B-Vision-Instruct1.jpeg} | Bin .../{talkativot-UI.jpeg => Talkativot-UI1.jpeg} | Bin resources/images/model-player/phi-41.jpeg | Bin 0 -> 55270 bytes 5 files changed, 10 insertions(+), 5 deletions(-) rename resources/images/model-player/{Llama-3.2-11B-Vision-instruct.jpeg => Llama-3.2-11B-Vision-Instruct1.jpeg} (100%) rename resources/images/model-player/{talkativot-UI.jpeg => Talkativot-UI1.jpeg} (100%) create mode 100644 resources/images/model-player/phi-41.jpeg diff --git a/react/src/components/ModelTryContent.tsx b/react/src/components/ModelTryContent.tsx index d975324ae8..ac3facc27b 100644 --- a/react/src/components/ModelTryContent.tsx +++ b/react/src/components/ModelTryContent.tsx @@ -220,7 +220,7 @@ const ModelTryContent: React.FC = ({ image: { registry: 'cr.backend.ai', name: (() => { - if (modelName?.includes('stable-diffusion')) { + if (['stable-diffusion', 'phi-4'].includes(modelName as string)) { return 'testing/ngc-pytorch'; } switch (runtimeVariant) { @@ -233,7 +233,7 @@ const ModelTryContent: React.FC = ({ } })(), tag: (() => { - if (modelName?.includes('stable-diffusion')) { + if (['stable-diffusion', 'phi-4'].includes(modelName as string)) { return '24.07-pytorch2.4-py310-cuda12.5'; } switch (runtimeVariant) { @@ -264,7 +264,9 @@ const ModelTryContent: React.FC = ({ version: '', }, // FIXME: temporally hard-coded runtime variant - runtimeVariant: modelName?.includes('stable-diffusion') + runtimeVariant: ['stable-diffusion', 'phi-4'].includes( + modelName as string, + ) ? 'custom' : runtimeVariant, cluster_size: 1, @@ -536,7 +538,8 @@ const ModelTryContent: React.FC = ({ type="primary" disabled={ modelName?.includes('stable-diffusion') || - modelName?.includes('Talkativot UI') + modelName?.includes('Talkativot UI') || + modelName?.includes('phi-4') } onClick={() => { cloneOrCreateModelService('vllm'); @@ -553,7 +556,8 @@ const ModelTryContent: React.FC = ({ modelName?.includes('stable-diffusion') || modelName?.includes('gemma-2-27b-it') || modelName?.includes('Llama-3.2-11B-Vision-Instruct') || - modelName?.includes('Talkativot UI') + modelName?.includes('Talkativot UI') || + modelName?.includes('phi-4') } type="primary" onClick={() => { diff --git a/react/src/pages/ModelStoreListPage.tsx b/react/src/pages/ModelStoreListPage.tsx index d342b97ec5..44139d1e6b 100644 --- a/react/src/pages/ModelStoreListPage.tsx +++ b/react/src/pages/ModelStoreListPage.tsx @@ -243,6 +243,7 @@ const ModelStoreListPage: React.FC = () => { }) .sort((a, b) => { const specialNames = [ + 'phi-4', 'gemma-2-27b-it', 'Llama-3.2-11B-Vision-Instruct', 'stable-diffusion-3-medium', diff --git a/resources/images/model-player/Llama-3.2-11B-Vision-instruct.jpeg b/resources/images/model-player/Llama-3.2-11B-Vision-Instruct1.jpeg similarity index 100% rename from resources/images/model-player/Llama-3.2-11B-Vision-instruct.jpeg rename to resources/images/model-player/Llama-3.2-11B-Vision-Instruct1.jpeg diff --git a/resources/images/model-player/talkativot-UI.jpeg b/resources/images/model-player/Talkativot-UI1.jpeg similarity index 100% rename from resources/images/model-player/talkativot-UI.jpeg rename to resources/images/model-player/Talkativot-UI1.jpeg diff --git a/resources/images/model-player/phi-41.jpeg b/resources/images/model-player/phi-41.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..a84febf07ec635a675c42818850cf956de171ec3 GIT binary patch literal 55270 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