diff --git a/api/core/entities/provider_configuration.py b/api/core/entities/provider_configuration.py index b74e081dd..9119462ac 100644 --- a/api/core/entities/provider_configuration.py +++ b/api/core/entities/provider_configuration.py @@ -410,10 +410,9 @@ class ProviderConfiguration(BaseModel): :return: """ with Session(db.engine) as session: - if credential_name and self._check_provider_credential_name_exists( - credential_name=credential_name, session=session - ): - raise ValueError(f"Credential with name '{credential_name}' already exists.") + if credential_name: + if self._check_provider_credential_name_exists(credential_name=credential_name, session=session): + raise ValueError(f"Credential with name '{credential_name}' already exists.") else: credential_name = self._generate_provider_credential_name(session) @@ -890,10 +889,11 @@ class ProviderConfiguration(BaseModel): :return: """ with Session(db.engine) as session: - if credential_name and self._check_custom_model_credential_name_exists( - model=model, model_type=model_type, credential_name=credential_name, session=session - ): - raise ValueError(f"Model credential with name '{credential_name}' already exists for {model}.") + if credential_name: + if self._check_custom_model_credential_name_exists( + model=model, model_type=model_type, credential_name=credential_name, session=session + ): + raise ValueError(f"Model credential with name '{credential_name}' already exists for {model}.") else: credential_name = self._generate_custom_model_credential_name( model=model, model_type=model_type, session=session diff --git a/web/app/components/header/account-setting/model-provider-page/model-modal/index.tsx b/web/app/components/header/account-setting/model-provider-page/model-modal/index.tsx index adf633831..4ffbc8f19 100644 --- a/web/app/components/header/account-setting/model-provider-page/model-modal/index.tsx +++ b/web/app/components/header/account-setting/model-provider-page/model-modal/index.tsx @@ -115,7 +115,7 @@ const ModelModal: FC = ({ const [selectedCredential, setSelectedCredential] = useState() const formRef2 = useRef(null) const isEditMode = !!Object.keys(formValues).filter((key) => { - return key !== '__model_name' && key !== '__model_type' + return key !== '__model_name' && key !== '__model_type' && !!formValues[key] }).length && isCurrentWorkspaceManager const handleSave = useCallback(async () => { @@ -167,7 +167,7 @@ const ModelModal: FC = ({ __authorization_name__, ...rest } = values - if (__model_name && __model_type && __authorization_name__) { + if (__model_name && __model_type) { await handleSaveCredential({ credential_id: credential?.credential_id, credentials: rest,