Einführung
Dieser Workflow in n8n ermöglicht die Analyse und das Testen mehrerer lokaler Sprachmodelle (LLMs) mithilfe von LM Studio. Jeder Schritt im Workflow ist speziell darauf ausgelegt, die Effizienz und Genauigkeit der Modelle zu maximieren. Im Folgenden werden die einzelnen Knoten und ihre Funktionen beschrieben:
1. Sticky Note
Name: Sticky Note
Typ: n8n-nodes-base.stickyNote
Funktion: Dieser Knoten dient als Informationsanmerkung, die den Benutzern eine Übersicht über die Lesbarkeitsbewertungen von Modellantworten gibt. Es beschreibt, wie die Lesbarkeit in verschiedene Kategorien eingeteilt wird.
Einstellungen: Das Notizfeld enthält eine Liste von Lesbarkeitswerten mit den entsprechenden Beschreibungen und liegt visuell in der Position (1600, 420).
2. Get Models
Name: Get Models
Typ: n8n-nodes-base.httpRequest
Funktion: Dieser Knoten sendet eine HTTP-Anfrage an den LM Studio Server, um alle aktuellen Modelle abzurufen, die dort geladen sind.
Einstellungen: Die URL wurde auf http://192.168.1.179:1234/v1/models eingestellt, mit einem Timeout von 10 Sekunden. Die Verbindung zu nicht sicheren Zertifikaten wurde deaktiviert.
3. Sticky Note1
Name: Sticky Note1
Typ: n8n-nodes-base.stickyNote
Funktion: Diese Notiz enthält Anweisungen, um die URL des LM Servers zu aktualisieren.
Einstellungen: Die Notiz fordert den Benutzer auf, die Base URL zu ändern, um die IP-Adresse des LM Studio Servers zu verwenden und erklärt den Zweck des Knotens.
4. When chat message received
Name: When chat message received
Typ: @n8n/n8n-nodes-langchain.chatTrigger
Funktion: Dieser Auslöser erfasst eingehende Chat-Nachrichten und initiiert den Workflow, wenn eine Nachricht empfangen wird.
Einstellungen: Es gibt keine besonderen Parameter, die hier konfiguriert werden müssen.
5. Sticky Note2
Name: Sticky Note2
Typ: n8n-nodes-base.stickyNote
Funktion: Bietet eine Anleitung zur Einrichtung von LM Studio und dem Laden der Modelle.
Einstellungen: Diese Notiz gibt an, dass das LM Studio heruntergeladen und installiert werden muss, sowie Hinweise zur Verwendung mehrerer Modelle.
6. Sticky Note3
Name: Sticky Note3
Typ: n8n-nodes-base.stickyNote
Funktion: Informiert darüber, wie die LLM-Einstellungen angepasst werden können, um das Verhalten der Modelle zu optimieren.
Einstellungen: Die Notiz beschreibt Parameter wie Temperatur und Top P für die Modellanpassung.
7. Get timeDifference
Name: Get timeDifference
Typ: n8n-nodes-base.dateTime
Funktion: Berechnet den Zeitunterschied zwischen dem Start- und Endzeitpunkt der Chat-Anfrage.
Einstellungen: Der Knoten verwendet Parameter für die Start- und Enddaten, um die Zeitdifferenz zu erhalten.
8. Sticky Note4
Name: Sticky Note4
Typ: n8n-nodes-base.stickyNote
Funktion: Bietet eine optionale Anweisung zur Erstellung eines Google Sheets zur Protokollierung der Testergebnisse.
Einstellungen: Enthält eine Schritt-für-Schritt-Anleitung zum Erstellen der erforderlichen Spalten in Google Sheets.
9. Sticky Note5
Name: Sticky Note5
Typ: n8n-nodes-base.stickyNote
Funktion: Eine weitere Notiz, die die Schritte zur Einrichtung von LM Studio zusammenfasst.
Einstellungen: Gibt verbindliche Schritte für die Benutzer, um den Workflow korrekt einzurichten.
10. Sticky Note6
Name: Sticky Note6
Typ: n8n-nodes-base.stickyNote
Funktion: Erläutert, wie man mehrere LLMs gezielt ansprechen kann, um spezifische Ergebnisse zu testen.
Einstellungen: Empfiehlt, einen System-Prompt hinzuzufügen, um die Genauigkeit der Antworten zu steuern.
11. Run Model with Dunamic Inputs
Name: Run Model with Dunamic Inputs
Typ: @n8n/n8n-nodes-langchain.lmChatOpenAi
Funktion: Dieser Knoten führt die LLM-Modelle mit dynamischen Eingaben aus.
Einstellungen: Es wird die Modell-ID aus dem vorherigen Knoten verwendet sowie spezifische Optionen zur Erleichterung der Modelleingaben.
12. Analyze LLM Response Metrics
Name: Analyze LLM Response Metrics
Typ: n8n-nodes-base.code
Funktion: Dieser Knoten analysiert die Modellantworten anhand von Metriken wie Wortanzahl, Lesbarkeitsbewertung usw.
Einstellungen: Enthält JavaScript-Code zur Durchführung der erforderlichen Berechnungen und Analysen.
13. Save Results to Google Sheets
Name: Save Results to Google Sheets
Typ: n8n-nodes-base.googleSheets
Funktion: Speichert die Ergebnisse der Modellanalysen in einem Google Sheet.
Einstellungen: Der Knoten ist konfiguriert, um verschiedene Metriken in die Spalten der Google-Tabelle einzugeben.
14. Capture End Time
Name: Capture End Time
Typ: n8n-nodes-base.dateTime
Funktion: Erfasst den Endzeitpunkt der Chat-Aktion.
Einstellungen: Es gibt keine besonderen Parameter, die hier konfiguriert werden müssen.
15. Capture Start Time
Name: Capture Start Time
Typ: n8n-nodes-base.dateTime
Funktion: Erfasst den Startzeitpunkt der Chat-Aktion.
Einstellungen: Es gibt keine besonderen Parameter, die hier konfiguriert werden müssen.
16. Prepare Data for Analysis
Name: Prepare Data for Analysis
Typ: n8n-nodes-base.set
Funktion: Bereitet die Daten für die Analyse vor, indem die erforderlichen Werte für die Analyse gesammelt und strukturiert werden.
Einstellungen: Parameter werden verwendet, um die nicht benötigten Eingabefelder auszuwählen.
17. Extract Model IDsto Run Separately
Name: Extract Model IDsto Run Separately
Typ: n8n-nodes-base.splitOut
Funktion: Teilt die Liste der Modelle für die Verarbeitung in separaten Instanzen.
Einstellungen: Das Feld, das aufgeteilt werden soll, ist „data“.
18. Sticky Note7
Name: Sticky Note7
Typ: n8n-nodes-base.stickyNote
Funktion: Diese Notiz bietet einen optionalen Hinweis, dass der Google Sheets Knoten entfernt werden kann, um die Ergebnisse manuell zu überprüfen.
Einstellungen: Keine besonderen Parameter.
19. Add System Prompt
Name: Add System Prompt
Typ: n8n-nodes-base.set
Funktion: Fügt einen System-Prompt hinzu, der die Modelle steuert.
Einstellungen: Der System-Prompt ist konfiguriert als: „Ensure that messages are concise and to the point readable by a 5th grader.“
20. LLM Response Analysis
Name: LLM Response Analysis
Typ: @n8n/n8n-nodes-langchain.chainLlm
Funktion: Analysiert die Antwort des LLMs, basierend auf dem empfangenen Chat-Eingang und dem hinzugefügten System-Prompt.
Einstellungen: Nutzt die Daten des eingehenden Chats.
Ergebnis
Nach der Ausführung dieses Workflows werden die Ergebnisse in Google Sheets gespeichert, wodurch eine umfassende Analyse der Sprachmodelle möglich ist. Die Benutzer können leicht sehen, wie die Modelle auf verschiedene Eingaben reagieren und deren Effektivität anhand der bereitgestellten Metriken bewerten.
Hier ist der Download-Link für den Workflow.