diff --git a/src/app/(main)/settings/llm/Groq/index.tsx b/src/app/(main)/settings/llm/Groq/index.tsx index b339f04ffd93..33e4b28d0575 100644 --- a/src/app/(main)/settings/llm/Groq/index.tsx +++ b/src/app/(main)/settings/llm/Groq/index.tsx @@ -15,6 +15,9 @@ const GroqProvider = memo(() => { } /> ); diff --git a/src/app/api/chat/agentRuntime.ts b/src/app/api/chat/agentRuntime.ts index 31fd70a32e95..7ff149d766b0 100644 --- a/src/app/api/chat/agentRuntime.ts +++ b/src/app/api/chat/agentRuntime.ts @@ -85,76 +85,68 @@ const getLlmOptionsFromPayload = (provider: string, payload: JWTPayload) => { accessKeySecret = payload?.awsSecretAccessKey; region = payload?.awsRegion; } - return { - accessKeyId, - accessKeySecret, - region, - }; + return { accessKeyId, accessKeySecret, region }; } case ModelProvider.Ollama: { const { OLLAMA_PROXY_URL } = getServerConfig(); const baseURL = payload?.endpoint || OLLAMA_PROXY_URL; - return { - baseURL, - }; + return { baseURL }; } case ModelProvider.Perplexity: { const { PERPLEXITY_API_KEY } = getServerConfig(); const apiKey = apiKeyManager.pick(payload?.apiKey || PERPLEXITY_API_KEY); - return { - apiKey, - }; + return { apiKey }; } case ModelProvider.Anthropic: { const { ANTHROPIC_API_KEY, ANTHROPIC_PROXY_URL } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || ANTHROPIC_API_KEY); const baseURL = payload?.endpoint || ANTHROPIC_PROXY_URL; - return { - apiKey, - baseURL, - }; + + return { apiKey, baseURL }; } case ModelProvider.Minimax: { const { MINIMAX_API_KEY } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || MINIMAX_API_KEY); - return { - apiKey, - }; + + return { apiKey }; } case ModelProvider.Mistral: { const { MISTRAL_API_KEY } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || MISTRAL_API_KEY); - return { - apiKey, - }; + + return { apiKey }; } case ModelProvider.Groq: { - const { GROQ_API_KEY } = getServerConfig(); + const { GROQ_API_KEY, GROQ_PROXY_URL } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || GROQ_API_KEY); - return { - apiKey, - }; + const baseURL = payload?.endpoint || GROQ_PROXY_URL; + + return { apiKey, baseURL }; } case ModelProvider.OpenRouter: { const { OPENROUTER_API_KEY } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || OPENROUTER_API_KEY); - return { - apiKey, - }; + + return { apiKey }; } case ModelProvider.TogetherAI: { const { TOGETHERAI_API_KEY } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || TOGETHERAI_API_KEY); - return { - apiKey, - }; + + return { apiKey }; } case ModelProvider.ZeroOne: { const { ZEROONE_API_KEY } = getServerConfig(); + const apiKey = apiKeyManager.pick(payload?.apiKey || ZEROONE_API_KEY); - return { - apiKey, - }; + + return { apiKey }; } } }; diff --git a/src/config/server/provider.ts b/src/config/server/provider.ts index 249ba8ffa14d..f4b1657e0758 100644 --- a/src/config/server/provider.ts +++ b/src/config/server/provider.ts @@ -54,6 +54,7 @@ declare global { // Groq Provider ENABLED_GROQ?: string; GROQ_API_KEY?: string; + GROQ_PROXY_URL?: string; // OpenRouter Provider ENABLED_OPENROUTER?: string; @@ -197,6 +198,7 @@ export const getProviderConfig = () => { MOONSHOT_PROXY_URL: process.env.MOONSHOT_PROXY_URL, ENABLED_GROQ: !!GROQ_API_KEY, + GROQ_PROXY_URL: process.env.GROQ_PROXY_URL, GROQ_API_KEY, ENABLED_ZEROONE: !!ZEROONE_API_KEY,