From b1e4d4ea8d2c909536a917fcbe340c9fb5251c51 Mon Sep 17 00:00:00 2001 From: Emerson Gomes Date: Tue, 17 Dec 2024 16:20:46 -0600 Subject: [PATCH 1/2] Adds icons for Amazon, Meta and Mistral models (when proxied via LiteLLM) --- web/public/Amazon.svg | 1 + web/public/Meta.svg | 9 +++++++++ web/public/Mistral.svg | 1 + .../app/admin/configuration/llm/interfaces.ts | 13 +++++++++++++ web/src/components/icons/icons.tsx | 18 ++++++++++++++++++ web/src/lib/hooks.ts | 17 +++++++++++++++++ web/src/lib/llm/utils.ts | 9 +++++++++ 7 files changed, 68 insertions(+) create mode 100755 web/public/Amazon.svg create mode 100755 web/public/Meta.svg create mode 100755 web/public/Mistral.svg diff --git a/web/public/Amazon.svg b/web/public/Amazon.svg new file mode 100755 index 000000000..1d9deec75 --- /dev/null +++ b/web/public/Amazon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/public/Meta.svg b/web/public/Meta.svg new file mode 100755 index 000000000..11b683a4c --- /dev/null +++ b/web/public/Meta.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/Mistral.svg b/web/public/Mistral.svg new file mode 100755 index 000000000..0775fe7e0 --- /dev/null +++ b/web/public/Mistral.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/src/app/admin/configuration/llm/interfaces.ts b/web/src/app/admin/configuration/llm/interfaces.ts index b47fcc6ce..96ccd5ed1 100644 --- a/web/src/app/admin/configuration/llm/interfaces.ts +++ b/web/src/app/admin/configuration/llm/interfaces.ts @@ -1,8 +1,11 @@ import { AnthropicIcon, + AmazonIcon, AWSIcon, AzureIcon, CPUIcon, + MistralIcon, + MetaIcon, OpenAIIcon, GeminiIcon, OpenSourceIcon, @@ -72,12 +75,22 @@ export const getProviderIcon = (providerName: string, modelName?: string) => { switch (providerName) { case "openai": // Special cases for openai based on modelName + if (modelName?.toLowerCase().includes("amazon")) { + return AmazonIcon; + } + if (modelName?.toLowerCase().includes("mistral")) { + return MistralIcon; + } + if (modelName?.toLowerCase().includes("llama")) { + return MetaIcon; + } if (modelName?.toLowerCase().includes("gemini")) { return GeminiIcon; } if (modelName?.toLowerCase().includes("claude")) { return AnthropicIcon; } + return OpenAIIcon; // Default for openai case "anthropic": return AnthropicIcon; diff --git a/web/src/components/icons/icons.tsx b/web/src/components/icons/icons.tsx index 44ec4ad25..e2a2e9f0d 100644 --- a/web/src/components/icons/icons.tsx +++ b/web/src/components/icons/icons.tsx @@ -39,7 +39,10 @@ import Image, { StaticImageData } from "next/image"; import jiraSVG from "../../../public/Jira.svg"; import confluenceSVG from "../../../public/Confluence.svg"; import openAISVG from "../../../public/Openai.svg"; +import amazonSVG from "../../../public/Amazon.svg"; import geminiSVG from "../../../public/Gemini.svg"; +import metaSVG from "../../../public/Meta.svg"; +import mistralSVG from "../../../public/Mistral.svg"; import openSourceIcon from "../../../public/OpenSource.png"; import litellmIcon from "../../../public/LiteLLM.jpg"; @@ -1104,6 +1107,21 @@ export const GeminiIcon = ({ className = defaultTailwindCSS, }: IconProps) => ; +export const AmazonIcon = ({ + size = 16, + className = defaultTailwindCSS, +}: IconProps) => ; + +export const MetaIcon = ({ + size = 16, + className = defaultTailwindCSS, +}: IconProps) => ; + +export const MistralIcon = ({ + size = 16, + className = defaultTailwindCSS, +}: IconProps) => ; + export const VoyageIcon = ({ size = 16, className = defaultTailwindCSS, diff --git a/web/src/lib/hooks.ts b/web/src/lib/hooks.ts index 6c7592ea1..8ed2103aa 100644 --- a/web/src/lib/hooks.ts +++ b/web/src/lib/hooks.ts @@ -318,6 +318,15 @@ const MODEL_DISPLAY_NAMES: { [key: string]: string } = { "gpt-3.5-turbo-16k-0613": "GPT 3.5 Turbo 16k (June 2023)", "gpt-3.5-turbo-0301": "GPT 3.5 Turbo (March 2023)", + // Amazon models + "amazon.nova-micro@v1": "Amazon Nova Micro", + "amazon.nova-lite@v1": "Amazon Nova Lite", + "amazon.nova-pro@v1": "Amazon Nova Pro", + + // Meta models + "llama-3.2-90b-vision-instruct": "Llama 3.2 90B", + "llama-3.2-11b-vision-instruct": "Llama 3.2 11B", + // Anthropic models "claude-3-opus-20240229": "Claude 3 Opus", "claude-3-sonnet-20240229": "Claude 3 Sonnet", @@ -329,6 +338,9 @@ const MODEL_DISPLAY_NAMES: { [key: string]: string } = { "claude-3-5-sonnet-20241022": "Claude 3.5 Sonnet (New)", "claude-3-5-sonnet-v2@20241022": "Claude 3.5 Sonnet (New)", "claude-3.5-sonnet-v2@20241022": "Claude 3.5 Sonnet (New)", + "claude-3-5-haiku-20241022": "Claude 3.5 Haiku", + "claude-3-5-haiku@20241022": "Claude 3.5 Haiku", + "claude-3.5-haiku@20241022": "Claude 3.5 Haiku", // Google Models "gemini-1.5-pro": "Gemini 1.5 Pro", @@ -337,6 +349,11 @@ const MODEL_DISPLAY_NAMES: { [key: string]: string } = { "gemini-1.5-flash-001": "Gemini 1.5 Flash", "gemini-1.5-pro-002": "Gemini 1.5 Pro (v2)", "gemini-1.5-flash-002": "Gemini 1.5 Flash (v2)", + "gemini-2.0-flash-exp": "Gemini 2.0 Flash (Experimental)", + + // Mistral Models + "mistral-large-2411": "Mistral Large 24.11", + "mistral-large@2411": "Mistral Large 24.11", // Bedrock models "meta.llama3-1-70b-instruct-v1:0": "Llama 3.1 70B", diff --git a/web/src/lib/llm/utils.ts b/web/src/lib/llm/utils.ts index b200ba391..8e2ece1e8 100644 --- a/web/src/lib/llm/utils.ts +++ b/web/src/lib/llm/utils.ts @@ -74,6 +74,8 @@ const MODEL_NAMES_SUPPORTING_IMAGE_INPUT = [ "claude-3-opus-20240229", "claude-3-sonnet-20240229", "claude-3-haiku-20240307", + // custom claude names + "claude-3.5-sonnet-v2@20241022", // claude names with AWS Bedrock Suffix "claude-3-opus-20240229-v1:0", "claude-3-sonnet-20240229-v1:0", @@ -93,6 +95,13 @@ const MODEL_NAMES_SUPPORTING_IMAGE_INPUT = [ "gemini-1.5-flash-001", "gemini-1.5-pro-002", "gemini-1.5-flash-002", + "gemini-2.0-flash-exp", + // amazon models + "amazon.nova-lite@v1", + "amazon.nova-pro@v1", + // meta models + "llama-3.2-90b-vision-instruct", + "llama-3.2-11b-vision-instruct" ]; export function checkLLMSupportsImageInput(model: string) { From f56fda27c9dda503554441529a6e65faa02d26e2 Mon Sep 17 00:00:00 2001 From: Emerson Gomes Date: Tue, 17 Dec 2024 16:37:52 -0600 Subject: [PATCH 2/2] Add also Microsoft models --- web/public/Microsoft.svg | 6 ++++++ web/src/app/admin/configuration/llm/interfaces.ts | 4 ++++ web/src/components/icons/icons.tsx | 6 ++++++ web/src/lib/hooks.ts | 6 ++++++ 4 files changed, 22 insertions(+) create mode 100755 web/public/Microsoft.svg diff --git a/web/public/Microsoft.svg b/web/public/Microsoft.svg new file mode 100755 index 000000000..383a5ac3a --- /dev/null +++ b/web/public/Microsoft.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/src/app/admin/configuration/llm/interfaces.ts b/web/src/app/admin/configuration/llm/interfaces.ts index 96ccd5ed1..1da0e2e98 100644 --- a/web/src/app/admin/configuration/llm/interfaces.ts +++ b/web/src/app/admin/configuration/llm/interfaces.ts @@ -4,6 +4,7 @@ import { AWSIcon, AzureIcon, CPUIcon, + MicrosoftIconSVG, MistralIcon, MetaIcon, OpenAIIcon, @@ -78,6 +79,9 @@ export const getProviderIcon = (providerName: string, modelName?: string) => { if (modelName?.toLowerCase().includes("amazon")) { return AmazonIcon; } + if (modelName?.toLowerCase().includes("phi")) { + return MicrosoftIconSVG; + } if (modelName?.toLowerCase().includes("mistral")) { return MistralIcon; } diff --git a/web/src/components/icons/icons.tsx b/web/src/components/icons/icons.tsx index e2a2e9f0d..fe07617ee 100644 --- a/web/src/components/icons/icons.tsx +++ b/web/src/components/icons/icons.tsx @@ -52,6 +52,7 @@ import asanaIcon from "../../../public/Asana.png"; import anthropicSVG from "../../../public/Anthropic.svg"; import nomicSVG from "../../../public/nomic.svg"; import microsoftIcon from "../../../public/microsoft.png"; +import microsoftSVG from "../../../public/Microsoft.svg"; import mixedBreadSVG from "../../../public/Mixedbread.png"; import OCIStorageSVG from "../../../public/OCI.svg"; @@ -1117,6 +1118,11 @@ export const MetaIcon = ({ className = defaultTailwindCSS, }: IconProps) => ; +export const MicrosoftIconSVG = ({ + size = 16, + className = defaultTailwindCSS, +}: IconProps) => ; + export const MistralIcon = ({ size = 16, className = defaultTailwindCSS, diff --git a/web/src/lib/hooks.ts b/web/src/lib/hooks.ts index 8ed2103aa..214ecb6a8 100644 --- a/web/src/lib/hooks.ts +++ b/web/src/lib/hooks.ts @@ -326,6 +326,12 @@ const MODEL_DISPLAY_NAMES: { [key: string]: string } = { // Meta models "llama-3.2-90b-vision-instruct": "Llama 3.2 90B", "llama-3.2-11b-vision-instruct": "Llama 3.2 11B", + "llama-3.3-70b-instruct": "Llama 3.3 70B", + + // Microsoft models + "phi-3.5-mini-instruct": "Phi 3.5 Mini", + "phi-3.5-moe-instruct": "Phi 3.5 MoE", + "phi-3.5-vision-instruct": "Phi 3.5 Vision", // Anthropic models "claude-3-opus-20240229": "Claude 3 Opus",