fix: init envs

This commit is contained in:
jialin
2026-01-30 20:48:55 +08:00
committed by Lawrence Li
parent 56985be26b
commit 507b0e44d5
9 changed files with 59 additions and 140 deletions
+26 -5
View File
@@ -135,6 +135,7 @@ const AddModal: FC<AddModalProps> = (props) => {
});
const requestModelIdRef = useRef<number>(0);
const currentSelectedModel = useRef<any>({});
const flatBackendOptionsRef = useRef<any[]>([]);
const { run: fetchModelFiles } = useDeferredRequest(
() => modelFileRef.current?.fetchModelFiles?.(),
@@ -259,7 +260,8 @@ const AddModal: FC<AddModalProps> = (props) => {
const modelInfo = onSelectModel(selectedModel, {
source: props.source,
defaultBackend: form.current?.getFieldValue?.('backend')
defaultBackend: form.current?.getFieldValue?.('backend'),
flatBackendOptions: flatBackendOptionsRef.current
});
form.current?.setFieldsValue?.({
@@ -269,7 +271,9 @@ const AddModal: FC<AddModalProps> = (props) => {
backend_parameters: [],
backend_version: '',
backend: modelInfo.backend,
env: {},
env: {
...modelInfo.env
},
categories: getCategory(item)
});
@@ -326,11 +330,16 @@ const AddModal: FC<AddModalProps> = (props) => {
// TODO
form.current?.resetFields(resetFields);
const modelInfo = onSelectModel(item, {
source: props.source
source: props.source,
flatBackendOptions: flatBackendOptionsRef.current
});
form.current?.setFieldsValue?.({
...defaultFormValues,
...modelInfo,
env: {
...modelInfo.env
},
name: generateNameValue(item, modelInfo.name, manual),
categories: getCategory(item)
});
@@ -366,21 +375,27 @@ const AddModal: FC<AddModalProps> = (props) => {
});
handleCancelFiles();
const modelInfo = onSelectModel(item, {
source: props.source
source: props.source,
flatBackendOptions: flatBackendOptionsRef.current
});
if (
evaluateStateRef.current.state === EvaluateProccess.model &&
item.evaluated
) {
const defaultSpec = getDefaultSpec(item);
const newFormValues = {
...(manual
? { ...defaultFormValues }
: _.omit(form.current?.form?.getFieldsValue?.(), [
...dropFieldsFromForm
])),
...getDefaultSpec(item),
...defaultSpec,
...modelInfo,
env: {
...modelInfo.env,
...defaultSpec.env
},
name: generateNameValue(item, modelInfo.name, manual),
categories: getCategory(item)
};
@@ -464,6 +479,8 @@ const AddModal: FC<AddModalProps> = (props) => {
})
]);
flatBackendOptionsRef.current = backendOptions;
if (props.deploymentType === 'modelFiles') {
form.current?.form?.setFieldsValue({
...props.initialValues
@@ -487,8 +504,12 @@ const AddModal: FC<AddModalProps> = (props) => {
versions: { label: string; value: string }[];
}) => item.value === backend
);
form.current?.setFieldsValue?.({
backend,
env: {
...currentDefaultBackend?.default_env
},
default_version: currentDefaultBackend?.default_version,
backend_parameters: currentDefaultBackend?.default_backend_param || [],
cluster_id: initClusterId()
+4 -2
View File
@@ -4,7 +4,7 @@ import '../style/separator.less';
const Separator: React.FC<{
showArrow?: boolean;
styles: {
styles?: {
arrow?: React.CSSProperties;
};
}> = ({ showArrow = true, styles }) => {
@@ -14,7 +14,9 @@ const Separator: React.FC<{
orientation="vertical"
style={{ height: 'calc(100vh - 89px)', marginInline: '0px' }}
></Divider>
{showArrow && <span className="shape" style={styles.arrow}></span>}
{showArrow && (
<span className="shape" style={{ ...styles?.arrow }}></span>
)}
</div>
);
};
+4 -3
View File
@@ -316,7 +316,7 @@ export interface BackendGroupItem {
label: string;
value: string;
title?: string;
environment?: Record<string, any>;
env?: Record<string, any>;
is_deprecated: boolean;
}[];
}
@@ -329,12 +329,13 @@ export interface BackendOption {
default_version: string;
isBuiltIn: boolean;
backend_source: string;
default_env?: Record<string, any>;
enabled: boolean;
versions: {
label: string;
value: string;
title?: string;
environment?: Record<string, any>;
env?: Record<string, any>;
is_deprecated: boolean;
}[];
}
@@ -354,7 +355,7 @@ export interface BackendItem {
enabled: boolean;
versions: {
version: string;
environment?: Record<string, any>;
env?: Record<string, any>;
is_deprecated: boolean;
}[];
}
+7 -13
View File
@@ -44,12 +44,8 @@ const BackendFields: React.FC = () => {
React.useState<BackendOption | null>(null);
const handleBackendVersionOnChange = (value: any, option: any) => {
if (Object.keys(option.data.environment || {}).length > 0) {
form.setFieldsValue({
env: {
...(option?.data?.environment || {})
}
});
if (Object.keys(option.data.env || {}).length > 0) {
form.setFieldValue('env', { ...(option?.data?.env || {}) });
}
onValuesChange?.({}, form.getFieldsValue());
@@ -141,17 +137,15 @@ const BackendFields: React.FC = () => {
);
};
const handleOnBackendChange = (value: any[], option: any) => {
const handleOnBackendChange = (value: any[], option: any[]) => {
const selectedBackend = value?.[1];
const selectedOption = option?.[1] || {};
console.log('handleOnBackendChange selectedOption:', selectedOption);
form.setFieldsValue({
backend: selectedBackend,
env: {
...(selectedOption.environment || {})
}
backend: selectedBackend
});
form.setFieldValue('env', {
...(selectedOption.default_env || {})
});
onBackendChange?.(selectedBackend, selectedOption);
setSelectedBackend(selectedOption);
+13 -2
View File
@@ -511,9 +511,13 @@ export const useSelectModel = (data: { gpuOptions: any[] }) => {
const onSelectModel = (
selectModel: any,
options: { source: string; defaultBackend?: string }
options: {
source: string;
defaultBackend?: string;
flatBackendOptions?: any[];
}
) => {
const { source, defaultBackend } = options;
const { source, defaultBackend, flatBackendOptions } = options;
let name = _.split(selectModel.name, '/').slice(-1)[0];
const reg = /(-gguf)$/i;
name = _.toLower(name).replace(reg, '');
@@ -527,6 +531,10 @@ export const useSelectModel = (data: { gpuOptions: any[] }) => {
gpuOptions: gpuOptions
});
const selectedBackend = flatBackendOptions?.find(
(item) => item.value === backend
);
return {
...(source === modelSourceMap.huggingface_value
? { huggingface_repo_id: selectModel.name }
@@ -535,6 +543,9 @@ export const useSelectModel = (data: { gpuOptions: any[] }) => {
? { model_scope_model_id: selectModel.name }
: {}),
...modelTaskData,
env: {
...(selectedBackend?.default_env || {})
},
name: name,
source: source,
backend: backend
@@ -61,7 +61,7 @@ export default function useQueryBackends() {
'backend_source',
'is_built_in',
'default_backend_param',
'environment'
'default_env'
]),
backend_source: item.backend_source || BackendSourceValueMap.CUSTOM,
value: item.backend_name,
@@ -79,7 +79,7 @@ export default function useQueryBackends() {
label: vItem.version,
value: vItem.version,
is_deprecated: vItem.is_deprecated,
environment: vItem.environment || {},
env: vItem.env || {},
title: vItem.version.replace(/-custom$/, '')
}))
};
@@ -91,7 +91,7 @@ export default function useQueryBackends() {
console.log('Fetched backend options:', list, groupList);
return groupList || [];
return list || [];
} catch (error) {
// ignore
setBackendOptions([]);