Sci Simple

New Science Research Articles Everyday

# Computerwissenschaften # Datenbanken # Künstliche Intelligenz # Programmiersprachen

Fortschritte bei Tools zur Log-Abfrageerstellung

Die Art, wie wir Logs abfragen, revolutionieren mit feinabgestimmten Modellen.

Vishwanath Seshagiri, Siddharth Balyan, Vaastav Anand, Kaustubh Dhole, Ishan Sharma, Avani Wildani, José Cambronero, Andreas Züfle

― 6 min Lesedauer


Log-Abfrage-Tools Log-Abfrage-Tools verbessert Log-Abfragen erheblich. Feinjustierte Modelle verbessern
Inhaltsverzeichnis

In der Welt von Daten und Technologie ist es mega hilfreich, Fragen zu stellen und Antworten aus Protokollen zu bekommen. Stell dir Protokolle wie die Aufzeichnungen vor, die erzählen, was in einem Computersystem passiert ist, irgendwie wie ein Tagebuch, aber für Maschinen. Um das Ganze einfacher zu machen, haben Forscher an Tools gearbeitet, die normale Fragen in Abfragen umwandeln, die Computer verstehen. Dieser Prozess wird als Abfrage-Generierung bezeichnet.

Evaluationsrahmen für die Abfrage-Generierung

Um zu checken, wie gut diese Tools funktionieren, haben Experten ein gründliches System zur Bewertung entwickelt. Dieses System schaut sich mehrere wichtige Bereiche an. Erstens vergleicht es feinabgestimmte Modelle mit den Grundmodellen. Zweitens untersucht es, wie die Grösse der Daten, die für die Feinabstimmung der Modelle verwendet werden, deren Leistung beeinflusst. Drittens wird geprüft, wie gut diese Modelle in verschiedenen Einstellungen oder Anwendungen funktionieren können. Schliesslich wird eine detaillierte Bewertung der generierten Abfragen durchgeführt, wobei ein spezieller Score zur Messung ihrer Qualität verwendet wird.

Mit diesem strukturierten Ansatz kriegt man einen klaren Überblick darüber, wie zuverlässig diese Tools sind und wie effektiv sie sich an verschiedene Situationen anpassen können.

Datenaufbereitung

Um sicherzustellen, dass alles reibungslos mit dem Indexierungssystem des Computers läuft, wurden die Protokolle in ein Format verarbeitet, das das System verstehen konnte. Das wurde durch Templates gemacht. Schlüssel-Wert-Paare wurden aus den Templates erstellt, mit Labels, die aus spezifischen Protokoll-Schlüsseln bestehen. Dann wurden vorhandene Tools verwendet, um die benötigten Werte aus jeder Zeile in den Protokollen zu extrahieren.

Da das System nach Abfragen basierend auf der Zeit sucht, wurden die Zeitstempel in den Protokollen aktualisiert. Sie wurden auf aktuellere Daten geändert, während die Reihenfolge der Protokollzeilen korrekt blieb. Die meisten Protokollabfragen müssen nach Daten der letzten Woche suchen, daher war dieser Schritt sehr wichtig, um das Durchsuchen und Analysieren der Protokolle einfacher zu machen.

Tests durchführen

Natürliche Sprachfragen aus einem Testset wurden durch verschiedene Tools, wie die neuesten Modelle und Dienste, geleitet. Die generierten Abfragen wurden auf einem lokalen System ausgeführt, um sicherzustellen, dass es keine Probleme mit Netzwerkverzögerungen gab. Die Ergebnisse dieser Abfragen wurden anhand verschiedener Leistungskennzahlen verglichen.

Leistung der feinabgestimmten Modelle

Während der Tests wollte das Team sehen, wie gut die verbesserten Modelle Abfragen generieren können im Vergleich zu den Grundmodellen. Sie verwendeten die Hälfte der Proben, um die Modelle zu verbessern, und folgten dabei einer bestimmten Methode. Die Ergebnisse zeigten signifikante Verbesserungen bei der Genauigkeit der Antworten und der Relevanz der generierten Abfragen.

Die meisten der gemachten Abfragen waren nutzbar. Allerdings hatten etwa 10 % davon Syntaxfehler, wie fehlende Protokollzeilen oder falsche Ausdrücke. Unter den verbesserten Modellen stach eines durch seine Top-Leistung hervor und zeigte beeindruckende Genauigkeitswerte nach der Feinabstimmung.

Einige Modelle zeigten bemerkenswerte Verbesserungen, wobei die Genauigkeit von sehr niedrig auf ziemlich hoch anstieg. Während ein Modell die grössten Fortschritte machte, zeigten auch andere sinnvolle Gewinne und verbesserten ihre Fähigkeit, korrekte Abfragen zu generieren. Die Perplexitätswerte wiesen zudem darauf hin, dass bestimmte Modelle eine bessere Kohärenz aufwiesen, was ihre Fähigkeit zeigt, nützliche Ausgaben vorherzusagen.

Beispiele für Abfragen vor und nach der Feinabstimmung

Um den Unterschied vor und nach der Feinabstimmung zu sehen, wurden einige Beispiele für generierte Abfragen analysiert. Vor der Feinabstimmung hatten die Modelle mehrere häufige Fehler. Dazu gehörten falsche Labelverwendung, fehlplatzierte Zeitstempel und Syntaxprobleme. Zum Beispiel hatte eine falsche Abfrage eine falsche Labelnutzung, während eine andere Fehler in der Zeitformatierung hatte.

Nach der Feinabstimmung verbesserte sich die Qualität der generierten Abfragen enorm. Die korrigierten Versionen setzten die richtige Syntax um und erfassten die beabsichtigten Protokolldaten effektiver. Die generierten Abfragen entsprachen jetzt den benötigten Formaten und zeigten den positiven Effekt des Verbesserungsprozesses.

Analyse der Auswirkungen von Feinabstimmungsproben

Die Forscher untersuchten, wie sich die Anzahl der verwendeten Proben auf die Modelle auswirkte. Sie verwendeten unterschiedliche Probengrössen für die Feinabstimmung und bewerteten die Leistung der Modelle anhand eines Testsets. Die Ergebnisse zeigten konsequent ein Muster: Je mehr Proben verwendet wurden, desto besser wurde die Leistung, bis sie ein Plateau erreichte.

Zum Beispiel zeigte ein Modell einen signifikanten Anstieg der Genauigkeit von 20 % auf 60 % der Trainingsdaten. Nach dem Erreichen von 60 % wurden die Verbesserungen weniger auffällig, was darauf hindeutet, dass es ein Limit gibt, wie viel besser ein Modell mit mehr Trainingsdaten werden kann. Die meisten Verbesserungen traten in den frühen Phasen der Erhöhung der Probengrössen auf.

Übertragbarkeit der feinabgestimmten Modelle

Um zu überprüfen, ob die verbesserten Modelle mit verschiedenen Anwendungen umgehen konnten, testeten die Forscher sie mit Daten, die sie noch nicht gesehen hatten. Die Modelle wurden mit Daten aus zwei Anwendungen fein abgestimmt und dann in einer dritten, unbekannten Anwendung bewertet. Die Ergebnisse zeigten, dass die feinabgestimmten Modelle besser abschnitten als die nicht feinabgestimmten, aber sie hatten immer noch einige Einschränkungen.

Ein Modell zeigte insbesondere eine recht gute Leistung in allen Anwendungen. Auch wenn die Ergebnisse variierten, übertraf es dennoch die Modelle, die nicht verbessert wurden, deutlich. Kleinere Modelle zeigten zwar einige Verbesserungen, hatten jedoch weiterhin Schwierigkeiten, alle erforderlichen Protokollmuster zu erfassen.

Qualitätsanalyse des Codes

Um die Qualität der generierten Abfragen zu betrachten, verwendeten die Forscher ein spezielles Punktesystem. Sie verfeinerten das Bewertungsmodell, um die Qualität der Ausgaben genau bewerten zu können. Die Bewertung zeigte, dass ein Modell durchweg die höchsten Bewertungen in allen Anwendungen erreichte, was darauf hindeutet, dass seine Abfragen sehr nah an den besten Referenzabfragen waren.

Ein anderes Modell schnitt dagegen viel schlechter ab, was darauf hindeutet, dass seine Ausgaben erheblich verbessert werden müssen, um korrekt zu funktionieren. Das dritte Modell zeigte eine moderate Leistung, was bedeutet, dass es noch Arbeit vor sich hat, um seine Abfragegenerierung zu verbessern.

Fazit

Insgesamt hat diese Bewertung gezeigt, dass feinabgestimmte Modelle effektiv Protokollabfragen generieren können. Einige Modelle stachen klar hervor, wobei eines in Bezug auf Genauigkeit und Qualität besonders herausragend war. Die weniger erfolgreichen Modelle zeigen jedoch, dass es Verbesserungspotenzial gibt, insbesondere bei der Erzeugung gültiger und zuverlässiger Abfragen.

Der ganze Prozess ist wie Kochen; du brauchst die richtigen Zutaten und ein gutes Rezept, um ein leckeres Gericht zuzubereiten. Die Feinabstimmung der Modelle ist im Grunde genommen, die richtigen Gewürze hinzuzufügen, um sicherzustellen, dass sie jedes Mal perfekte Abfragen liefern. Und genau wie es Übung braucht, um ein Rezept zu meistern, erfordert die Verbesserung dieser Modelle noch mehr Arbeit und Anpassungen, um ihr volles Potenzial bei der Generierung genauer Protokollabfragen zu erreichen.

Originalquelle

Titel: Chatting with Logs: An exploratory study on Finetuning LLMs for LogQL

Zusammenfassung: Logging is a critical function in modern distributed applications, but the lack of standardization in log query languages and formats creates significant challenges. Developers currently must write ad hoc queries in platform-specific languages, requiring expertise in both the query language and application-specific log details -- an impractical expectation given the variety of platforms and volume of logs and applications. While generating these queries with large language models (LLMs) seems intuitive, we show that current LLMs struggle with log-specific query generation due to the lack of exposure to domain-specific knowledge. We propose a novel natural language (NL) interface to address these inconsistencies and aide log query generation, enabling developers to create queries in a target log query language by providing NL inputs. We further introduce ~\textbf{NL2QL}, a manually annotated, real-world dataset of natural language questions paired with corresponding LogQL queries spread across three log formats, to promote the training and evaluation of NL-to-loq query systems. Using NL2QL, we subsequently fine-tune and evaluate several state of the art LLMs, and demonstrate their improved capability to generate accurate LogQL queries. We perform further ablation studies to demonstrate the effect of additional training data, and the transferability across different log formats. In our experiments, we find up to 75\% improvement of finetuned models to generate LogQL queries compared to non finetuned models.

Autoren: Vishwanath Seshagiri, Siddharth Balyan, Vaastav Anand, Kaustubh Dhole, Ishan Sharma, Avani Wildani, José Cambronero, Andreas Züfle

Letzte Aktualisierung: 2024-12-04 00:00:00

Sprache: English

Quell-URL: https://arxiv.org/abs/2412.03612

Quell-PDF: https://arxiv.org/pdf/2412.03612

Lizenz: https://creativecommons.org/publicdomain/zero/1.0/

Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.

Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.

Ähnliche Artikel