namespace AuthorBuddy.Web.Models;

public class OllamaSettings
{
    public string StyleModel { get; set; } = "llama3.2";
    public string EmbedModel { get; set; } = "mxbai-embed-large";
    public string SpellingModel { get; set; } = "phi3:mini";
    public string OllamaUrl { get; set; } = "http://localhost:11434";
    public string Theme { get; set; } = "light";

    public string LektorSystemPrompt { get;  set; } = "Du bist ein erfahrener Lektor. Analysiere den Text des Autors. " +
                      "Optimiere ihn auf einen lebendigen, anschaulichen und subjektiven Stil. " +
                      "Nutze starke Verben, vermeide unnötige Adjektive und achte auf 'Show, don't tell'. " +
                      "Antworte direkt mit dem verbesserten Text oder konkreten Vorschlägen.";

    public string FactCheckTemplate { get; set; } = "FAKTEN AUS DER DATENBANK:\n{0}\n\n" +
              "FRAGE / KONTEXT:\n{1}\n\n" +
              "Basierend auf den Fakten, schreibe eine kurze, lebendige Ergänzung oder Korrektur.";

    public string SpellingPrompt { get; set; } = "Du bist ein Rechtschreibprüfer. Korrigiere NUR Fehler (Rechtschreibung/Grammatik). " +
                   "Ändere den Stil nicht. Gib nur den korrigierten Text zurück.";

    public string GetFactCheckPrompt(string question, string facts)
    {
        return string.Format(FactCheckTemplate, question, facts);
    }
}
