Die Automatisierung der Text-zu-SQL-Konvertierung ist nach wie vor eine große Aufgabe, und es gibt nur sehr wenige gute Open-Source-Modelle für diese Aufgabe. Lass uns das aufschlüsseln - > Text-zu-SQL-Konvertierungsmodelle sind im Grunde nichts anderes als Encoder-Decoder-Modelle mit einer Multi-Attention-Schicht und einer Schema-Verknüpfungsschicht dazwischen. > Der Encoder verarbeitet sowohl die Benutzeranfrage als auch das Datenbankschema und generiert kontextuelle Einbettungen (beziehungsbewusste Kodierung). > Durch die Schema-Verknüpfung werden die Tokens in der Anfrage mit den entsprechenden Schema-Entitäten ausgerichtet. > Der schema-bewusste Aufmerksamkeitsmechanismus ermöglicht es dem Modell dann, sich während des Decodierens auf relevante Teile des Schemas zu konzentrieren. > Der Decoder produziert sequenziell SQL-Tokens (einschränkungsbasiertes Decodieren). Wo fehlen diesen Modellen? - > Die meisten verfügbaren Modelle haben in den Trainingsdaten selbst keine komplexen Abfragen und schneiden daher bei bereichsübergreifenden oder geschachtelten Abfragen schlecht ab. > Die Sprache und die Anforderungen an die Abfrage sind nicht immer korrekt von einem normalen Benutzer. Selbst Rechtschreibfehler führen zu falschen Eingaben und verursachen Probleme bei der Abfrage, weshalb das Prompting ein wichtiger Teil dieser Aufgabe ist. Ich habe persönlich detailliert daran gearbeitet, als ich ein End-to-End-Projekt erstellt habe, sogar synthetische Daten erstellt und versucht, mein eigenes SLM zu trainieren, aber ich bin kläglich gescheitert und habe dann ein Open-Source-Modell verwendet. Wenn du tiefer in dieses Thema eintauchen möchtest, empfehle ich, zuerst diese Forschungsarbeiten zu lesen - > LLM Enhanced Text-to-SQL Generation > Next-Generation Database Interfaces: > Text-to-SQL Parsing: Konzepte und Methoden > RASAT: Integration relationaler Strukturen in ein vortrainiertes Seq2Seq-Modell.