@page "/settings" @inject ISettingsService SettingsService @inject IThemeService ThemeService @inject IOllamaService OllamaService @inject NavigationManager Navigation @inject IJSRuntime JSRuntime @inject IProjectService ProjectService Einstellungen - Author Buddy

Modelle

Ollama Server

Adresse des Ollama-Servers (z. B. http://192.168.1.100:11434)

Design

Lektor-System-Prompt

Fact-Check-Vorlage

Rechtschreibprüfungs-Prompt

@if (!string.IsNullOrEmpty(statusMessage)) { @statusMessage }
@code { private string ragModel = "llama3.2"; private string styleModel = "llama3.2"; private string spellingModel = "phi3:mini"; private string selectedTheme = "light"; private string ollamaUrl = "http://localhost:11434"; private string lektorPrompt = string.Empty; private string factCheckTemplate = string.Empty; private string spellingPrompt = string.Empty; private string newProjectName = string.Empty; private string statusMessage = string.Empty; private List availableModels = new(); protected override async Task OnInitializedAsync() { ragModel = await SettingsService.GetRagModelAsync() ?? "llama3.2"; styleModel = await SettingsService.GetStyleModelAsync() ?? "llama3.2"; spellingModel = await SettingsService.GetSpellingModelAsync() ?? "phi3:mini"; selectedTheme = await SettingsService.GetThemeAsync() ?? "light"; ollamaUrl = await SettingsService.GetOllamaUrlAsync() ?? "http://localhost:11434"; lektorPrompt = await SettingsService.GetLektorSystemPromptAsync() ?? string.Empty; factCheckTemplate = await SettingsService.GetFactCheckTemplateAsync() ?? string.Empty; spellingPrompt = await SettingsService.GetSpellingPromptAsync() ?? string.Empty; try { var models = await OllamaService.GetLocalModelsAsync(); availableModels = models.ToList(); } catch { availableModels = new(); } } private async Task SaveSettings() { await SettingsService.SaveOllamaUrlAsync(ollamaUrl); await SettingsService.SaveRagModelAsync(ragModel); await SettingsService.SaveStyleModelAsync(styleModel); await SettingsService.SaveSpellingModelAsync(spellingModel); await SettingsService.SaveThemeAsync(selectedTheme); await SettingsService.SaveLektorSystemPromptAsync(lektorPrompt); await SettingsService.SaveFactCheckTemplateAsync(factCheckTemplate); await SettingsService.SaveSpellingPromptAsync(spellingPrompt); OllamaService.Reconfigure(ollamaUrl); statusMessage = "Einstellungen gespeichert."; await ThemeService.ApplyTheme(selectedTheme); } }