diff --git a/web/app/components/header/account-setting/model-provider-page/index.tsx b/web/app/components/header/account-setting/model-provider-page/index.tsx index 84916fb05a..8dc6513c05 100644 --- a/web/app/components/header/account-setting/model-provider-page/index.tsx +++ b/web/app/components/header/account-setting/model-provider-page/index.tsx @@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next' import { RiAlertFill, RiBrainLine } from '@remixicon/react' import SystemModelSelector from './system-model-selector' import ProviderAddedCard, { UPDATE_MODEL_PROVIDER_CUSTOM_MODEL_LIST } from './provider-added-card' -import ProviderCard from './provider-card' +// import ProviderCard from './provider-card' import type { CustomConfigurationModelFixedFields, ModelProvider, @@ -134,30 +134,23 @@ const ModelProviderPage = () => { ))} )} -
{t('common.modelProvider.configureRequired')}
+ {!!notConfiguredProviders?.length && ( + <> +
{t('common.modelProvider.configureRequired')}
+
+ {notConfiguredProviders?.map(provider => ( + handleOpenModal(provider, configurationMethod, currentCustomConfigurationModelFixedFields)} + /> + ))} +
+ + )}
{t('common.modelProvider.installProvider')}
{t('common.modelProvider.discoverMore')}
- { - !!notConfiguredProviders?.length && ( - <> -
- + {t('common.modelProvider.addMoreModelProvider')} - -
-
- { - notConfiguredProviders?.map(provider => ( - handleOpenModal(provider, configurationMethod)} - /> - )) - } -
- - ) - } ) } diff --git a/web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx b/web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx index 9cb3899235..46ef6add24 100644 --- a/web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx +++ b/web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx @@ -3,6 +3,7 @@ import { useState } from 'react' import { useTranslation } from 'react-i18next' import { RiArrowRightSLine, + RiInformation2Fill, RiLoader2Line, } from '@remixicon/react' import type { @@ -29,10 +30,12 @@ import { useAppContext } from '@/context/app-context' export const UPDATE_MODEL_PROVIDER_CUSTOM_MODEL_LIST = 'UPDATE_MODEL_PROVIDER_CUSTOM_MODEL_LIST' type ProviderAddedCardProps = { + notConfigured?: boolean provider: ModelProvider onOpenModal: (configurationMethod: ConfigurationMethodEnum, currentCustomConfigurationModelFixedFields?: CustomConfigurationModelFixedFields) => void } const ProviderAddedCard: FC = ({ + notConfigured, provider, onOpenModal, }) => { @@ -47,6 +50,7 @@ const ProviderAddedCard: FC = ({ const hasModelList = fetched && !!modelList.length const { isCurrentWorkspaceManager } = useAppContext() const showQuota = systemConfig.enabled && [...MODEL_PROVIDER_QUOTA_GET_PAID].includes(provider.provider) && !IS_CE_EDITION + const showCredential = configurationMethods.includes(ConfigurationMethodEnum.predefinedModel) && isCurrentWorkspaceManager const getModelList = async (providerName: string) => { if (loading) @@ -105,7 +109,7 @@ const ProviderAddedCard: FC = ({ ) } { - configurationMethods.includes(ConfigurationMethodEnum.predefinedModel) && isCurrentWorkspaceManager && ( + showCredential && ( onOpenModal(ConfigurationMethodEnum.predefinedModel)} provider={provider} @@ -116,30 +120,40 @@ const ProviderAddedCard: FC = ({ { collapsed && (
-
- { - hasModelList - ? t('common.modelProvider.modelsNum', { num: modelList.length }) - : t('common.modelProvider.showModels') - } - {!loading && } -
-
- { - hasModelList - ? t('common.modelProvider.showModelsNum', { num: modelList.length }) - : t('common.modelProvider.showModels') - } - {!loading && } - { - loading && ( - - ) - } -
+ {(showQuota || !notConfigured) && ( + <> +
+ { + hasModelList + ? t('common.modelProvider.modelsNum', { num: modelList.length }) + : t('common.modelProvider.showModels') + } + {!loading && } +
+
+ { + hasModelList + ? t('common.modelProvider.showModelsNum', { num: modelList.length }) + : t('common.modelProvider.showModels') + } + {!loading && } + { + loading && ( + + ) + } +
+ + )} + {!showQuota && notConfigured && ( +
+ + {t('common.modelProvider.configureTip')} +
+ )} { configurationMethods.includes(ConfigurationMethodEnum.customizableModel) && isCurrentWorkspaceManager && ( = ({
- + {t('common.modelProvider.modelsNum', { num: models.length })}