From 1da16a04fe6c3933e0197910b65207a5be5785e9 Mon Sep 17 00:00:00 2001 From: jialin Date: Thu, 16 Oct 2025 13:21:14 +0800 Subject: [PATCH] fix: do not set default version --- src/components/seal-form/seal-input.tsx | 5 ++- src/locales/en-US/models.ts | 3 +- src/locales/ja-JP/models.ts | 6 ++-- src/locales/ru-RU/models.ts | 6 ++-- src/locales/zh-CN/models.ts | 3 +- .../components/cluster-form.tsx | 1 + .../llmodels/components/deploy-modal.tsx | 34 ++++++++++++++----- src/pages/llmodels/forms/backend.tsx | 6 ++-- src/pages/llmodels/forms/index.tsx | 2 +- .../llmodels/hooks/use-form-initial-values.ts | 4 ++- .../llmodels/hooks/use-query-backends.ts | 2 ++ 11 files changed, 53 insertions(+), 19 deletions(-) diff --git a/src/components/seal-form/seal-input.tsx b/src/components/seal-form/seal-input.tsx index 47e7a6fb..08c3d05d 100644 --- a/src/components/seal-form/seal-input.tsx +++ b/src/components/seal-form/seal-input.tsx @@ -63,10 +63,13 @@ const SealInput: React.FC = (props) => { }; const handleOnBlur = (e: any) => { - e.target.value = e.target.value?.trim?.(); if (!inputRef.current?.input?.value) { setIsFocus(false); } + if (!trim) { + e.target.value = e.target.value?.trimRight?.(); + props.onChange?.(e); + } props.onBlur?.(e); }; diff --git a/src/locales/en-US/models.ts b/src/locales/en-US/models.ts index b2cbf5f9..5e90203b 100644 --- a/src/locales/en-US/models.ts +++ b/src/locales/en-US/models.ts @@ -194,5 +194,6 @@ export default { 'models.accessSettings.allowedUsers': 'Allowed users', 'models.accessSettings.public.tips': 'When set to public, anyone can access this model without authentication, which may lead to data exposure risks.', - 'models.table.button.deploy': 'Deploy Now' + 'models.table.button.deploy': 'Deploy Now', + 'models.form.backendVersion.holder': 'Enter or select a version' }; diff --git a/src/locales/ja-JP/models.ts b/src/locales/ja-JP/models.ts index b31f2f77..b6e173e5 100644 --- a/src/locales/ja-JP/models.ts +++ b/src/locales/ja-JP/models.ts @@ -191,7 +191,8 @@ export default { 'models.accessSettings.allowedUsers': 'Allowed users', 'models.accessSettings.public.tips': 'When set to public, anyone can access this model without authentication, which may lead to data exposure risks.', - 'models.table.button.deploy': 'Deploy Now' + 'models.table.button.deploy': 'Deploy Now', + 'models.form.backendVersion.holder': 'Enter or select a version' }; // ========== To-Do: Translate Keys (Remove After Translation) ========== @@ -224,6 +225,7 @@ export default { // 28. 'models.accessSettings.authed': 'Authenticated', // 29. 'models.accessSettings.allowedUsers': 'Allowed users', // 30. 'models.accessSettings.public.tips': 'When set to public, anyone can access this model without authentication, which may lead to data exposure risks.', -// 31. 'models.table.button.deploy': 'Deploy Now' +// 31. 'models.table.button.deploy': 'Deploy Now', +// 32. 'models.form.backendVersion.holder': 'Enter or select a version' // ========== End of To-Do List ========== diff --git a/src/locales/ru-RU/models.ts b/src/locales/ru-RU/models.ts index 4d715d57..133e9246 100644 --- a/src/locales/ru-RU/models.ts +++ b/src/locales/ru-RU/models.ts @@ -194,7 +194,8 @@ export default { 'models.accessSettings.allowedUsers': 'Allowed users', 'models.accessSettings.public.tips': 'When set to public, anyone can access this model without authentication, which may lead to data exposure risks.', - 'models.table.button.deploy': 'Deploy Now' + 'models.table.button.deploy': 'Deploy Now', + 'models.form.backendVersion.holder': 'Enter or select a version' }; // ========== To-Do: Translate Keys (Remove After Translation) ========== @@ -219,5 +220,6 @@ export default { // 20. 'models.accessSettings.authed': 'Authenticated', // 21. 'models.accessSettings.allowedUsers': 'Allowed users', // 22. 'models.accessSettings.public.tips': 'When set to public, anyone can access this model without authentication, which may lead to data exposure risks.', -// 23. 'models.table.button.deploy': 'Deploy Now' +// 23. 'models.table.button.deploy': 'Deploy Now', +// 24. 'models.form.backendVersion.holder': 'Enter or select a version' // ========== End of To-Do List ========== diff --git a/src/locales/zh-CN/models.ts b/src/locales/zh-CN/models.ts index 39e1b6f3..6969ab42 100644 --- a/src/locales/zh-CN/models.ts +++ b/src/locales/zh-CN/models.ts @@ -184,5 +184,6 @@ export default { 'models.accessSettings.allowedUsers': '指定用户', 'models.accessSettings.public.tips': '公开后,任何人无需认证即可访问,可能存在数据泄露风险。', - 'models.table.button.deploy': '立即部署' + 'models.table.button.deploy': '立即部署', + 'models.form.backendVersion.holder': '输入或选择一个版本' }; diff --git a/src/pages/cluster-management/components/cluster-form.tsx b/src/pages/cluster-management/components/cluster-form.tsx index 35b10f67..38e47f1c 100644 --- a/src/pages/cluster-management/components/cluster-form.tsx +++ b/src/pages/cluster-management/components/cluster-form.tsx @@ -73,6 +73,7 @@ const ClusterForm: React.FC = forwardRef( {provider === ProviderValueMap.DigitalOcean && ( diff --git a/src/pages/llmodels/components/deploy-modal.tsx b/src/pages/llmodels/components/deploy-modal.tsx index 51c98a0c..65acbb82 100644 --- a/src/pages/llmodels/components/deploy-modal.tsx +++ b/src/pages/llmodels/components/deploy-modal.tsx @@ -364,7 +364,7 @@ const AddModal: FC = (props) => { return cluster_id; }; - const handleOnOpen = () => { + const handleOnOpen = async () => { if (props.deploymentType === 'modelFiles') { form.current?.form?.setFieldsValue({ ...props.initialValues @@ -377,12 +377,36 @@ const AddModal: FC = (props) => { source: source }); } else { - let backend = checkOnlyAscendNPU([]) + const [backendOptions, gpuOptions] = await Promise.all([ + form.current?.getBackendOptions?.({ + cluster_id: initClusterId() + }), + form.current?.getGPUOptionList?.({ + clusterId: initClusterId() + }) + ]); + let backend = checkOnlyAscendNPU(gpuOptions) ? backendOptionsMap.ascendMindie : backendOptionsMap.vllm; + const currentDefaultBackend = backendOptions?.find( + (item: { + value: string; + label: string; + default_backend_param: string[]; + default_version: string; + versions: { label: string; value: string }[]; + }) => item.value === backend + ); + console.log( + 'currentDefaultBackend:', + currentDefaultBackend, + props.initialValues + ); form.current?.setFieldsValue?.({ backend, + default_version: currentDefaultBackend?.default_version, + backend_parameters: currentDefaultBackend?.default_backend_param || [], cluster_id: initClusterId() }); } @@ -411,12 +435,6 @@ const AddModal: FC = (props) => { useEffect(() => { if (open) { handleOnOpen(); - form.current?.getGPUOptionList?.({ - clusterId: initClusterId() - }); - form.current?.getBackendOptions?.({ - cluster_id: initClusterId() - }); } else { cancelEvaluate(); clearCahceFormValues(); diff --git a/src/pages/llmodels/forms/backend.tsx b/src/pages/llmodels/forms/backend.tsx index 07b88cd2..4caef44e 100644 --- a/src/pages/llmodels/forms/backend.tsx +++ b/src/pages/llmodels/forms/backend.tsx @@ -47,7 +47,7 @@ const BackendFields: React.FC = () => { return ( backendOptions.find((item) => item.value === backend)?.versions || [] ); - }, [backend]); + }, [backend, backendOptions]); return ( <> @@ -72,7 +72,9 @@ const BackendFields: React.FC = () => { = forwardRef((props, ref) => { return await getGPUOptionList(params); }, getBackendOptions: async (params?: { cluster_id: number }) => { - getBackendOptions(params); + return await getBackendOptions(params); } }; }); diff --git a/src/pages/llmodels/hooks/use-form-initial-values.ts b/src/pages/llmodels/hooks/use-form-initial-values.ts index 99e6eb7a..68e1d978 100644 --- a/src/pages/llmodels/hooks/use-form-initial-values.ts +++ b/src/pages/llmodels/hooks/use-form-initial-values.ts @@ -80,7 +80,9 @@ export const useGenerateGPUOptions = () => { return gpuSelectorList; }; - const getGPUOptionList = async (params?: { clusterId: number }) => { + const getGPUOptionList = async (params?: { + clusterId: number; + }): Promise => { const { clusterId } = params || {}; const [gpuData, workerData] = await Promise.all([ queryGPUList({ diff --git a/src/pages/llmodels/hooks/use-query-backends.ts b/src/pages/llmodels/hooks/use-query-backends.ts index a6675f03..199a98b2 100644 --- a/src/pages/llmodels/hooks/use-query-backends.ts +++ b/src/pages/llmodels/hooks/use-query-backends.ts @@ -23,9 +23,11 @@ export default function useQueryBackends() { if (res?.items) { setBackendOptions(list || []); } + return list || []; } catch (error) { // ignore setBackendOptions([]); + return []; } };