mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-21 10:50:14 +01:00
🔗 feat: User Provided Base URL for OpenAI endpoints (#1919)
* 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
This commit is contained in:
parent
53ae2d7bfb
commit
2f92b54787
17 changed files with 762 additions and 226 deletions
|
|
@ -171,16 +171,20 @@ export const configSchema = z.object({
|
|||
|
||||
export type TCustomConfig = z.infer<typeof configSchema>;
|
||||
|
||||
export const KnownEndpoints = {
|
||||
mistral: 'mistral',
|
||||
openrouter: 'openrouter',
|
||||
groq: 'groq',
|
||||
anyscale: 'anyscale',
|
||||
fireworks: 'fireworks',
|
||||
ollama: 'ollama',
|
||||
perplexity: 'perplexity',
|
||||
'together.ai': 'together.ai',
|
||||
} as const;
|
||||
export enum KnownEndpoints {
|
||||
mistral = 'mistral',
|
||||
openrouter = 'openrouter',
|
||||
groq = 'groq',
|
||||
anyscale = 'anyscale',
|
||||
fireworks = 'fireworks',
|
||||
ollama = 'ollama',
|
||||
perplexity = 'perplexity',
|
||||
'together.ai' = 'together.ai',
|
||||
}
|
||||
|
||||
export enum FetchTokenConfig {
|
||||
openrouter = KnownEndpoints.openrouter,
|
||||
}
|
||||
|
||||
export const defaultEndpoints: EModelEndpoint[] = [
|
||||
EModelEndpoint.openAI,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue