Skip to content

Commit

Permalink
♻️ refactor: improve ai provider code (lobehub#5442)
Browse files Browse the repository at this point in the history
  • Loading branch information
arvinxx authored Jan 14, 2025
1 parent df082e5 commit 32013b4
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 61 deletions.
62 changes: 3 additions & 59 deletions src/app/(main)/settings/provider/(detail)/[id]/page.tsx
Original file line number Diff line number Diff line change
@@ -1,33 +1,6 @@
import { redirect } from 'next/navigation';

import Ai21Provider from '@/config/modelProviders/ai21';
import Ai360Provider from '@/config/modelProviders/ai360';
import AnthropicProvider from '@/config/modelProviders/anthropic';
import BaichuanProvider from '@/config/modelProviders/baichuan';
import DeepSeekProvider from '@/config/modelProviders/deepseek';
import FireworksAIProvider from '@/config/modelProviders/fireworksai';
import GiteeAIProvider from '@/config/modelProviders/giteeai';
import GoogleProvider from '@/config/modelProviders/google';
import GroqProvider from '@/config/modelProviders/groq';
import HigressProvider from '@/config/modelProviders/higress';
import HunyuanProvider from '@/config/modelProviders/hunyuan';
import InternLMProvider from '@/config/modelProviders/internlm';
import MinimaxProvider from '@/config/modelProviders/minimax';
import MistralProvider from '@/config/modelProviders/mistral';
import MoonshotProvider from '@/config/modelProviders/moonshot';
import NovitaProvider from '@/config/modelProviders/novita';
import OpenRouterProvider from '@/config/modelProviders/openrouter';
import PerplexityProvider from '@/config/modelProviders/perplexity';
import QwenProvider from '@/config/modelProviders/qwen';
import SiliconCloudProvider from '@/config/modelProviders/siliconcloud';
import SparkProvider from '@/config/modelProviders/spark';
import StepfunProvider from '@/config/modelProviders/stepfun';
import TaichuProvider from '@/config/modelProviders/taichu';
import TogetherAIProvider from '@/config/modelProviders/togetherai';
import UpstageProvider from '@/config/modelProviders/upstage';
import XAIProvider from '@/config/modelProviders/xai';
import ZeroOneProvider from '@/config/modelProviders/zeroone';
import ZhiPuProvider from '@/config/modelProviders/zhipu';
import { DEFAULT_MODEL_PROVIDER_LIST } from '@/config/modelProviders';
import { isServerMode } from '@/const/version';
import { serverDB } from '@/database/server';
import { AiProviderModel } from '@/database/server/models/aiProvider';
Expand All @@ -37,43 +10,14 @@ import { getUserAuth } from '@/utils/server/auth';

import ProviderDetail from './index';

const DEFAULT_MODEL_PROVIDER_LIST = [
AnthropicProvider,
GoogleProvider,
DeepSeekProvider,
OpenRouterProvider,
NovitaProvider,
TogetherAIProvider,
FireworksAIProvider,
GroqProvider,
PerplexityProvider,
MistralProvider,
Ai21Provider,
UpstageProvider,
XAIProvider,
QwenProvider,
HunyuanProvider,
SparkProvider,
ZhiPuProvider,
ZeroOneProvider,
StepfunProvider,
MoonshotProvider,
BaichuanProvider,
MinimaxProvider,
Ai360Provider,
TaichuProvider,
InternLMProvider,
SiliconCloudProvider,
HigressProvider,
GiteeAIProvider,
];

const Page = async (props: PagePropsWithId) => {
const params = await props.params;

const builtinProviderCard = DEFAULT_MODEL_PROVIDER_LIST.find((v) => v.id === params.id);
// if builtin provider
if (!!builtinProviderCard) return <ProviderDetail source={'builtin'} {...builtinProviderCard} />;

// if user custom provider
if (isServerMode) {
const { userId } = await getUserAuth();

Expand Down
4 changes: 2 additions & 2 deletions src/config/modelProviders/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,11 @@ export const DEFAULT_MODEL_PROVIDER_LIST = [
BaichuanProvider,
MinimaxProvider,
Ai360Provider,
TaichuProvider,
InternLMProvider,
SiliconCloudProvider,
InternLMProvider,
HigressProvider,
GiteeAIProvider,
TaichuProvider,
];

export const filterEnabledModels = (provider: ModelProviderCard) => {
Expand Down

0 comments on commit 32013b4

Please sign in to comment.