From 00c04657bd23649ffb8961967433221c5fd5e73e Mon Sep 17 00:00:00 2001 From: nor0x Date: Mon, 9 Sep 2024 17:47:56 +0200 Subject: [PATCH] =?UTF-8?q?multi-party=20=F0=9F=A5=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WahlGPT.Common/Settings.cs | 8 ++ WahlGPT.Web/Pages/Home.razor | 156 ++++++++++++++++++-------------- WahlGPT.Web/wwwroot/css/app.css | 118 +++++++++++++----------- 3 files changed, 161 insertions(+), 121 deletions(-) diff --git a/WahlGPT.Common/Settings.cs b/WahlGPT.Common/Settings.cs index cf77fe7..b3b4dde 100644 --- a/WahlGPT.Common/Settings.cs +++ b/WahlGPT.Common/Settings.cs @@ -41,11 +41,19 @@ public static IKernelMemory BuildKernelMemory() TextModel = TextModel, }; + var azureBlobStorageConfig = new AzureBlobsConfig + { + Auth = AzureBlobsConfig.AuthTypes.ConnectionString, + ConnectionString = BlobConnectionString, + Container = "wahlgpt" + }; + #pragma warning disable KMEXP00 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed. var kernelMemory = new KernelMemoryBuilder() .WithContentDecoder(new TextDecoder()) .WithOpenAITextEmbeddingGeneration(embeddingConfig) .WithOpenAITextGeneration(generationConfig) + .WithAzureBlobsDocumentStorage(azureBlobStorageConfig) .WithSearchClientConfig(new SearchClientConfig { Temperature = 0.7, diff --git a/WahlGPT.Web/Pages/Home.razor b/WahlGPT.Web/Pages/Home.razor index c47915a..f8868b0 100644 --- a/WahlGPT.Web/Pages/Home.razor +++ b/WahlGPT.Web/Pages/Home.razor @@ -47,44 +47,49 @@
+
+

+ @_question +

+
+ @if (_waitingForAnswer) + { +
+ + + +
+ }
-
-
-

- @_question + @if (_answers is not null) + { + + @foreach (var answer in _answers.OrderByDescending(a => _parties.First(p => p.party == a.party).order)) + { + +
- @_parties.FirstOrDefault(p => p.selected).party + @answer.party -

-
- @if (_waitingForAnswer) - { -
- - - +

@((MarkupString)ChatManager.ConvertToHtml(answer.answer))

+
- } - else - { -

@((MarkupString)ChatManager.ConvertToHtml(_answer))

- } -
-
-
-

- Quellen: -

-
- @if (_citations is not null) - { -
- @foreach (var citation in _citations) +
+
+

+ Quellen: +

+
+ @if (answer.source?.Partitions is not null) { +
+ + @foreach (var citation in answer.source.Partitions.Take(3)) + {
-
- } + } -
- } - @if (!string.IsNullOrEmpty(_downloadUrl)) - { -

- Wahlprogamm herunterladen: - @_downloadUrl.Split("/").Last(); - -

+
+ } + else + { +

Keine Quellen gefunden.

+ } + + + + @if (!string.IsNullOrEmpty(_downloadUrl)) + { +

+ Wahlprogamm herunterladen: + @GetDownloadUrl(answer.party).Split("/").LastOrDefault() + +

+ } + } - + }

- Diese Antwort wurde mittels Retrieval-Augmented Generation (RAG) und einem Large-Language Model (LLM) erstellt. Diese Technologien kombinieren die Fähigkeit, relevante Daten aus verschiedenen Quellen abzurufen, und mittels Textgenerierung Zusammenfassungen zu erstellen. Bitte berücksichtige, dass die Möglichkeit von Fehlern oder Ungenauigkeiten besteht. + Diese Antworten wurde mittels Retrieval-Augmented Generation (RAG) und einem Large-Language Model (LLM) erstellt. Diese Technologien kombinieren die Fähigkeit, relevante Daten aus verschiedenen Quellen abzurufen, und mittels Textgenerierung Zusammenfassungen zu erstellen. Bitte berücksichtige, dass die Möglichkeit von Fehlern oder Ungenauigkeiten besteht.

@@ -135,7 +149,7 @@ Antwortgenerierung (Augmented Generation): Das LLM verarbeitet die gefundenen Informationen und formuliert eine verständliche Antwort.

Durch diese Kombination von Suche und Textgenerierung kann das LLM präzise und nützliche Antworten auf deine Fragen zu Wahlprogrammen geben. Du erhältst schnell klare Informationen, ohne die gesamten Texte selbst durchsuchen zu müssen.

-

der Code von WahlGPT ist open-source und auf GitHub verfügbar.

+

der Code von WahlGPT ist open-source und auf GitHub verfügbar. Dort können auch alle Wahlprogramme die als Import verwendet heruntergeladen werden.

@@ -147,7 +161,8 @@

Support?

-

jede Antwort die von WahlGPT generiert wird, kostet Geld.
Wenn du das Projekt unterstützen möchtest, kannst du das hier tun. +

+ jede Antwort die von WahlGPT generiert wird, kostet Geld.
Wenn du das Projekt unterstützen möchtest, kannst du das hier tun.