Files
FastGPT/packages/service/core/app/provider/controller.ts
Archer 3f9b0fa1d4 V4.12.3 features (#5595)
* refactor: remove ModelProviderIdType and update related types (#5549)

* perf: model provider

* fix eval create split (#5570)

* git rebase --continuedoc

* add more variable types (#5540)

* variable types

* password

* time picker

* internal var

* file

* fix-test

* time select default value & range

* password & type render

* fix

* fix build

* fix

* move method

* split date select

* icon

* perf: variable code

* prompt editor add markdown plugin (#5556)

* editor markdown

* fix build

* pnpm lock

* add props

* update code

* fix list

* editor ui

* fix variable reset (#5586)

* perf: variables type code

* customize lexical indent (#5588)

* perf: multiple selector

* perf: tab plugin

* doc

* refactor: update workflow constants to use ToolTypeEnum (#5491)

* refactor: replace FlowNodeTemplateTypeEnum with string literals in workflow templates

* perf: tool type

---------

Co-authored-by: archer <545436317@qq.com>

* update doc

* fix: make table's row more natural while dragging it (#5596)

* feat: add APIGetTemplate function and refactor template fetching logic (#5498)

* feat: add APIGetTemplate function and refactor template fetching logic

* chore: adjust the code

* chore: update sdk

---------

Co-authored-by: FinleyGe <m13203533462@163.com>

* perf init system

* doc

* remove log

* remove i18n

* perf: variables render

---------

Co-authored-by: Ctrlz <143257420+ctrlz526@users.noreply.github.com>
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: 伍闲犬 <whoeverimf5@gmail.com>
Co-authored-by: FinleyGe <m13203533462@163.com>
2025-09-07 14:41:48 +08:00

30 lines
1002 B
TypeScript

import { loadModelProviders } from '../../../thirdProvider/fastgptPlugin/model';
import {
type langType,
defaultProvider,
formatModelProviders
} from '@fastgpt/global/core/ai/provider';
// Preload model providers
export async function preloadModelProviders(): Promise<void> {
const { modelProviders, aiproxyIdMap } = await loadModelProviders();
const { ModelProviderListCache, ModelProviderMapCache } = formatModelProviders(modelProviders);
global.ModelProviderRawCache = modelProviders;
global.ModelProviderListCache = ModelProviderListCache;
global.ModelProviderMapCache = ModelProviderMapCache;
global.aiproxyIdMapCache = aiproxyIdMap;
}
export const getModelProviders = (language = 'en') => {
return global.ModelProviderListCache[language as langType] || [];
};
export const getModelProvider = (provider?: string, language = 'en') => {
if (!provider) {
return defaultProvider;
}
return ModelProviderMapCache[language as langType][provider] ?? defaultProvider;
};