Update LlmService to prioritize Gemini as the default provider for BYOK and adjust provider selection logic
- Changed the default LLM provider for BYOK from Claude to Gemini. - Updated the provider selection priority to Gemini > OpenAI > Claude for improved service efficiency. - Removed redundant gemini provider check from the SelectProvider method to streamline the logic.
This commit is contained in:
@@ -74,7 +74,7 @@ public class LlmService : ILlmService
|
||||
// BYOK: If user provides their own API key
|
||||
if (!string.IsNullOrWhiteSpace(request.ApiKey))
|
||||
{
|
||||
var requestedProvider = ParseProviderString(request.Provider) ?? LlmProvider.Claude; // Default to Claude for BYOK
|
||||
var requestedProvider = ParseProviderString(request.Provider) ?? LlmProvider.Gemini; // Default to Gemini for BYOK
|
||||
var providerName = ConvertLlmProviderToString(requestedProvider);
|
||||
provider = CreateProviderWithCustomKey(requestedProvider, request.ApiKey);
|
||||
_logger.LogInformation("Using BYOK for provider: {Provider} for user: {UserId}", providerName, user.Id);
|
||||
@@ -143,7 +143,11 @@ public class LlmService : ILlmService
|
||||
|
||||
private ILlmProvider SelectProvider()
|
||||
{
|
||||
// Priority: OpenAI > Claude > Gemini
|
||||
// Priority: Gemini > OpenAI > Claude
|
||||
var geminiKey = ConvertLlmProviderToString(LlmProvider.Gemini);
|
||||
if (_providers.TryGetValue(geminiKey, out var gemini))
|
||||
return gemini;
|
||||
|
||||
var openaiKey = ConvertLlmProviderToString(LlmProvider.OpenAI);
|
||||
if (_providers.TryGetValue(openaiKey, out var openai))
|
||||
return openai;
|
||||
@@ -152,10 +156,6 @@ public class LlmService : ILlmService
|
||||
if (_providers.TryGetValue(claudeKey, out var claude))
|
||||
return claude;
|
||||
|
||||
var geminiKey = ConvertLlmProviderToString(LlmProvider.Gemini);
|
||||
if (_providers.TryGetValue(geminiKey, out var gemini))
|
||||
return gemini;
|
||||
|
||||
throw new InvalidOperationException("No LLM providers are configured. Please add API keys to configuration.");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user