mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 00:40:14 +01:00
* chore: bump browserslist-db@latest * refactor(EndpointService): simplify with `generateConfig`, utilize optional baseURL for OpenAI-based endpoints, use `isUserProvided` helper fn wherever needed * refactor(custom/initializeClient): use standardized naming for common variables * feat: user provided baseURL for openAI-based endpoints * refactor(custom/initializeClient): re-order operations * fix: knownendpoints enum definition and add FetchTokenConfig, bump data-provider * refactor(custom): use tokenKey dependent on userProvided conditions for caching and fetching endpointTokenConfig, anticipate token rates from custom config * refactor(custom): assure endpointTokenConfig is only accessed from cache if qualifies for fetching * fix(ci): update tests for initializeClient based on userProvideURL changes * fix(EndpointService): correct baseURL env var for assistants: `ASSISTANTS_BASE_URL` * fix: unnecessary run cancellation on res.close() when response.run is completed * feat(assistants): user provided URL option * ci: update tests and add test for `assistants` endpoint * chore: leaner condition for request closing * chore: more descriptive error message to provide keys again
38 lines
1.2 KiB
JavaScript
38 lines
1.2 KiB
JavaScript
const { EModelEndpoint } = require('librechat-data-provider');
|
|
const { isUserProvided, generateConfig } = require('~/server/utils');
|
|
|
|
const {
|
|
OPENAI_API_KEY: openAIApiKey,
|
|
ASSISTANTS_API_KEY: assistantsApiKey,
|
|
AZURE_API_KEY: azureOpenAIApiKey,
|
|
ANTHROPIC_API_KEY: anthropicApiKey,
|
|
CHATGPT_TOKEN: chatGPTToken,
|
|
BINGAI_TOKEN: bingToken,
|
|
PLUGINS_USE_AZURE,
|
|
GOOGLE_KEY: googleKey,
|
|
OPENAI_REVERSE_PROXY,
|
|
AZURE_OPENAI_BASEURL,
|
|
ASSISTANTS_BASE_URL,
|
|
} = process.env ?? {};
|
|
|
|
const useAzurePlugins = !!PLUGINS_USE_AZURE;
|
|
|
|
const userProvidedOpenAI = useAzurePlugins
|
|
? isUserProvided(azureOpenAIApiKey)
|
|
: isUserProvided(openAIApiKey);
|
|
|
|
module.exports = {
|
|
config: {
|
|
openAIApiKey,
|
|
azureOpenAIApiKey,
|
|
useAzurePlugins,
|
|
userProvidedOpenAI,
|
|
googleKey,
|
|
[EModelEndpoint.openAI]: generateConfig(openAIApiKey, OPENAI_REVERSE_PROXY),
|
|
[EModelEndpoint.assistants]: generateConfig(assistantsApiKey, ASSISTANTS_BASE_URL),
|
|
[EModelEndpoint.azureOpenAI]: generateConfig(azureOpenAIApiKey, AZURE_OPENAI_BASEURL),
|
|
[EModelEndpoint.chatGPTBrowser]: generateConfig(chatGPTToken),
|
|
[EModelEndpoint.anthropic]: generateConfig(anthropicApiKey),
|
|
[EModelEndpoint.bingAI]: generateConfig(bingToken),
|
|
},
|
|
};
|