diff --git a/app/constant.ts b/app/constant.ts index a3d9c206f99..0d37a420b82 100644 --- a/app/constant.ts +++ b/app/constant.ts @@ -127,6 +127,8 @@ export const KnowledgeCutOffDate: Record = { "gpt-4-turbo": "2023-12", "gpt-4-turbo-2024-04-09": "2023-12", "gpt-4-turbo-preview": "2023-12", + "gpt-4o": "2023-10", + "gpt-4o-2024-05-13": "2023-10", "gpt-4-vision-preview": "2023-04", // After improvements, // it's now easier to add "KnowledgeCutOffDate" instead of stupid hardcoding it, as was done previously. @@ -144,8 +146,10 @@ const openaiModels = [ "gpt-4-32k-0613", "gpt-4-turbo", "gpt-4-turbo-preview", + "gpt-4o", + "gpt-4o-2024-05-13", "gpt-4-vision-preview", - "gpt-4-turbo-2024-04-09", + "gpt-4-turbo-2024-04-09" ]; const googleModels = [ diff --git a/app/utils.ts b/app/utils.ts index 07d0dcb13cc..d67346a2349 100644 --- a/app/utils.ts +++ b/app/utils.ts @@ -290,16 +290,17 @@ export function getMessageImages(message: RequestMessage): string[] { } export function isVisionModel(model: string) { - - // Note: This is a better way using the TypeScript feature instead of `&&` or `||` (ts v5.5.0-dev.20240314 I've been using) - const visionKeywords = [ "vision", "claude-3", "gemini-1.5-pro", + "gpt-4-turbo", + "gpt-4o", ]; + const isGpt4TurboPreview = model === "gpt-4-turbo-preview"; - const isGpt4Turbo = model.includes("gpt-4-turbo") && !model.includes("preview"); - - return visionKeywords.some((keyword) => model.includes(keyword)) || isGpt4Turbo; + return ( + visionKeywords.some((keyword) => model.includes(keyword)) && + !isGpt4TurboPreview + ); }