Allgemeine Einführung
TreeGPT ist eine auf Next.js basierende Open-Source-Chat-Anwendung, die sich auf die Visualisierung von Konversationen mit Large Language Models (LLMs, wie z.B. GPT) durch Baumgraphenstrukturen (Directed acyclic graphs, DAGs) konzentriert und den traditionellen linearen Chat-Ansatz ersetzt, um Geschwindigkeit und Benutzerfreundlichkeit zu verbessern. Das Projekt wird gehostet auf https://github.com/jamesmoore24/treegpt
Die Anwendung kann lokal ausgeführt werden, indem der Quellcode geklont und ein OpenAI-API-Schlüssel konfiguriert wird (http://localhost:3000
) oder besuchen Sie treegpt.app
TreeGPT löst die Probleme der Verzweigung von Unterhaltungen, der umständlichen Suche und der undurchsichtigen Verwendung von Token in herkömmlichen Chat-Schnittstellen und eignet sich daher für Entwickler, Forscher oder Benutzer, die effizient interagieren müssen.
Funktionsliste
- Baum-Dialog-VisualisierungChats: Darstellung von Chats in einer interaktiven Baumansicht mit Unterstützung für verzweigte Navigation.
- Suche in natürlicher SpracheOptimierung der Ergebnisse mit Hilfe eingebetteter Metadaten durch die Beschreibung von Suchdialog-Transkripten.
- Token-Verwaltung in EchtzeitVerfolgung der Token-Nutzung, Kostenvoranschläge und Leistungskontrolle.
- Unterstützung mehrerer ModelleVerbindung zu LLM-Anbietern wie OpenAI, Anthropic usw. für eine intelligente Modellauswahl.
- Shortcut-OperationBietet Vim-ähnliche Schaltflächen, um schnell den Modus zu wechseln und Knoten zu bearbeiten.
Hilfe verwenden
TreeGPT ist eine Next.js-Anwendung, die lokal erstellt und ausgeführt werden muss. Nachfolgend finden Sie eine detaillierte Installations- und Nutzungsanleitung, die Ihnen dabei hilft, die Anwendung von Grund auf zu installieren und ihre Kernfunktionen zu beherrschen.
Ablauf der Installation
- Vorbereitung der Umwelt
- Installation von Node.js: Zugang
nodejs.org
Um v18 zu installieren, laden Sie v18 oder höher herunter und installieren Sie es. Nach der Installation geben Sie einKnoten -v
Bestätigen Sie die Version. - Installieren Sie npm oder yarnNode.js wird mit npm ausgeliefert, aber wenn Sie yarn bevorzugen, können Sie das
npm install -g yarn
Einbau.
- Installation von Node.js: Zugang
- Klon-Lager
- Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:
git clone https://github.com/jamesmoore24/treegpt.git cd treegpt
- Dadurch wird der TreeGPT-Quellcode heruntergeladen und in das Projektverzeichnis verschoben.
- Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:
- Installation von Abhängigkeiten
- Geben Sie ihn in das Terminal ein:
npm-Installation
oder Garn verwenden:
Garn installieren
- Warten Sie, bis die Installation der Abhängigkeiten abgeschlossen ist (kann je nach Netzwerk einige Minuten dauern).
- Geben Sie ihn in das Terminal ein:
- OpenAI-API-Schlüssel konfigurieren
- Erstellen Sie im Stammverzeichnis des Projekts die Datei
.env
Datei, geben Sie Folgendes ein:OPENAI_API_KEY=Ihr_api_key
- Holen Sie sich den SchlüsselBesuchen Sie die OpenAI-Website (
plattform.openai.de
), erzeugen Sie einen neuen Schlüssel auf der Seite API-Schlüssel, kopieren und ersetzen Sie dieIhr_api_schlüssel
. - Speichern Sie die Datei, um sicherzustellen, dass der Schlüssel nicht kompromittiert wird.
- Erstellen Sie im Stammverzeichnis des Projekts die Datei
Ausführen der Anwendung
- Starten des Entwicklungsservers
- Läuft im Terminal:
npm run dev
Oder:
Garnentwicklung
- Nach dem Start zeigt das Terminal etwas an wie
http://localhost:3000
Die Adresse der
- Läuft im Terminal:
- Zugang zu Anwendungen
- Öffnen Sie Ihren Browser und geben Sie
http://localhost:3000
(oder die auf dem Terminal angezeigte Adresse). - Sobald die Seite geladen ist, siehst du den TreeGPT Chat-Bildschirm.
- Öffnen Sie Ihren Browser und geben Sie
Kernfunktion Betrieb
- Baum-Dialog-Visualisierung
- Beginnen Sie zu chatten.Geben Sie eine Frage in das Eingabefeld ein (z. B. "Wie kann der Code optimiert werden?"), geben Sie ein und die Antwort wird als Knoten im Baum angezeigt.
- Erstellen einer VerzweigungKlicken Sie auf einen beliebigen Knoten und geben Sie eine neue Frage ein (z. B. "Bestimmtes Werkzeug"), um einen untergeordneten Knoten zu erstellen.
- NavigationsbaumKlicken Sie mit der Maus auf einen Knoten, oder drücken Sie die Schnelltaste
[j]
Aufsteigen.[1-9]
Wählen Sie den Zweig aus.[r]
Gibt den Wurzelknoten zurück. - Übersicht anzeigenDie Schnittstelle bietet eine Minikarte, die die gesamte Struktur des Dialogbaums zeigt, mit Mauszeiger-Knoten zur Vorschau des Inhalts.
- Suche in natürlicher Sprache
- Presse
[/]
Gehen Sie in den Suchmodus und geben Sie eine Beschreibung ein (z. B. "Algorithmus gestern diskutiert"). - Das System gibt auf der Grundlage der eingebetteten Metadaten passende Dialogknoten zurück.
- Presse
- Token-Verwaltung in Echtzeit
- Die Schnittstelle zeigt die Token-Nutzung und die geschätzten Kosten für das aktuelle Gespräch an.
- Die Ausgabelänge oder die Größe des Kontextfensters kann über die Einstellungen angepasst werden.
- Unterstützung mehrerer Modelle
- OpenAI wird standardmäßig verwendet. Wenn Sie das Modell wechseln möchten (z. B. Anthropic), müssen Sie andere API-Schlüssel im Code konfigurieren (siehe Projektdokumentation).
- Das System wählt auf intelligente Weise das optimale Modell auf der Grundlage integrierter Regeln aus.
- Shortcut-Operation
[``]
Umschalten zwischen Chat und Ansichtsmodus.[e]
Bearbeiten Sie den Inhalt des aktuellen Knotens.[dd]
Löschen: Löscht den aktuellen Knoten und seine Unterbäume.- Diese Befehle imitieren die Vim-Operationen und verbessern die Effizienz.
Probebetrieb
Nehmen wir an, Sie möchten über "Wege zum Erlernen von Python" diskutieren:
- Geben Sie "Wie lerne ich Python" ein und erhalten Sie eine Antwort.
- Klicken Sie auf den Knoten Antwort und geben Sie "Was sind die freien Ressourcen" ein, um einen Zweig zu erzeugen.
- Presse
[j]
Gehen Sie nach oben, um den übergeordneten Knoten zu sehen, und geben Sie "how long does it take to master" ein, um einen neuen Zweig zu bilden. - Der Dialogbaum wird angezeigt:
Wie man Python lernt ├── Was sind die kostenlosen Ressourcen └── Wie lange dauert es, Python zu beherrschen?
- Presse
[/]
Suchen Sie nach "freien Ressourcen", um schnell relevante Knotenpunkte zu finden.
caveat
- NetzanforderungEine Internetverbindung ist zur Laufzeit erforderlich, um auf die LLM-API zuzugreifen.
- Schlüsselsicherheit::
.env
Die Dateien sollten nicht in das öffentliche Repository hochgeladen werden. - LeistungsoptimierungWenn der Dialogbaum zu groß ist, empfiehlt es sich, überflüssige Knoten in regelmäßigen Abständen zu löschen (
[dd]
).
Mit den oben genannten Schritten können Benutzer TreeGPT einfach erstellen und seine leistungsstarken Baumdialoge lokal erleben.