This image shows the architecture of different components of KomMKonLLM.
Architektur & Technologien
Beschreibung der Architektur und ausgewählter Technologien für KomMKonLLM (27.01.2025)
Förderjahr 2024 / Projekt Call #19 / ProjektID: 7409 / Projekt: KomMKonLLM

Hier beschreiben wir die Architektur und ausgewählte Technologien, die wir planen, in der Implementierung von KomMKonLLM zu verwenden.

Einen Überblick über die (vorläufige) technische Architektur zeigt das folgende Diagramm:

 

This image shows the architecture of different components of KomMKonLLM.
Komponenten der Architektur von KomMKonLLM. 

Im Folgenden geben wir eine kurze Beschreibung der Komponenten von obigem Diagramm an, stellen herausgearbeitete Anforderungen an verwendete Technologien in KomMKonLLM dar und präsentieren ausgewählte Software-Technologien, die in KomMKonLLM verwendet werden sollen.

 

Architektur-Kurzübersicht

Die einzelnen Komponenten im obigen Diagramm haben folgende Aufgaben:

  • Fragen“: Korpus aus Frage/Ja-Nein-Antwort Paaren in maschinen-lesbarem Format.
  • Synonyme“: Synonymdatensatz für Worte.
  • Runner”: Ausführung, Protokollierung und Auswertung von erzeugten Konsistenztests gegen LLMs.
  • Kombinatorische Arrays“: Repository aus kombinatorischen Arrays als Grundlage für die strukturierte Frageerzeugung zur Konsistenzevaluierung.
  • Resultate-DB“: DBMS zur Speicherung der Ergebnisse.
  • LLM-Schnittstelle“: Transformation von (erzeugten) Fragen in LLM-spezifische Prompts.
  • LLMs/SUTs: Die getesteten Instanzen von LLMs, hier mit der englischen Abkürzung „SUT“ und einer Indexnummer angegeben (Abkürzung steht für die englische Bezeichnung „system under test“ – sinngemäß als getestetes System übersetzt).

 

 

Anforderungen

 Wir wählen zu verwendete Technologien in Hinblick auf folgende Kriterien aus:

  • Popularität bei Entwicklern: Um die Verbreitung und Weiterentwicklung von KomMKonLLM zu vereinfachen, sollten Technologien weit genutzt werden (basierend auf GitHub Statistiken, oder unser eigener Erfahrung nach).
  • Aktive Entwicklung: Um das Risiko von Softwareobsoleszenz von verwendeten Komponenten zu mitigieren, sollten eingebundene Technologien nicht nur zum jetzingen Zeitpunkt aktuell gehalten sein, sondern es sollte auch eine aktive Weiterentwicklung in der Zukunft anzunehmen sein. Für diese Entscheidungen werden wir auch die Einschätzungen von CrOSSD [1] verwenden.
  • Lizenzkompatibilität: Ausgewählte Technologien können keine Einschränkungen auf die Lizensierung von KomMKonLLM [2] haben.

Programmiersprachen & Technologien

Zur technischen Umsetzung von KomMKonLLM haben wir Folgendes ausgewählt:

  • Programmiersprache: Der Hauptteil von KomMKonLLM wird in Python 3 implementiert werden. 
  • Orchestrierung/Virtualisierung: Das Aufsetzen der Infrastruktur wird mittels Docker Compose durchgeführt, welches ein Docker plugin ist, das das Zusammenstellen von ganzen Infrastrukturen von voneinander-abhängigen Containern ermöglicht.
  • Persistenz: Das relationale Datenbankmanagementsystem PostgreSQL wird für die dauerhafte Speicherung der Testergebnisse und als Grundlage für deren Auswertung verwendet. Der Datenaustausch mit dem DBMS und Python 3 ist über das pyscopg-Packet. Weiters wird die Auswertung pandas und numpy verwenden.
  • Inter-Prozess Kommunikation (engl. IPC): IPC wird durch http ermöglicht, vor allem durch REST APIs. Auf Server-Seite wird Flask zum Einsatz kommen und die entsprechende Kommunikation auf Client-Seite wird mittels der requests Bibliothek ermöglicht werden.
  • Linguistische Datenverarbeitung: Das „NLTK“ (engl., natural language toolkit) stellt eine Vielzahl an Funktionalität für Aufgaben im Bereich der linguistischen Datenverarbeitung dar, unter anderem auch Tokenisierung und Worttyp-Erkennung. Zusätzlich ist die Verwendung der spaCy Bibliothek geplant.
  • LLM-Schnittstelle: Diese Schnittstelle wird für jedes untersuchte LLM einzeln implementiert, um eine entsprechende Transformation auf das individuelle Eingabeformat zu ermöglichen. Hierzu kann auch die Unterstützung von bevorzugten Protokollen von LLM zählen.

 

[1] CrOSSD ist ein Netidee gefördertes Projekt (2022): https://www.netidee.at/crossd; bzw Nachfolge-Projekt CrOSSD2 | netidee Netidee Call #19 (2024): https://www.netidee.at/crossd2

[2] Die Lizenz von Softwareergebnissen von KomMKonLLM ist MIT license.

Bernhard Garn

Profile picture for user bernhard.garn
Homepage: https://matris.sba-research.org/bernhard-garn/
Google Scholar: https://scholar.google.at/citations?user=Afk5HBQAAAAJ&hl=en&oi=ao

Bernhard Garn is a research scientist in applied mathematics; senior researcher at the MATRIS Research Group (https://matris.sba-research.org/) at SBA Research (https://www.sba-research.org/).

Research Interests
At the core of Bernhard’s research is the application of discrete mathematics, in particular design theory, to scientific fields. With his background in mathematics, he is especially interested in the application of theoretical results to practical problems, effectively bridging the gap between mathematics and application domains.

His research interests include combinatorial mathematics for software testing, mathematical aspects of information security as well as discrete mathematics for disaster research.

He has developed further the underlying discrete mathematical structures used in combinatorial testing for software from a theoretical perspective using combinatorial and computer algebra techniques. He has also applied combinatorial security testing to several major modern issues in information security, thereby covering different layers of the software stack. In particular, Bernhard has developed CST approaches for web security (XSS, SQLi) and the security and reliability of operating systems. In the domain of online privacy, he has demonstrated how combinatorial methods can be used for browser fingerprinting.

Bernhard is further interested in disaster research, ranging from natural, cyber disasters in critical infrastructure to financial disasters, with the goal of strengthening preparedness and resilience.

Bio
Bernhard received a Bachelor of Science and a Diplomingineur in Technical Mathematics, as well as a Doctoral degree in technical sciences (Informatics) from TU Wien.
CAPTCHA
Diese Frage dient der Überprüfung, ob Sie ein menschlicher Besucher sind und um automatisierten SPAM zu verhindern.
    Datenschutzinformation
    Der datenschutzrechtliche Verantwortliche (Internet Privatstiftung Austria - Internet Foundation Austria, Österreich) würde gerne mit folgenden Diensten Ihre personenbezogenen Daten verarbeiten. Zur Personalisierung können Technologien wie Cookies, LocalStorage usw. verwendet werden. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, können Sie Ihre Einwilligung jederzeit via unserer Datenschutzerklärung anpassen oder widerrufen.