DbRheo-CLI ist ein Kommandozeilen-Agententool für Datenbankoperationen und Datenanalysen. Es ermöglicht Benutzern, Befehle in natürlicher Sprache zu geben, die das Tool in sichere SQL-Abfragen umwandelt und ausführt. Das Tool untersucht und analysiert außerdem automatisch die Struktur der Datenbank und verfügt über ein eingebautes Risikobewertungssystem, das gefährliche Operationen im Voraus erkennt und vor ihnen warnt. Zusätzlich zur direkten Datenbankmanipulation verfügt DbRheo-CLI über eine integrierte Python-Umgebung, die das Schreiben und Ausführen von Python-Code direkt von der Befehlszeile aus für die Datenanalyse, die Datenvisualisierung und das automatisierte Scripting unterstützt. Die Ergebnisse von Abfragen und Analysen können leicht in verschiedene Formate wie CSV, JSON und Excel exportiert werden. Es unterstützt derzeit viele gängige Datenbanken wie PostgreSQL, MySQL und SQLite.
Funktionsliste
- Abfrage in natürlicher SpracheBedienung von Datenbanken direkt in der Sprache des Alltags.
- Intelligente SQL-GenerierungDie Befehle des Benutzers in natürlicher Sprache werden automatisch in optimierte und sichere SQL-Abfrageanweisungen umgewandelt.
- Erforschung der DatenbankarchitekturSie können Informationen über die Tabellenstruktur einer Datenbank dynamisch analysieren und anzeigen.
- Systeme zur Risikobewertung:: Das System führt Vorabtests durch und warnt die Benutzer, bevor sie riskante Datenbankoperationen (z. B. das Löschen von Daten) durchführen.
- Ausführen von Python-CodeUnterstützung für die Ausführung von Python-Code innerhalb des Tools für die Analyse von Daten, die Erstellung von Diagrammen oder die Durchführung automatisierter Aufgaben.
- DatenexportUnterstützung der Speicherung von Abfrageergebnissen als CSV-, JSON- und Excel-Dateien.
- Multi-Datenbank-UnterstützungKompatibel mit PostgreSQL, MySQL, SQLite und vielen anderen Datenbanken.
- asynchrone VerarbeitungAsynchrone Ausführung von Aufgaben zur Verbesserung der Laufzeitleistung.
- Streaming-AusgangEchtzeitanzeige des Prozesses und der Ergebnisse der Befehlsausführung.
Hilfe verwenden
Im Folgenden wird detailliert beschrieben, wie Sie DbRheo-CLI, ein Kommandozeilen-Tool, installieren und verwenden.
Anforderungen an die Umwelt
Vergewissern Sie sich vor Beginn der Installation, dass Ihr Computer die folgenden Bedingungen erfüllt:
- PythonVersion 3.9 oder höher ist erforderlich.
- API-SchlüsselSie benötigen einen Google- oder OpenAI-API-Schlüssel, um die Funktionen zur Verarbeitung natürlicher Sprache zu nutzen.
Installationsschritte
- Code-Repository klonen
Öffnen Sie zunächst das Terminal Ihres Computers (Befehlszeilenschnittstelle) und verwenden Sie den Befehlgit
Befehl klont den Code des Projekts lokal von GitHub.git clone https://github.com/Din829/DbRheo-CLI.git
Wechseln Sie dann in das Projektverzeichnis.
cd DbRheo-CLI
- Installation von abhängigen Bibliotheken
Es gibt eine Reihe von Python-Bibliotheken von Drittanbietern, die für die Ausführung des Projekts erforderlich sind und die in der Dateirequirements.txt
Datei. Verwenden Sie diepip
um sie zu installieren.pip install -r requirements.txt
- Umgebungsvariablen konfigurieren
Das Projekt enthält eine Datei namens.env.example
der Beispiel-Umgebungsvariablendatei. Sie müssen diese Datei kopieren und umbenennen.env
und geben Sie dann Ihre eigenen Konfigurationsdaten ein.cp .env.example .env
Als nächstes öffnen Sie mit einem Texteditor die Datei
.env
finden Sie Folgendes und setzen es:GOOGLE_API_KEY
vielleichtOPENAI_API_KEY
Füllen Sie mindestens eines dieser beiden Felder mit Ihrem API-Schlüssel aus.- Informationen zur DatenbankverbindungAbhängig von der Art der Datenbank, mit der Sie sich verbinden wollen (z.B. PostgreSQL, MySQL oder SQLite), geben Sie den Host, den Port, den Benutzernamen, das Passwort und den Datenbanknamen ein.
- Starten des Kommandozeilentools
Nachdem alle Konfigurationen abgeschlossen sind, gehen Sie auf die Seitepackages/cli
Verzeichnis, führen Siecli.py
Skript, um das Programm zu starten.cd packages/cli python cli.py
Nach einem erfolgreichen Start sehen Sie
DbRheo>
und zeigt damit an, dass Sie nun mit der Eingabe von Befehlen beginnen können.
Wie zu verwenden
Die primäre Arbeitsweise des DbRheo-CLI ist die Eingabe von Anweisungen in natürlicher Sprache oder von spezifischen Befehlen in der interaktiven Befehlszeile.
- Hilfe anzeigen:
Wenn Sie nicht sicher sind, welche Befehle verfügbar sind, können Sie Folgendes eingeben/help
um Informationen zur Hilfe zu erhalten. - Auswahl eines Sprachmodells:
Wenn Sie mehrere API-Schlüssel gleichzeitig konfiguriert haben, können Sie die/model
um das große Sprachmodell auszuwählen, das für den aktuellen Dialog verwendet werden soll.
Grundlegende Verwendungsbeispiele
- Struktur der Nachschlagetabelle
Sie können mit natürlicher Sprache nach der Struktur einer Tabelle in einer Datenbank fragen.DbRheo> 告诉我users表的结构是什么 ``` 工具会返回该表的字段、数据类型等详细信息。
- Daten abfragen
Sie können natürliche Sprache verwenden, um das Tool die Daten abfragen zu lassen, zum Beispiel nach den letzten 10 Benutzern.DbRheo> 帮我查询最新的10个用户
Das Tool generiert automatisch die entsprechende SQL-Anweisung
SELECT * FROM users ORDER BY created_at DESC LIMIT 10;
auszuführen und dann die Ergebnisse anzuzeigen.
Beispiel einer Datenanalyse
Sie können Python direkt von der Befehlszeile aus aufrufen, um Daten zu analysieren und zu visualisieren.
Angenommen, Sie möchten die Verkaufsdaten analysieren und ein Diagramm erstellen, dann können Sie die Daten wie folgt eingeben:
DbRheo> 使用Python分析并可视化销售数据
generiert und führt ein Stück Python-Code aus, das diepandas
Die Bibliothek liest die Verkaufsdaten aus der Datenbank und verwendet dann diematplotlib
Die Bibliothek erstellt ein Balkendiagramm mit den monatlichen Umsatztrends und speichert das Diagramm als Bilddateisales_analysis.png
.
Erweiterte SQL-Abfragen
Bei komplexen Abfrageanforderungen können Sie diese auch direkt in natürlicher Sprache beschreiben.
Sie müssen zum Beispiel die Gesamtzahl der Aufträge auf monatlicher Basis zählen:
DbRheo> 创建一个销售数据的月度汇总
Das Tool generiert eine SQL-Anweisung ähnlich der folgenden, um die Aggregatabfrage zu vervollständigen.
SELECT
DATE_TRUNC('month', order_date) as month,
SUM(amount) as total_sales
FROM orders
GROUP BY month
ORDER BY month;
Anwendungsszenario
- Schnelle Datenabfrage
Teammitglieder, die nicht mit SQL vertraut sind (z. B. Produktmanager, Betriebsmitarbeiter), können mit natürlicher Sprache die benötigten Daten direkt aus der Datenbank abrufen, z. B. "Abfrage der Anzahl der Benutzer, die sich in der letzten Woche registriert haben", ohne auf die Unterstützung von Entwicklern warten zu müssen. - Datenanalyse und Berichterstattung
Datenanalysten können Daten aus Datenbanken in Echtzeit analysieren, Statistiken und visuelle Diagramme erstellen und die Ergebnisse für die Erstellung von Berichten in Excel- oder CSV-Dateien exportieren, indem sie Befehle in natürlicher Sprache mit Python-Skripten direkt aus dem Befehlszeilentool kombinieren. - Erforschung der Datenbankarchitektur
Entwickler, die sich einer neuen Datenbank nähern, können den Aufbau und die Beziehungen zwischen den Tabellen durch Befehle in natürlicher Sprache, wie z. B. "Nennen Sie mir die Struktur einer Tabelle" oder "Listen Sie alle Tabellen auf", schnell verstehen, ohne dass schwergewichtige Datenbankverwaltungstools erforderlich sind. - Sicherer Datenbankbetrieb
Wenn Datenbankadministratoren einige risikoreiche Operationen durchführen (z. B. Aktualisieren oder Löschen von Daten), können sie die Risikobewertungsfunktion des Tools nutzen, um die möglichen Auswirkungen der Operation im Voraus zu verstehen und Datenverluste aufgrund von Missbrauch zu verhindern.
QA
- Welche Arten von Datenbanken werden von diesem Tool unterstützt?
Derzeit unterstützt es hauptsächlich PostgreSQL, MySQL/MariaDB und SQLite Datenbanken. Gleichzeitig verwendet es eine Plug-in-Architektur, die durch das Schreiben neuer Adapter zur Unterstützung anderer Datenbanktypen erweitert werden kann. - Muss ich für die Nutzung dieses Tools bezahlen?
Das Tool selbst ist quelloffen und kann kostenlos genutzt werden. Allerdings muss es große Sprachmodellierungs-APIs aufrufen, die von Unternehmen wie Google oder OpenAI zur Verfügung gestellt werden, und diese API-Anbieter berechnen Ihnen je nach Nutzung eine Gebühr. - Sind meine Datenbankverbindungsdaten und API-Schlüssel sicher?
Ihre Datenbankverbindungsinformationen und Ihr API-Schlüssel werden lokal in der Datei.env
Datei wird sie nicht auf einen Server hochgeladen und ist daher sicher. Sie müssen dafür sorgen, dass Ihre lokale Umgebung sicher ist. - Was ist, wenn die vom Tool generierte SQL-Anweisung nicht meinen Erwartungen entspricht?
Das Tool zeigt die generierte Anweisung an, bevor die SQL-Anweisung ausgeführt wird. Sie können überprüfen, ob die Anweisung korrekt ist. Wenn das Ergebnis nicht den Erwartungen entspricht, können Sie eine andere, klarere und spezifischere Anweisung in natürlicher Sprache versuchen, um das Tool zur Generierung der richtigen SQL-Anweisung anzuleiten.