feat: Gemini als Provider hinzugefügt (Free-Tier-Modelle hardcodiert)

- OpenAiService: Gemini-Provider mit Base-URL generativelanguage.googleapis.com/v1beta/openai
- GeminiApiKey aus IConfiguration (appsettings.json / appsettings.Production.json)
- Gemini Free-Tier-Modelle hardcodiert: 2.5 Pro, 2.5 Flash, 2.5 Flash Lite
- ModelsEndpoint: /api/models/gemini Endpoint
- Frontend: geminiOptgroup dynamisch befüllt
- ProviderKeys als static HashSet (für ChatService.ResolveModelId)
This commit is contained in:
Meleki committed 2026-03-11 18:41:47 +01:00
1 parent 50e09bbc36
commit e87455ffe9
6 files changed
+45 -15

No files matched your search

+9
View File
@@ -12,6 +12,7 @@ public static class ModelsEndpoint
{
app.MapGet("/api/models/nvidia", HandleNvidiaModels);
app.MapGet("/api/models/pollinations", HandlePollinationsModels);
app.MapGet("/api/models/gemini", HandleGeminiModels);
}
private static IResult HandleNvidiaModels(OpenAiService openAiService)
@@ -29,4 +30,12 @@ public static class ModelsEndpoint
.ToList();
return Results.Json(new { models });
}
private static IResult HandleGeminiModels(OpenAiService openAiService)
{
var models = openAiService.GetGeminiModels()
.Select(m => new { id = m.Id, displayName = m.DisplayName })
.ToList();
return Results.Json(new { models });
}
}