返回 oh-my-ppt
index.ts
1 import type { ImageGenerationProviderAdapter, ResolvedImageModelConfig } from '../types'
2 import { agnesAiAdapter } from './agnes-ai'
3 import { geminiAdapter } from './gemini'
4 import { jimengAdapter } from './jimeng'
5 import { jimengV4Adapter } from './jimeng-v4'
6 import { openAiChatCompletionsAdapter } from './openai-chat-completions'
7 import { seedreamAdapter } from './seedream'
8 import { siliconFlowAdapter } from './siliconflow'
9
10 const PROVIDER_ADAPTERS: Record<
11 ResolvedImageModelConfig['provider'],
12 ImageGenerationProviderAdapter
13 > = {
14 agnes: agnesAiAdapter,
15 jimeng: jimengAdapter,
16 jimeng4: jimengV4Adapter,
17 siliconflow: siliconFlowAdapter,
18 openaiCompatible: openAiChatCompletionsAdapter,
19 gemini: geminiAdapter,
20 seedream: seedreamAdapter
21 }
22
23 export function resolveImageGenerationProvider(
24 provider: ResolvedImageModelConfig['provider']
25 ): ImageGenerationProviderAdapter {
26 return PROVIDER_ADAPTERS[provider]
27 }
28
28 lines TYPESCRIPT