


Bauen Sie LLM-Antr?ge auf Produktionsst?rungen mit Pydanticai-Anwendungen
Mar 14, 2025 am 09:21 AMIn 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!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

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

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

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

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Erinnern Sie sich an die Flut chinesischer Open-Source-Modelle, die die Genai-Industrie Anfang dieses Jahres gest?rt haben? W?hrend Deepseek die meisten Schlagzeilen machte, war Kimi K1.5 einer der herausragenden Namen in der Liste. Und das Modell war ziemlich cool.

Bis Mitte 2025 heizt sich das KI ?Wettret“ auf, und Xai und Anthropic haben beide ihre Flaggschiff-Modelle GROK 4 und Claude 4 ver?ffentlicht. Diese beiden Modelle befinden

Aber wir müssen wahrscheinlich nicht einmal 10 Jahre warten, um einen zu sehen. Was als erste Welle wirklich nützlicher, menschlicher Maschinen angesehen werden k?nnte, ist bereits da. In den letzten Jahren wurden eine Reihe von Prototypen und Produktionsmodellen aus t herausgezogen

Bis zum Vorjahr wurde eine schnelle Engineering als entscheidende F?higkeit zur Interaktion mit gro?artigen Modellen (LLMs) angesehen. In jüngster Zeit sind LLM jedoch in ihren Argumentations- und Verst?ndnisf?higkeiten erheblich fortgeschritten. Natürlich unsere Erwartung

Ich bin sicher, Sie müssen über den allgemeinen KI -Agenten Manus wissen. Es wurde vor einigen Monaten auf den Markt gebracht, und im Laufe der Monate haben sie ihrem System mehrere neue Funktionen hinzugefügt. Jetzt k?nnen Sie Videos erstellen, Websites erstellen und viel MO machen

Viele Menschen haben leidenschaftlich ins Fitnessstudio gegangen und glauben, dass sie auf dem richtigen Weg sind, um ihre Fitnessziele zu erreichen. Die Ergebnisse sind jedoch nicht aufgrund schlechter Di?tplanung und mangelnder Richtung vorhanden. Einstellung eines Personal Trainer Al

Aufgebaut auf Leia's propriet?rer neuronaler Tiefenmotor verarbeitet die App still Bilder und fügt die natürliche Tiefe zusammen mit simulierten Bewegungen hinzu - wie Pfannen, Zoome und Parallaxeffekte -, um kurze Video -Rollen zu erstellen, die den Eindruck erwecken, in die SCE einzusteigen

Eine neue Studie von Forschern am King's College London und der University of Oxford teilt die Ergebnisse dessen, was passiert ist, als OpenAI, Google und Anthropic in einem Cutthroat -Wettbewerb zusammengeworfen wurden, der auf dem iterierten Dilemma des Gefangenen basiert. Das war nein
