From 5e1fffe07d096892601118637df6910038c0b8d6 Mon Sep 17 00:00:00 2001 From: nai-degen Date: Thu, 15 Aug 2024 11:54:42 -0500 Subject: [PATCH] adds chatgpt-4o-latest --- src/config.ts | 8 ++++---- .../request/preprocessors/validate-context-size.ts | 2 ++ src/proxy/openai.ts | 2 ++ src/shared/api-schemas/openai.ts | 2 +- src/shared/models.ts | 1 + 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/config.ts b/src/config.ts index 7d4a5a1..d4e4899 100644 --- a/src/config.ts +++ b/src/config.ts @@ -415,18 +415,18 @@ export const config: Config = { firebaseKey: getEnvWithDefault("FIREBASE_KEY", undefined), textModelRateLimit: getEnvWithDefault("TEXT_MODEL_RATE_LIMIT", 4), imageModelRateLimit: getEnvWithDefault("IMAGE_MODEL_RATE_LIMIT", 4), - maxContextTokensOpenAI: getEnvWithDefault("MAX_CONTEXT_TOKENS_OPENAI", 16384), + maxContextTokensOpenAI: getEnvWithDefault("MAX_CONTEXT_TOKENS_OPENAI", 32768), maxContextTokensAnthropic: getEnvWithDefault( "MAX_CONTEXT_TOKENS_ANTHROPIC", - 0 + 32768 ), maxOutputTokensOpenAI: getEnvWithDefault( ["MAX_OUTPUT_TOKENS_OPENAI", "MAX_OUTPUT_TOKENS"], - 400 + 1024 ), maxOutputTokensAnthropic: getEnvWithDefault( ["MAX_OUTPUT_TOKENS_ANTHROPIC", "MAX_OUTPUT_TOKENS"], - 400 + 1024 ), allowedModelFamilies: getEnvWithDefault( "ALLOWED_MODEL_FAMILIES", diff --git a/src/proxy/middleware/request/preprocessors/validate-context-size.ts b/src/proxy/middleware/request/preprocessors/validate-context-size.ts index 1cf9854..9d7cab5 100644 --- a/src/proxy/middleware/request/preprocessors/validate-context-size.ts +++ b/src/proxy/middleware/request/preprocessors/validate-context-size.ts @@ -58,6 +58,8 @@ export const validateContextSize: RequestPreprocessor = async (req) => { modelMax = 16384; } else if (model.match(/^gpt-4o/)) { modelMax = 128000; + } else if (model.match(/^chatgpt-4o/)) { + modelMax = 128000; } else if (model.match(/gpt-4-turbo(-\d{4}-\d{2}-\d{2})?$/)) { modelMax = 131072; } else if (model.match(/gpt-4-turbo(-preview)?$/)) { diff --git a/src/proxy/openai.ts b/src/proxy/openai.ts index 5584f59..cd80f13 100644 --- a/src/proxy/openai.ts +++ b/src/proxy/openai.ts @@ -35,6 +35,8 @@ export const KNOWN_OPENAI_MODELS = [ // GPT4o Mini "gpt-4o-mini", "gpt-4o-mini-2024-07-18", + // GPT4o (ChatGPT) + "chatgpt-4o-latest", // GPT4 Turbo (superceded by GPT4o) "gpt-4-turbo", "gpt-4-turbo-2024-04-09", // gpt4-turbo stable, with vision diff --git a/src/shared/api-schemas/openai.ts b/src/shared/api-schemas/openai.ts index 0f0e420..58b3ceb 100644 --- a/src/shared/api-schemas/openai.ts +++ b/src/shared/api-schemas/openai.ts @@ -52,7 +52,7 @@ export const OpenAIV1ChatCompletionSchema = z .number() .int() .nullish() - .default(Math.min(OPENAI_OUTPUT_MAX, 4096)) + .default(Math.min(OPENAI_OUTPUT_MAX, 16384)) .transform((v) => Math.min(v ?? OPENAI_OUTPUT_MAX, OPENAI_OUTPUT_MAX)), frequency_penalty: z.number().optional().default(0), presence_penalty: z.number().optional().default(0), diff --git a/src/shared/models.ts b/src/shared/models.ts index 66255bf..874c107 100644 --- a/src/shared/models.ts +++ b/src/shared/models.ts @@ -130,6 +130,7 @@ export const IMAGE_GEN_MODELS: ModelFamily[] = ["dall-e", "azure-dall-e"]; export const OPENAI_MODEL_FAMILY_MAP: { [regex: string]: OpenAIModelFamily } = { "^gpt-4o(-\\d{4}-\\d{2}-\\d{2})?$": "gpt4o", + "^chatgpt-4o": "gpt4o", "^gpt-4o-mini(-\\d{4}-\\d{2}-\\d{2})?$": "turbo", // closest match "^gpt-4-turbo(-\\d{4}-\\d{2}-\\d{2})?$": "gpt4-turbo", "^gpt-4-turbo(-preview)?$": "gpt4-turbo",