MatplotLLM ist eine natürliche Sprachebene über Matplotlib zur Visualisierung von Daten. Der Hauptzweck besteht darin, den Aufbau einer bestimmten Art der Visualisierung von Datenpunkten zu beschleunigen, ohne sich in die Funktionsweise eines Tools wie Matplotlib einzumischen. Ab sofort ist dies ein System, das innerhalb des Emacs/Org-Systems verwendet werden kann. Die Motivation kommt von etwas, das ich hier in einem Blog über KI-Co-Programmierung geschrieben habe.
Vielleicht möchten Sie auch meinen Blog-Beitrag zu MatplotLLM lesen.
Sie müssen zwei Beschreibungen bereitstellen, beide in natürlicher Sprache. Eine, die die Datenquelle beschreibt. Zweitens wird beschrieben, wie man plottet. Die erste ist eine statische Textbeschreibung, die Sie natürlich zwischen den Aufrufen je nach Bedarf ändern können.
Zweitens können Sie eine iterative Beschreibung wie in einer Konversationsoberfläche bereitstellen. Sie könnten mit einer ersten Beschreibung beginnen und dann weitere Spezifikationen als Feedback hinzufügen.
Sie können diese in einem org-babel-Quellblock mit dem Sprachnamen matplotllm
verwenden, wie im folgenden Beispiel gezeigt. Es gibt einen Organisationsmodus-Teiler -----
der zur Trennung von Datenbeschreibung und Plotbeschreibung verwendet wird. Im aktuellen Design mag diese Unterscheidung nutzlos erscheinen, aber sie könnte später hilfreich sein. In der Handlungsbeschreibung fügen Sie leere Zeilen hinzu, um iteratives Feedback zu geben. Bei jeder Neuzeichnung wird dem LLM der aktuelle Code angezeigt, Feedback gegeben und nach neuem Code gefragt.
Um dies zu verwenden, müssen Sie zunächst den Wert von matplotllm-openai-key
festlegen. Wir nennen derzeit GPT4
als unterstützendes LLM.
Das folgende Beispiel versucht, die Handlung in meinem Blogbeitrag zum Thema „Learning Colemak-DH“ zu reproduzieren – ich bin dem noch nicht ganz gerecht geworden.
Die zu lesende Datendatei heißt „log.txt“. So sieht es aus:
+ [20.07.2023 Do] 97 WPM, Acc 98 %
Die tägliche Verfolgung wurde gestoppt
+ [16.05.2023 Di] 66 WPM, Acc 91 % | 66 WPM, Akkulaufzeit 87 %
+ [15.05.2023 Mo] 68 WPM, Acc 89 % | 65 WPM, Akku 90 % | 71 WPM, 93 % | Colemak-DH als Standard.
+ [So. 14.05.2023] 65 WPM, Akku 92 % | 62 WPM, 87 % | 65 WPM, Akku 91 % | 70 WPM, Akku 90 %
Jede Zeile gilt für einen Tag und enthält WPM- und Genauigkeitseinträge aus mehreren Versuchen an einem Tag. Einige Zeilen enthalten möglicherweise schlecht strukturierten Text, den Sie ignorieren können.
-----
Zeichnen Sie ein minimales Streudiagramm, das den WPM im Verhältnis zu den Daten darstellt. Verwenden Sie Genauigkeitswerte als Farbe des Streudiagramms. Eine dunklere Farbe (blau-lila) ist genauer.
Räumen Sie die Achse auf und zeigen Sie nur schwache Gitterlinien an, und zeigen Sie Datumsangaben an, in denen durch Häkchen Monate geschrieben sind, ohne sie zu sehr zu überfüllen.
Kommentieren Sie den ersten und letzten Punkt mit dem tatsächlichen WPM-Wert.
Einige Entwicklungshinweise:
LLM Unterstütztes Datenvisualisierungssystem
Copyright (c) 2023 Abhinav Tushar und Mitwirkende
Dieses Programm ist freie Software: Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) einer späteren Version weiterverbreiten und/oder ändern.
Dieses Programm wird in der Hoffnung verbreitet, dass es nützlich ist, jedoch OHNE JEGLICHE GARANTIE; ohne die stillschweigende Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Einzelheiten finden Sie in der GNU General Public License.
Sie sollten zusammen mit diesem Programm eine Kopie der GNU General Public License erhalten haben. Wenn nicht, siehe https://www.gnu.org/licenses/.