diff --git a/web/app/components/header/account-setting/model-provider-page/hooks.ts b/web/app/components/header/account-setting/model-provider-page/hooks.ts index 27f2b15582..d4ffe8f09b 100644 --- a/web/app/components/header/account-setting/model-provider-page/hooks.ts +++ b/web/app/components/header/account-setting/model-provider-page/hooks.ts @@ -24,7 +24,6 @@ import { fetchModelProviderCredentials, fetchModelProviders, getPayUrl, - submitFreeQuota, } from '@/service/common' import { useProviderContext } from '@/context/provider-context' @@ -202,30 +201,6 @@ export const useAnthropicBuyQuota = () => { return handleGetPayUrl } -export const useFreeQuota = (onSuccess: () => void) => { - const [loading, setLoading] = useState(false) - - const handleClick = async (type: string) => { - if (loading) - return - - try { - setLoading(true) - const res = await submitFreeQuota(`/workspaces/current/model-providers/${type}/free-quota-submit`) - - if (res.type === 'redirect' && res.redirect_url) - window.location.href = res.redirect_url - else if (res.type === 'submit' && res.result === 'success') - onSuccess() - } - finally { - setLoading(false) - } - } - - return handleClick -} - export const useModelProviders = () => { const { data: providersData, mutate, isLoading } = useSWR('/workspaces/current/model-providers', fetchModelProviders) 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 b8bce1d05c..8fa464dbe7 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 @@ -9,7 +9,6 @@ import type { import { ConfigurateMethodEnum } from '../declarations' import { DEFAULT_BACKGROUND_COLOR, - MODEL_PROVIDER_QUOTA_GET_FREE, MODEL_PROVIDER_QUOTA_GET_PAID, modelTypeFormat, } from '../utils' @@ -43,7 +42,7 @@ const ProviderAddedCard: FC = ({ const configurateMethods = provider.configurate_methods.filter(method => method !== ConfigurateMethodEnum.fetchFromRemote) const systemConfig = provider.system_configuration const hasModelList = fetched && !!modelList.length - const showQuota = systemConfig.enabled && [...MODEL_PROVIDER_QUOTA_GET_FREE, ...MODEL_PROVIDER_QUOTA_GET_PAID].includes(provider.provider) && !IS_CE_EDITION + const showQuota = systemConfig.enabled && [...MODEL_PROVIDER_QUOTA_GET_PAID].includes(provider.provider) && !IS_CE_EDITION const getModelList = async (providerName: string) => { if (loading) diff --git a/web/app/components/header/account-setting/model-provider-page/provider-added-card/quota-panel.tsx b/web/app/components/header/account-setting/model-provider-page/provider-added-card/quota-panel.tsx index a7a9aaf09f..c00933468f 100644 --- a/web/app/components/header/account-setting/model-provider-page/provider-added-card/quota-panel.tsx +++ b/web/app/components/header/account-setting/model-provider-page/provider-added-card/quota-panel.tsx @@ -7,17 +7,10 @@ import { QuotaUnitEnum, } from '../declarations' import { - useAnthropicBuyQuota, - useFreeQuota, - useUpdateModelProviders, -} from '../hooks' -import { - MODEL_PROVIDER_QUOTA_GET_FREE, MODEL_PROVIDER_QUOTA_GET_PAID, } from '../utils' import PriorityUseTip from './priority-use-tip' import { InfoCircle } from '@/app/components/base/icons/src/vender/line/general' -import Button from '@/app/components/base/button' import TooltipPlus from '@/app/components/base/tooltip-plus' import { formatNumber } from '@/utils/format' @@ -28,12 +21,7 @@ const QuotaPanel: FC = ({ provider, }) => { const { t } = useTranslation() - const updateModelProviders = useUpdateModelProviders() - const handlePay = useAnthropicBuyQuota() - const handleFreeQuotaSuccess = () => { - updateModelProviders() - } - const handleFreeQuota = useFreeQuota(handleFreeQuotaSuccess) + const customConfig = provider.custom_configuration const priorityUseType = provider.preferred_provider_type const systemConfig = provider.system_configuration @@ -68,16 +56,6 @@ const QuotaPanel: FC = ({ ) } - { - !currentQuota && MODEL_PROVIDER_QUOTA_GET_FREE.includes(provider.provider) && ( - - ) - } { priorityUseType === PreferredProviderTypeEnum.system && customConfig.status === CustomConfigurationStatusEnum.active && ( diff --git a/web/app/components/header/account-setting/model-provider-page/provider-card/index.tsx b/web/app/components/header/account-setting/model-provider-page/provider-card/index.tsx index 0e5eb7a236..8b3b3c1b67 100644 --- a/web/app/components/header/account-setting/model-provider-page/provider-card/index.tsx +++ b/web/app/components/header/account-setting/model-provider-page/provider-card/index.tsx @@ -2,60 +2,34 @@ import type { FC } from 'react' import { useTranslation } from 'react-i18next' import type { ModelProvider, - TypeWithI18N, } from '../declarations' import { ConfigurateMethodEnum } from '../declarations' import { DEFAULT_BACKGROUND_COLOR, - MODEL_PROVIDER_QUOTA_GET_FREE, modelTypeFormat, } from '../utils' import { - useAnthropicBuyQuota, - useFreeQuota, useLanguage, - useUpdateModelProviders, } from '../hooks' import ModelBadge from '../model-badge' import ProviderIcon from '../provider-icon' import s from './index.module.css' import { Plus, Settings01 } from '@/app/components/base/icons/src/vender/line/general' import Button from '@/app/components/base/button' -import { IS_CE_EDITION } from '@/config' type ProviderCardProps = { provider: ModelProvider onOpenModal: (configurateMethod: ConfigurateMethodEnum) => void } -const TIP_MAP: { [k: string]: TypeWithI18N } = { - minimax: { - en_US: 'Earn 1 million tokens for free', - zh_Hans: '免费获取 100 万个 token', - }, - spark: { - en_US: 'Earn 3 million tokens (v3.0) for free', - zh_Hans: '免费获取 300 万个 token (v3.0)', - }, - zhipuai: { - en_US: 'Earn 10 million tokens for free', - zh_Hans: '免费获取 1000 万个 token', - }, -} const ProviderCard: FC = ({ provider, onOpenModal, }) => { const { t } = useTranslation() const language = useLanguage() - const updateModelProviders = useUpdateModelProviders() - const handlePay = useAnthropicBuyQuota() - const handleFreeQuotaSuccess = () => { - updateModelProviders() - } - const handleFreeQuota = useFreeQuota(handleFreeQuotaSuccess) + const configurateMethods = provider.configurate_methods.filter(method => method !== ConfigurateMethodEnum.fetchFromRemote) - const canGetFreeQuota = MODEL_PROVIDER_QUOTA_GET_FREE.includes(provider.provider) && !IS_CE_EDITION && provider.system_configuration.enabled return (
= ({ }
-
+
{ provider.supported_model_types.map(modelType => ( @@ -81,33 +55,7 @@ const ProviderCard: FC = ({ )) } - { - canGetFreeQuota && ( -
- 📣  -
- {TIP_MAP[provider.provider][language]} -
-
- ) - }
- { - canGetFreeQuota && ( -
- -
- ) - }
{ configurateMethods.map((method) => { diff --git a/web/app/components/header/account-setting/model-provider-page/utils.ts b/web/app/components/header/account-setting/model-provider-page/utils.ts index bba5fccc6d..afe0f6dc9a 100644 --- a/web/app/components/header/account-setting/model-provider-page/utils.ts +++ b/web/app/components/header/account-setting/model-provider-page/utils.ts @@ -15,7 +15,6 @@ import { validateModelProvider, } from '@/service/common' -export const MODEL_PROVIDER_QUOTA_GET_FREE = ['minimax', 'spark', 'zhipuai'] export const MODEL_PROVIDER_QUOTA_GET_PAID = ['anthropic', 'openai', 'azure_openai'] export const DEFAULT_BACKGROUND_COLOR = '#F3F4F6' diff --git a/web/service/common.ts b/web/service/common.ts index 98fe50488c..d7f7c6c8bc 100644 --- a/web/service/common.ts +++ b/web/service/common.ts @@ -218,10 +218,6 @@ export const fetchModelParameterRules: Fetcher<{ data: ModelParameterRule[] }, s return get<{ data: ModelParameterRule[] }>(url) } -export const submitFreeQuota: Fetcher<{ type: string; redirect_url?: string; result?: string }, string> = (url) => { - return post<{ type: string; redirect_url?: string; result?: string }>(url) -} - export const fetchFileUploadConfig: Fetcher = ({ url }) => { return get(url) }