Cache Provider-Modelle in models_cache.json statt bei jedem Start von APIs zu laden
- LoadModelsAsync() prüft zuerst data/models_cache.json - Bei Cache-Hit: kein API-Call, sofortiger Start - RefreshModelsFromApis() lädt von APIs + speichert Cache - POST /api/models/refresh Endpoint für manuellen Refresh - dataDir an OpenAiService-Konstruktor übergeben
This commit is contained in:
1 parent
145441fa7b
commit
ed6e78de56
3 files changed
+62
-5
No files matched your search
@@ -1,4 +1,5 @@
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Gott.Services;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
@@ -13,6 +14,7 @@ public static class ModelsEndpoint
|
||||
app.MapGet("/api/models/nvidia", HandleNvidiaModels);
|
||||
app.MapGet("/api/models/pollinations", HandlePollinationsModels);
|
||||
app.MapGet("/api/models/gemini", HandleGeminiModels);
|
||||
app.MapPost("/api/models/refresh", HandleRefresh);
|
||||
}
|
||||
|
||||
private static IResult HandleNvidiaModels(OpenAiService openAiService)
|
||||
@@ -38,4 +40,10 @@ public static class ModelsEndpoint
|
||||
.ToList();
|
||||
return Results.Json(new { models });
|
||||
}
|
||||
|
||||
private static async Task<IResult> HandleRefresh(OpenAiService openAiService)
|
||||
{
|
||||
await openAiService.RefreshModelsFromApis();
|
||||
return Results.Json(new { success = true, message = "Modelle neu geladen und gecacht." });
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user