diff --git a/src/services/_header.ts b/src/services/_header.ts index e4c2e6d637400..d1525ec7baf16 100644 --- a/src/services/_header.ts +++ b/src/services/_header.ts @@ -4,6 +4,8 @@ import { OPENAI_API_KEY_HEADER_KEY, OPENAI_END_POINT, } from '@/const/fetch'; +import { isDeprecatedEdition } from '@/const/version'; +import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; import { useUserStore } from '@/store/user'; import { keyVaultsConfigSelectors } from '@/store/user/selectors'; @@ -14,14 +16,23 @@ import { keyVaultsConfigSelectors } from '@/store/user/selectors'; // eslint-disable-next-line no-undef export const createHeaderWithOpenAI = (header?: HeadersInit): HeadersInit => { const state = useUserStore.getState(); - const openAIConfig = keyVaultsConfigSelectors.openAIConfig(state); + let keyVaults: Record = {}; + + // TODO: remove this condition in V2.0 + if (isDeprecatedEdition) { + keyVaults = keyVaultsConfigSelectors.getVaultByProvider('openai' as any)( + useUserStore.getState(), + ); + } else { + keyVaults = aiProviderSelectors.providerKeyVaults('openai')(useAiInfraStore.getState()) || {}; + } // eslint-disable-next-line no-undef return { ...header, [LOBE_CHAT_ACCESS_CODE]: keyVaultsConfigSelectors.password(state), [LOBE_USER_ID]: state.user?.id || '', - [OPENAI_API_KEY_HEADER_KEY]: openAIConfig.apiKey || '', - [OPENAI_END_POINT]: openAIConfig.baseURL || '', + [OPENAI_API_KEY_HEADER_KEY]: keyVaults.apiKey || '', + [OPENAI_END_POINT]: keyVaults.baseURL || '', }; };