


In der sich schnell entwickelnden Landschaft der Softwareentwicklung hat die Schnittstelle künstlicher Intelligenz, Datenvalidierung und Datenbankmanagement beispiellose Möglichkeiten eröffnet. In diesem Blog-Beitrag wird in einem innovativen Ansatz zur Erläuterung von SQL-Code-Generation und SQL-Code unter Verwendung des neuesten Pydanticai-Frameworks und des Gemini-1.5-Modells von Google untersucht.
Für Entwickler, Datenwissenschaftler und Datenanalysten bietet diese Exploration einen Einblick in die Zukunft der intelligenten Codegenerierung aus der Verarbeitung natürlicher Sprache, bei der komplexe Datenbankabfragen mit Leichtigkeit und Genauigkeit erstellt werden können.
Lernziele
- Verstehen Sie die Grundlagen von Pydantic und Pydanticai.
- Erfahren Sie, wie Sie ein KI-angetanter SQL-Code-Generierungssystem implementieren.
- Erforschen Sie die Fähigkeiten von Gemini-1.5-Flash in der natürlichen Sprache für die SQL-Übersetzung.
- Gewinnen Sie Einblick in den Aufbau intelligenter KI -Agenten für Datenbankinteraktionen.
Dieser Artikel wurde als Teil des Data Science -Blogathons veröffentlicht.
Inhaltsverzeichnis
- Was ist Pydanticai?
- Beispiele für Pydanticai in Aktion
- Was ist ein AI -Agent?
- Was ist Agenten -Workflow?
- Moderne Verwendung von AI -Agenten und agenten -Workflows
- Was ist der pydantische Rahmen?
- Erste Schritte mit Ihrem Projekt
- Schritt-für-Schritt-Anleitung zur Implementierung Ihres Projekts
- Abschluss
- Häufig gestellte Fragen
Was ist Pydanticai?
Pydanticai ist eine leistungsstarke Python -Bibliothek, die die Datenvalidierung und Typprüfung revolutioniert. Es bietet einen deklarativen Ansatz zur Definition von Datenmodellen und erleichtert es, komplexe Datenstrukturen zu erstellen und zu validieren.
Wichtige Merkmale von Pydantic sind:
Anpassung
- Validiert eine Vielzahl von Datentypen, einschließlich primitiver Typen und komplexen verschachtelten Strukturen.
- Unterstützt fast jedes Python -Objekt für Validierung und Serialisierung
Flexibilität
Ermöglicht die Steuerung der Datenvalidierung Strenge:
- Kohlen Daten zum erwarteten Typ
- Durchsetzen
Serialisierung
- Unterstützen Sie nahtlose Konvertierung zwischen pydantischem Objekt, Wörterbuch und JSON.
- Ermöglicht die Selbstdokumentation von APIs und Kompatibilität mit Tools, die JSON-Schema verwenden.
Leistung
- Die Kernvalidierungslogik wird in Rost für außergewöhnliche Geschwindigkeit und Effizienz geschrieben.
- Ideal für Hochdurchsatzanwendungen wie skalierbare REST-APIs.
Ökosystem
- Weit verbreitete in beliebten Python -Bibliotheken wie Fastapi, Langchain, Llamaindex und vielem mehr.
- Moderne Agentic LLM kann nicht ohne pydantisch implementiert werden.
Beispiele für Pydanticai in Aktion
Pydanticai vereinfacht die Datenvalidierung und die Typ-Überprüfung in Python und macht es zu einem leistungsstarken Tool zum Erstellen robuster Datenmodelle. Lassen Sie uns einige praktische Beispiele untersuchen, die seine Fähigkeiten zeigen.
Grundlegende Datenvalidierung
vom pydantischen Import -Basemodel Klassenbenutzer (Basemodel): Name: str Alter: int # Gültige Daten user = user (name = "alice", Alter = 30) Druck (Benutzer) print ("===================================")) # Ungültige Daten (Alter ist eine Zeichenfolge) versuchen: user = user (name = "alice", ay "dreißig") außer Ausnahme als E: Druck (e)
Der obige Code definiert ein Benutzermodell unter Verwendung von Pydantics Basemodel und setzt den Namen als Zeichenfolge und Alter als Ganzzahl durch. Es validiert korrekte Daten, erhöht jedoch einen Validierungsfehler, wenn ungültige Daten (eine Zeichenfolge für das Alter) bereitgestellt werden.
Ausgabe:
Automatik -Zwang
vom pydantischen Import -Basemodel Klassenprodukt (Basemodel): Preis: Float Menge: int # Daten mit nicht übereinstimmenden Typen Produkt = Produkt (Preis = "19,99", Quantity = "5") Druck (Produkt) print (type (product.price)) print (type (product.quantity))
Hier das Produktmodell mit Preis als Schwimmer und Menge als Ganzzahl. Pydantic zweckt automatisch die String -Eingänge („19,99“ und „5“) in die richtigen Typen (Float und INT) und demonstrieren seine Art Conversion -Funktion.
Ausgabe:
Verschachteltes Modell
vom pydantischen Import -Basemodel Klassenadresse (Basemodel): Straße: str Stadt: str Klassenbenutzer (Basemodel): Name: str Adresse: Adresse # Gültige Daten user = user (name = "bob", adress = {"street": "123 main st", "Stadt": "Wunderland"}) Druck (Benutzer) # Zugriff verschachtelte Attribute print (user.address.city)
Hier definieren wir ein verschachteltes Benutzermodell , das ein Adressmodell enthält. Pydantic ermöglicht eine verschachtelte Validierung und automatische Wörterbücher in Modelle. Gültige Daten initialisiert ein Benutzerobjekt und Sie können direkt auf verschriebene Attribute wie ' user.address.city' zugreifen.
Ausgabe:
Validierung mit benutzerdefinierter Regel
vom pydantischen Import -Basemodel, Feld, Field_validator Klassenbenutzer (Basemodel): Name: str Alter: int = field (..., gt = 0, Beschreibung = "Alter muss größer als Null sein") @field_validator ("Name") Def name_must_be_non_empty (cls, Wert): wenn nicht value.strip (): ValueError erhöhen ("Name kann nicht leer sein") Rückgabewert # Gültige Daten user = user (name = "charlie", Alter = 25) Druck (Benutzer) # Ungültige Daten versuchen: user = user (name = "", Alter = -5) außer Ausnahme als E: Druck (e)
Hier definieren wir ein Benutzermodell mit einer Validierungsregel, das Alter muss größer als 0 sein, und der Name kann nicht leer sein (über die Methode name_must_be_non_empy validiert). Gültige Daten erstellen eine Benutzerinstanz , während ungültige Daten (leerer Name oder negatives Alter) detaillierte Validierungsfehler hervorrufen und die Validierungsfunktionen von Pydantic demonstrieren.
Ausgabe:
Dies sind einige der zentralen Beispiele für Pydantic. Ich hoffe, sie helfen Ihnen, das Grundprinzip der Datenvalidierung zu verstehen.
Was ist ein AI -Agent?
KI -Agenten sind intelligente Systeme, die autonom auf Aufgaben ausführen, Entscheidungen treffen und mit ihrer Umgebung interagieren, um spezifische Ziele zu erreichen. Diese Agenten sind nicht neu, aber die jüngste schnelle Entwicklung in der generativen KI, und die Kombination mit Agenten macht die Agentensoftwareentwicklung in der neuen Ära. Jetzt können Agenten Eingaben verarbeiten, Aktionen ausführen und sich dynamisch anpassen. Ihr Verhalten ahmt das menschliche Problemlösung nach und ermöglicht es ihnen, in verschiedenen Bereichen mit minimaler menschlicher Intervention zu funktionieren.
Was ist Agenten -Workflow?
Ein agierischer Workflow bezieht sich auf die Strukturen, zielgerichtete Abfolge von Aufgaben, die von einem oder mehreren KI-Agenten verwaltet und ausgeführt werden. Unline-starres traditioneller Workflow, Agenten-Workflow zeigt Anpassungsfähigkeit, Autonomie und Kontextbewusstsein. KI -Agenten in diesen Workflows können unabhängig voneinander Entscheidungen treffen, Unteraufgaben delegieren und aus Feedback lernen, was zu effizienten und optimierten Ergebnissen führt.
Moderne Verwendung von AI -Agenten und agenten -Workflows
Die Integration von AI-Agenten und Agenten-Workflows hat die Branche revolutioniert, indem komplexe Aufgaben automatisiert, die Entscheidungsfindung verbessert und die Effizienz vorgestellt werden. Diese intelligenten Systeme passen sich dynamisch an und ermöglichen in verschiedenen Bereichen intelligentere Lösungen.
Geschäftsautomatisierung
AI -Agenten automatisieren sich wiederholende Aufgaben wie den Kundensupport über Chatbots, E -Mail -Management und Verkaufspipeline -Optimierung. Sie verbessern die Produktivität, indem sie die Humanressourcen aus höherwertigen Aufgaben befreien.
Softwareentwicklung
AI-betriebene Wirkstoffe beschleunigen die Software-Lebenszyklen, indem sie Code generieren, testen und debuggen, wodurch die Entwicklungszeit und das menschliche Fehler verkürzt werden.
Gesundheitspflege
KI -Agenten unterstützen die medizinische Diagnose, die Überwachung der Patienten und die Personalisierung der Behandlung, die Verbesserung der Gesundheitsversorgung und die betriebliche Effizienz.
Finanzen
Agenten-Arbeitsabläufe in Finanzsystemen automatisieren Betrugserkennung, Risikobewertungen und Investitionsanalysen und ermöglichen eine schnellere und zuverlässigere Entscheidungsfindung.
E-Commerce
Intelligenzagenturen verbessern die Personalisierung in Einkaufserlebnissen, optimieren Produktempfehlungen und den Kundendienst.
Der Aufstieg von AI -Agenten und Agenten -Workflows bedeutet eine Verschiebung zu hoch autonomen Systemen, die komplexe Prozesse verwalten können. Ihre Anpassungsfähigkeit und Lernfähigkeiten machen sie für moderne Branchen, die Innovationen, Skalierbarkeit und Effizienz in allen Bereichen vorantreiben, unverzichtbar. Während sich die KI weiterentwickelt, werden sich KI -Agenten weiter in unsere täglichen Workflows integrieren und die Art und Weise verändern, wie Aufgaben verwaltet und ausgeführt werden.
Was ist der pydantische Rahmen?
Pydanticai ist ein Python-Agent-Framework, das vom Schöpfer von Pydantic entwickelt wurde, Fastapi, um die Konstruktion von Anwendungen für Produktionsqualität unter Verwendung generativer KI zu optimieren.
Die wichtigsten Merkmale Pydanticai umfassen:
- Model-Agnostic-Unterstützung: Pydanticai ist mit verschiedenen Modellen kompatibel, darunter OpenAI, Antropic, Gemini, GRAQ, Mistral und Ollama, mit einer einfachen Schnittstelle, um zusätzliche Modelle zu integrieren.
- Typ-Safety: Pydanticai nutzt Pythons Typsysteme und Pydantics Validierungen und sorgt für eine robuste und skalierbare Entwicklung der Agenten.
- Abhängigkeitsinjektionssystem: Es führt einen neuartigen Mechanismus für Ty-Safe-Abhängigkeitsinjektionsmechanismus ein, der die Tests und Bewertungsentwicklung verbessert.
- Strukturierte Antwortvalidierung: Die Verwendung von Pydantics Validierungsfunktionen sorgt für genaue und zuverlässige Strukturantworten.
- LogFire-Integration: bietet Integration mit pydantischem Logfire für eine verbesserte Debugging und Überwachung von LLM-Antriebsanwendungen.
Hier ist ein minimales Beispiel für Pydanticai:
OS importieren vom Pydantic_ai Importagenten von pydantic_ai.models.gemini Import Geminimodel aus dotenv import load_dotenv load_dotenv () gemini_api_key = os.getenv ("<google_api_key>") Modell = Geminimodel ( "Gemini-1.5-Flash", api_key = gemini_api_key, ) Agent = Agent ( Modell = Modell, System_prompt = "Sei präzise, antworte mit einem Satz.", ) result = Agent.run_sync ('Woher kommt "Hallo Welt"?') drucken (Ergebnis.Data)</google_api_key>
Ausgabe:
Jetzt ist es Zeit, echte Sachen zu machen. Wir werden eine Postgres -SQL -Abfragegenerierung mit dem Pydanticai Agent Framework erstellen.
Erste Schritte mit Ihrem Projekt
Legen Sie die Grundlage für Ihr Projekt mit einer Schritt-für-Schritt-Anleitung zum Einrichten der wichtigsten Tools und der Umgebung.
Umgebung festlegen
Wir werden eine Conda -Umgebung für das Projekt schaffen.
#create eine env $ conda create -name sql_gen python = 3.12 # Aktivieren Sie die Env $ conda aktivieren sql_gen
Erstellen Sie nun einen Projektordner
# Erstellen Sie einen Ordner $ mkdir SQL_CODE_GEN # In den Ordner wechseln $ CD SQL_CODE_GEN
Installieren Sie Postgres und laden Sie die Datenbank
Um die Postgres, PSQL-Command-Tools und PGADMIN-4 zu installieren, laden Sie Ihr Installationsprogramm für Ihre Systeme für Ihre Systeme und installieren Sie alle Tools auf einmal.
Laden Sie nun die DVDRental -Datenbank von Hereand herunter, um sie in Postgres zu laden. Befolgen Sie diese Schritte
STEP1: Öffnen Sie Ihr Terminal
psql -u postgres # Es wird nach einem Passwort gefragt
Schritt 2: Erstellen Sie eine Datenbank
# In der postgres =## Datenbank erstellen DVDrental;
Schritt 3: Befehl für Terminal
Beenden Sie nun den Befehl PSQL und geben Sie dann das Terminal ein
pg_restore -U postgres -d dvdrental d: /sampledb/postgres/dvdrental.tar
Schritt 4: Verbinde mit PSQL
Stellen Sie nun eine Verbindung zum PSQL her und überprüfen Sie, ob Ihre Datenbank geladen ist oder nicht.
psql -u postgres # Verbinden Sie sich mit DVDrental \ c dvdrental # Lassen Sie uns die Tische sehen \ dt
Ausgabe:
Wenn Sie die oben genannten Tabellen sehen, sind Sie in Ordnung. Wir sind bereit, unser Hauptprojekt zu starten.
Installieren Sie nun die erforderlichen Python -Bibliotheken in der SQL_Gen Conda Env.
conda aktivieren sql_gen # Bibliotheken installieren PIP Installation Pydantic Asyncpg Asyncio Pydantic-Ai PIP Installieren Sie Python-dotenv fastapi Google-Generativeai PIP Installieren Sie Devtools Annotated-Typ-Typ-Ausdehnungen
Projektstruktur
Unser Projekt enthält 4 Dateien, nämlich Haupt-, Modelle, Service und Schema.
sql_query_gen/ | |--main.py |-models.py |--schema.py |-service.py |-.v | --__ init__.py |-. Gitignore
Schritt-für-Schritt-Anleitung zur Implementierung Ihres Projekts
Tauchen Sie in die detaillierten Schritte und praktischen Techniken ein, um Ihr Projekt mit diesem umfassenden Implementierungshandbuch vom Konzept zur Realität zu bringen.
Pydantische Modelle
Wir werden zunächst Datenmodelle in der Datei models.py erstellen
aus DataClasses importieren Sie DataClass Aus dem Annotierten der Einfuhr des Imports asyncpg importieren aus Annotatatated_types import minlen aus pydantischem Import -Basemodel, Feld @dataclass Klassen -DEPs: Conn: Asyncpg.Connection Klassenerfolg (Basemodel): SQL_Query: Annotated [STR, Minlen (1)] Erläuterung: STR = Field ("", Beschreibung = "Erläuterung der SQL -Abfrage als Markdown") Klasse InvalyRequest (Basemodel): ERROR_MESSAGE: STR
Im obigen Code,
- Die DEPS -Klasse verwaltet Datenbankverbindungsabhängigkeiten. @Dataclass generiert automatisch spezielle Methoden wie __init__ und __Repr__. Conn wird als "asyncpg.Connection" tippt und stellt eine aktive PostgreSQL -Verbindung dar. Dieses Design folgt Abhängigkeitsinjektionsmustern, wodurch der Code nachweisbarer und wartbarer wird.
- Die Erfolgsklasse stellt eine erfolgreiche SQL-Query-Generation dar . Die Erklärung ist ein optionales Feld mit einer Standard -Leerzeichenfolge.
- Die InvalidRequest-Klasse ist das Fehlerantwortmodell, das fehlgeschlagene SQL-Query-Generierungsversuche darstellt.
Dieser Code legte die Grundlage für die Datenbankverbindungsverwaltung, die Eingabevalidierung, die strukturierte Reaktionsbearbeitung und die Fehlerbehandlung fest.
Servicemodul
Jetzt werden wir die Pydanticai -Dienste für die SQL -Generation im Servicemodul implementieren.
Bibliothek und Konfiguration importieren
OS importieren Aus der Typisierung von Import Gewerkschaft aus dotenv import load_dotenv asyncpg importieren Aus typing_extensions importieren typealias von Pydantic_ai Importagenten, ModellRetry, Runcontext von pydantic_ai.models.gemini Import Geminimodel Aus dem Schema importieren DB_SCHEMA aus Modellen importieren DEPs, Erfolg, InvalidRequest
Um zu konfigurieren, erstellen Sie eine .env -Datei im Projektroot und geben Sie dort Ihren Gemini -API -Schlüssel ein
# .env Gemini_api_key = "asgfhkdhjy457gthjhajbsd"
Dann in der Datei service.py:
load_dotenv () gemini_api_key = os.getenv ("google_api_key")
Es wird die Google -API -Taste aus dem `geladen. Env `Datei.
Modell und Agent erstellen
Antwort: typealias = Union [Erfolg, InvalyRequest] Modell = Geminimodel ( "Gemini-1.5-Flash", api_key = gemini_api_key, ) Agent = Agent ( Modell, result_type = Antwort, # Typ: Ignorieren DEPS_TYPE = DEPS, )
- Definieren Sie zuerst einen Antworttyp, der entweder Erfolg oder InvalyRequest sein kann
- Initialisiert das Gemini 1.5 -Flash -Modell mit API -Schlüssel
- Erstellen Sie einen Pydanticai -Agenten mit den angegebenen Antwort- und Abhängigkeitstypen
System -Eingabeaufforderung Definition
Jetzt definieren wir die Systemaufforderung für unsere SQL -Abfragegenerierung.
@Agent.System_prompt Async def system_prompt () -> str: kehren Sie f "" \ zurück Angesichts der folgenden PostgreSQL -Tabelle der Datensätze ist Ihre Aufgabe zu Schreiben Sie eine SQL -Abfrage, die zur Anfrage des Benutzers passt. Datenbankschema: {Db_schema} Beispiel Anfrage: Finden Sie alle Filme mit einem Mietpreis von mehr als 4,00 USD und einer Bewertung von 'PG' Antwort: Wählen Sie Titel, Rent_rate aus Aus dem Film Wobei Rental_Rate> 4.00 und Bewertung = 'pg'; Beispiel Anfrage: Finden Sie die Filme mit der längsten Länge Antwort: Wählen Sie Titel, Länge aus Aus dem Film Wobei Länge = (maximal (Länge) aus dem Film auswählen); Beispiel Anfrage: Finden Sie die durchschnittliche Mietdauer für Filme in jeder Kategorie Antwort: Wählen Sie C.Name, AVG (f.rental_duration) als durchschnitt_rental_duration Aus Kategorie c Schließen Sie Film_Category FC unter category_id = fc.category_id bei Treten Sie Film F auf fc.film_id = f.film_id bei Gruppe von C.Name Bestellung nach durchschnittlich_rental_duration desc; "" "
Hier definieren wir den Basiskontext für das KI -Modell und geben Beispiele an, um die Antworten des Modells zu leiten. Wir nehmen auch die Datenbankschema -Informationen in das Modell ein, damit das Modell das Schema analysieren und eine bessere Antwort generieren kann.
Antwortvalidierung
Um die Antwort aus dem KI-Modell fehlerfrei und bis zu den Projektanforderungen zu vermitteln, validieren wir nur die Antworten.
@Agent.Result_validator Async def validate_result (CTX: RunContext [DEPS], Ergebnis: Antwort) -> Antwort: Wenn is inviert (Ergebnis, InvalyRequest): Rückgabeergebnis # Gemini fügt SQL oft Extraneos -Gegenreaktionen hinzu result.sql_query = result.sql_query.replace ("\\", "") wenn nicht result.sql_query.upper (). startswith ("select"): ModellRetry erhöhen ("Bitte erstellen Sie eine Auswahlabfrage") versuchen: Warten Sie ctx.deps.conn.execute (f "Erklären {result.sql_query}") Außer asyncpg.exceptions.postgresError als e: modelRetry (f "ungültig SQL: {e}") aus e anders: Rückgabeergebnis
Hier validieren und verarbeiten wir die generierten SQL -Abfragen
Schlüsselvalidierungsschritte:
- Gibt sofort zurück, wenn das Ergebnis ein InvalyRequeste ist, die zusätzlichen Backslashes beseitigen
- Stellen Sie sicher, dass die Abfrage eine ausgewählte Anweisung ist
- Validiert die SQL -Syntax mit PostgreSQL Erklärung
- ModellRetry für ungültige Abfragen erhöhen
Datenbankschema
Um Ihr Datenbankschema zu erhalten, öffnen Sie die von Ihnen während des Postgres-Setups installierte PGADMIN4, wenden Sie sich zur Datenbank " DVDRENTULAL" , klicken Sie mit der rechten Maustaste darauf und klicken Sie auf " ERD für Datenbank ".
Sie erhalten das folgende ERD -Diagramm und erzeugen jetzt SQL aus dem ERD (siehe runde schwarze Markierung auf dem Bild).
Kopieren Sie das Schema in das Schema.py -Modul:
# schema.py Db_schema = "" "" BEGINNEN; Erstellen Sie eine Tabelle, wenn nicht öffentlich.Actor existiert ( Actor_id Serial nicht null, First_Name -Zeichen variiert (45) sammeln pg_catalog. "Standard" nicht null, Last_name -Zeichen variiert (45) sammeln pg_catalog. "Standard" nicht null, Last_update Timestamp ohne Zeitzone nicht null Standard (), Einschränkung Actor_Pkey Primärschlüssel (Actor_id) ); . . . . . . "" "
Der obige Codeblock ist stark abgeschnitten , um den vollständigen Code zu erhalten. Bitte besuchen Sie das Projektrepo.
Nun, da alle notwendigen Module abgeschlossen wurden, Zeit für die Implementierung der Hauptmethode und des Tests.
Main implementieren
Wir werden die Hauptfunktionsdefinition und die schnelle Handhabung durchführen.
Asyncio importieren OS importieren Importsystem Aus der Typisierung von Import Gewerkschaft aus dotenv import load_dotenv asyncpg importieren aus Devtools Import Debugug Aus typing_extensions importieren typealias vom Pydantic_ai Importagenten von pydantic_ai.models.gemini Import Geminimodel aus Modellen importieren DEPs, Erfolg, InvalidRequest load_dotenv () gemini_api_key = os.getenv ("google_api_key") Antwort: typealias = Union [Erfolg, InvalyRequest] Modell = Geminimodel ( "Gemini-1.5-Flash", api_key = gemini_api_key, ) Agent = Agent ( Modell, result_type = Antwort, # Typ: Ignorieren DEPS_TYPE = DEPS, ) Async def Main (): Wenn Len (sys.argv) == 1: fordert = "Bitte eine Auswahlabfrage erstellen" anders: Eingabeaufforderung = sys.argv [1] # Verbindung zur Datenbank conn = erwarten asyncpg.connect ( user = "postgres", Passwort = "Avizyt", Host = "localhost", Port = 5432, Database = "DVDRENTAL", ) versuchen: DEPs = DEPs (conn) result = act Agent.run (Eingabeaufforderung, DEPS = DEPS) result = debug (result.data) print ("========== Ihre Abfrage ========")) print (debug (result.sql_query)) print ("========== Erläuterung ========")) print (debug (result.explanation)) Endlich: warten conn.close () Wenn __name__ == "__main__": asyncio.run (main ())
Definieren Sie hier zunächst eine asynchrone Hauptfunktion und überprüfen Sie das Befehlszeilenargument für Client-Abfrage. Wenn keine Argumente bereitgestellt werden, verwenden Sie die Standardaufforderung.
Anschließend setzen wir die Postgres -Verbindungsparameter für eine Verbindung mit dem DVDRENTION -Datenbankdienst.
Erstellen Sie im Try -Block eine DEPS -Instanz mit einer Datenbankverbindung, führen Sie die AI -Agenten mit der Eingabeaufforderung aus und verarbeiten die Ergebnisse mithilfe der Debug -Funktion ( PIP -Installation Devtools ). Druckt dann die formatierte Ausgabe einschließlich der generierten SQL -Abfrage und Erläuterung der Abfrage. Danach haben wir schließlich die Datenbankverbindung geschlossen.
Führen Sie nun das Hauptmodul wie unten aus:
# im Terminal Python main.py "Holen Sie sich die Gesamtzahl der Vermietungen für jeden Kunden"
Ausgabe:
Nach dem Testen der SQL -Abfrage im Pgadmin4:
Wow! Es funktioniert wie wir wollen. Testen Sie weitere Fragen wie diese und genießen Sie das Lernen.
Abschluss
Dieses Projekt stellt einen wesentlichen Schritt weiter, um Datenbankinteraktionen intuitiver und zugänglicher zu gestalten. Durch die Kombination der Kraft von KI mit robusten Software-Engineering-Prinzipien haben wir ein Tool erstellt, das nicht nur SQL-Abfragen generiert, sondern dies auf eine sichere, lehrreiche und praktische Verwendung für die reale Verwendung ist.
Der Erfolg dieser Implementierung zeigt das Potenzial für KI, herkömmliche Datenbankvorgänge zu verbessern, anstatt ersetzt und ein wertvolles Instrument sowohl für Lernen als auch für die Produktivität bietet.
Project Repo - Alle in diesem Projekt verwendeten Code finden Sie hier.
Key Takeaways
- Pydanticai ermöglicht eine intelligente, kontextbezogene Codegenerierung.
- Gemini-1.5-Flash bietet ein erweitertes Verständnis für die natürliche Sprache für technische Aufgaben.
- AI -Agenten können die Interaktion mit Datenbanken verändern und Code generieren.
- Eine robuste Validierung ist in Co-generierten Codesystemen von entscheidender Bedeutung.
Häufig gestellte Fragen
Q 1. Was ist der Vorteil von Pydanticai für die SQL -Generation?A. Pydanticai bietet Typ-Safe, validierte Codegenerierung mit integrierter Fehlerprüfung und kontextbezogenem Verständnis.
Q 2. Wie trägt Gemini-1.5-Flash zum Projekt bei?A. Gemini -Modell bietet eine erweiterte Verarbeitung natürlicher Sprache und übersetzt komplexe menschliche Abfragen in präzise SQL -Anweisungen.
F 3. Kann dieses Projekt auf andere AI -Anwendungen ausgedehnt werden?A. Absolut! Die Architektur kann für die Codegenerierung, die Datenumwandlung und die intelligente Automatisierung in verschiedenen Bereichen angepasst werden.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und werden nach Ermessen des Autors verwendet.
Das obige ist der detaillierte Inhalt vonBauen Sie LLM-Anträge auf Produktionsstörungen mit Pydanticai-Anwendungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Google führt diese Verschiebung an. Die Funktion "KI -Übersichten" bietet bereits mehr als eine Milliarde Nutzer und liefert vollständige Antworten, bevor jemand auf einen Link klickt. [^2] Andere Spieler gewinnen ebenfalls schnell an Boden. Chatgpt, Microsoft Copilot und PE

Im Jahr 2022 gründete er Social Engineering Defense Startup Doppel, um genau das zu tun. Und da Cybercriminals immer fortgeschrittenere KI -Modelle zum Turbo -Ladung ihrer Angriffe nutzen, haben die KI -Systeme von Doppel dazu beigetragen, sie im Maßstab zu bekämpfen - schneller und

Voila kann durch die Interaktion mit geeigneten Weltmodellen im Wesentlichen angehoben werden. Reden wir darüber. Diese Analyse eines innovativen KI -Durchbruch

Labor Day 2050. Parks im ganzen Land füllen sich mit Familien, die traditionelle Grillen genießen, während nostalgische Paraden durch die Straßen der Stadt winden. Die Feier hat nun nun eine museumähnliche Qualität-historische Nachstellung als das Gedenken an C

Um diesen dringenden und beunruhigenden Trend zu beheben, bietet ein von Experten begutachteter Artikel im Februar 2025 des TEM Journal eine der klarsten, datengesteuerten Bewertungen, wo diese technologische DeepFake derzeit steht. Forscher

Angesichts der dauernden Zeit, die nötig ist, um neue Medikamente zu formulieren, bis zur Schaffung umweltfreundlicherer Energie, wird es für Unternehmen große Möglichkeiten geben, neue Wege zu brechen. Es gibt jedoch ein großes Problem: Es gibt einen schwerwiegenden Mangel an Menschen mit den Fähigkeiten,

Vor Jahren stellten Wissenschaftler fest, dass bestimmte Arten von Bakterien durch Elektrizität zu atmen scheinen, anstatt Sauerstoff aufzunehmen, aber wie sie dies taten, war ein Rätsel. Eine neue in der Journal Cell veröffentlichte Studie identifiziert, wie dies geschieht: die Mikrob

Auf der RSAC 2025-Konferenz in dieser Woche veranstaltete Snyk ein zeitnahes Panel mit dem Titel „Die ersten 100 Tage: How AI, Policy & Cybersecurity Collide“ mit einer All-Star-Aufstellung: Jen Eastersh, ehemaliger CISA-Direktor; Nicole Perlroth, ehemalige Journalistin und Partne


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung
