Δημιουργία Αιχμής Πληροφοριών με Συνομιλητική Πρόσβαση στα Δεδομένα

Δημιουργία Αιχμής Πληροφοριών με Συνομιλητική Πρόσβαση στα Δεδομένα

Κόμβος πηγής: 2737787

συνομιλίας AI για ανάλυση δεδομένων

Εικόνα 1: Αναπαράσταση της ροής Text2SQL

Καθώς ο κόσμος μας γίνεται πιο παγκόσμιος και δυναμικός, οι επιχειρήσεις εξαρτώνται όλο και περισσότερο από δεδομένα για τη λήψη τεκμηριωμένων, αντικειμενικών και έγκαιρων αποφάσεων. Ωστόσο, από τώρα, η απελευθέρωση του πλήρους δυναμικού των οργανωτικών δεδομένων είναι συχνά προνόμιο μιας χούφτας επιστημόνων και αναλυτών δεδομένων. Οι περισσότεροι εργαζόμενοι δεν κατέχουν τη συμβατική εργαλειοθήκη επιστήμης δεδομένων (SQL, Python, R κ.λπ.). Για να αποκτήσουν πρόσβαση στα επιθυμητά δεδομένα, περνούν μέσω ενός πρόσθετου επιπέδου όπου οι αναλυτές ή οι ομάδες BI «μεταφράζουν» την πρόζα των επιχειρηματικών ερωτήσεων στη γλώσσα των δεδομένων. Η πιθανότητα τριβής και αναποτελεσματικότητας σε αυτό το ταξίδι είναι υψηλή — για παράδειγμα, τα δεδομένα μπορεί να παραδοθούν με καθυστερήσεις ή ακόμα και όταν η ερώτηση έχει ήδη καταστεί απαρχαιωμένη. Οι πληροφορίες ενδέχεται να χαθούν στην πορεία, όταν οι απαιτήσεις δεν μεταφράζονται με ακρίβεια σε αναλυτικά ερωτήματα. Επιπλέον, η δημιουργία πληροφοριών υψηλής ποιότητας απαιτεί μια επαναληπτική προσέγγιση που αποθαρρύνεται με κάθε επιπλέον βήμα στον βρόχο. Από την άλλη πλευρά, αυτές οι ad-hoc αλληλεπιδράσεις δημιουργούν αναστάτωση στα ακριβά ταλέντα δεδομένων και τους αποσπούν από την πιο στρατηγική εργασία δεδομένων, όπως περιγράφεται σε αυτές τις «εξομολογήσεις» ενός επιστήμονα δεδομένων:

Όταν βρισκόμουν στο Square και η ομάδα ήταν μικρότερη, είχαμε μια τρομερή εναλλαγή «αναλυτικών σε ετοιμότητα». Εναλλασσόταν αυστηρά σε εβδομαδιαία βάση και, αν ήταν η σειρά σας, ξέρατε ότι θα κάνατε πολύ λίγη «πραγματική» δουλειά εκείνη την εβδομάδα και θα αφιερώνατε τον περισσότερο χρόνο σας σε ερωτήσεις ad-hoc από τις διάφορες ομάδες προϊόντων και λειτουργιών στο εταιρεία (SQL monkeying, το λέγαμε). Υπήρξε σκληρός ανταγωνισμός για ρόλους μάνατζερ στην ομάδα ανάλυσης και νομίζω ότι αυτό ήταν εξ ολοκλήρου το αποτέλεσμα της εξαίρεσης των διευθυντών από αυτήν την εναλλαγή — κανένα έπαθλο θέσης δεν θα μπορούσε να συναγωνιστεί το καρότο της μη εκτέλεσης εφημεριών.[1]

Πράγματι, δεν θα ήταν ωραίο να μιλάτε απευθείας στα δεδομένα σας αντί να χρειάζεται να περάσετε από πολλούς γύρους αλληλεπίδρασης με το προσωπικό δεδομένων σας; Αυτό το όραμα αγκαλιάζεται από διεπαφές συνομιλίας που επιτρέπουν στους ανθρώπους να αλληλεπιδρούν με δεδομένα χρησιμοποιώντας τη γλώσσα, το πιο διαισθητικό και παγκόσμιο κανάλι επικοινωνίας μας. Μετά την ανάλυση μιας ερώτησης, ένας αλγόριθμος την κωδικοποιεί σε μια δομημένη λογική μορφή στη γλώσσα ερωτήματος της επιλογής, όπως η SQL. Έτσι, οι μη τεχνικοί χρήστες μπορούν να συνομιλούν με τα δεδομένα τους και να πάρουν γρήγορα συγκεκριμένες, σχετικές και έγκαιρες πληροφορίες, χωρίς να κάνουν την παράκαμψη μέσω μιας ομάδας BI. Σε αυτό το άρθρο, θα εξετάσουμε τις διαφορετικές πτυχές υλοποίησης του Text2SQL και θα επικεντρωθούμε σε σύγχρονες προσεγγίσεις με τη χρήση μοντέλων μεγάλων γλωσσών (LLM), τα οποία επιτυγχάνουν την καλύτερη απόδοση μέχρι τώρα (βλ. [2]· για μια έρευνα σχετικά με εναλλακτικές προσεγγίσεις πέρα από τα LLM, οι αναγνώστες αναφέρονται [3]). Το άρθρο είναι δομημένο σύμφωνα με το ακόλουθο «νοητικό μοντέλο» των κύριων στοιχείων που πρέπει να ληφθούν υπόψη κατά τον σχεδιασμό και την κατασκευή ενός χαρακτηριστικού AI:

συνομιλίας AI για ανάλυση δεδομένων
Εικόνα 2: Νοητικό μοντέλο ενός χαρακτηριστικού AI

Ας ξεκινήσουμε έχοντας κατά νου το τέλος και ας ανακεφαλαιώσουμε την αξία — γιατί θα δημιουργήσατε μια δυνατότητα Text2SQL στα δεδομένα ή το προϊόν αναλυτικών στοιχείων σας. Τα τρία βασικά οφέλη είναι:

  • Χρήστες επιχειρήσεων μπορεί να έχει πρόσβαση σε οργανωτικά δεδομένα με άμεσο και έγκαιρο τρόπο.
  • Αυτό ανακουφίζει επιστήμονες και αναλυτές δεδομένων από την επιβάρυνση των ad-hoc αιτημάτων από τους επιχειρησιακούς χρήστες και τους επιτρέπει να επικεντρωθούν σε προηγμένες προκλήσεις δεδομένων.
  • Αυτό επιτρέπει το επιχείρηση να αξιοποιήσει τα δεδομένα της με πιο ρευστό και στρατηγικό τρόπο, μετατρέποντάς τα τελικά σε μια σταθερή βάση για τη λήψη αποφάσεων.

Τώρα, ποια είναι τα σενάρια προϊόντος στα οποία μπορείτε να εξετάσετε το Text2SQL; Οι τρεις βασικές ρυθμίσεις είναι:

  • Προσφέρετε α επεκτάσιμο προϊόν δεδομένων/BI και θέλουν να επιτρέψουν σε περισσότερους χρήστες να έχουν πρόσβαση στα δεδομένα τους με μη τεχνικό τρόπο, αυξάνοντας έτσι τόσο τη χρήση όσο και τη βάση χρηστών. Για παράδειγμα, το ServiceNow έχει ενσωμάτωση ερωτημάτων δεδομένων σε μια μεγαλύτερη προσφορά συνομιλίας, να Ατλάν έχει πρόσφατα ανακοίνωσε την εξερεύνηση δεδομένων φυσικής γλώσσας.
  • Θέλετε να δημιουργήσετε κάτι στον χώρο δεδομένων/AI για να εκδημοκρατίσετε την πρόσβαση σε δεδομένα σε εταιρείες, οπότε θα μπορούσατε ενδεχομένως να εξετάσετε MVP με το Text2SQL στον πυρήνα. Οι πάροχοι όπως AI2SQL και  Text2sql.ai ήδη κάνουν είσοδο σε αυτόν τον χώρο.
  • Εργάζεστε σε ένα προσαρμοσμένο σύστημα BI και θέλουν να μεγιστοποιήσουν και να εκδημοκρατίσουν τη χρήση του στη μεμονωμένη εταιρεία.

Όπως θα δούμε στις επόμενες ενότητες, το Text2SQL απαιτεί μια μη τετριμμένη εκ των προτέρων εγκατάσταση. Για να υπολογίσετε το ROI, λάβετε υπόψη τη φύση των αποφάσεων που πρόκειται να υποστηριχθούν καθώς και τα διαθέσιμα δεδομένα. Το Text2SQL μπορεί να είναι μια απόλυτη νίκη σε δυναμικά περιβάλλοντα όπου τα δεδομένα αλλάζουν γρήγορα και χρησιμοποιούνται ενεργά και συχνά στη λήψη αποφάσεων, όπως οι επενδύσεις, το μάρκετινγκ, η κατασκευή και η βιομηχανία ενέργειας. Σε αυτά τα περιβάλλοντα, τα παραδοσιακά εργαλεία για τη διαχείριση της γνώσης είναι πολύ στατικά και οι πιο εύχρηστοι τρόποι πρόσβασης σε δεδομένα και πληροφορίες βοηθούν τις εταιρείες να δημιουργήσουν ανταγωνιστικό πλεονέκτημα. Όσον αφορά τα δεδομένα, το Text2SQL παρέχει τη μεγαλύτερη αξία με μια βάση δεδομένων που είναι:

  • Μεγάλο και αναπτυσσόμενο, έτσι ώστε το Text2SQL να μπορεί να ξεδιπλώνει την αξία του με την πάροδο του χρόνου καθώς όλο και περισσότερα δεδομένα αξιοποιούνται.
  • Υψηλής ποιότητας, έτσι ώστε ο αλγόριθμος Text2SQL να μην χρειάζεται να αντιμετωπίσει υπερβολικό θόρυβο (ασυνέπειες, κενές τιμές κ.λπ.) στα δεδομένα. Γενικά, τα δεδομένα που δημιουργούνται αυτόματα από εφαρμογές έχουν υψηλότερη ποιότητα και συνέπεια από τα δεδομένα που δημιουργούνται και διατηρούνται από ανθρώπους.
  • Σημασιολογικά ώριμος σε αντίθεση με τα ακατέργαστα, έτσι ώστε οι άνθρωποι να μπορούν να αναζητούν τα δεδομένα με βάση τις κεντρικές έννοιες, τις σχέσεις και τις μετρήσεις που υπάρχουν στο νοητικό τους μοντέλο. Σημειώστε ότι η σημασιολογική ωριμότητα μπορεί να επιτευχθεί με ένα πρόσθετο βήμα μετασχηματισμού που συμμορφώνει τα ακατέργαστα δεδομένα σε μια εννοιολογική δομή (βλ. ενότητα «Εμπλουτισμός της προτροπής με πληροφορίες βάσης δεδομένων»).

Στη συνέχεια, θα εμβαθύνουμε στα δεδομένα, τον αλγόριθμο, την εμπειρία χρήστη, καθώς και τις σχετικές μη λειτουργικές απαιτήσεις μιας δυνατότητας Text2SQL. Το άρθρο είναι γραμμένο για διαχειριστές προϊόντων, σχεδιαστές UX και εκείνους τους επιστήμονες δεδομένων και τους μηχανικούς που βρίσκονται στην αρχή του ταξιδιού τους στο Text2SQL. Για αυτούς τους ανθρώπους, παρέχει όχι μόνο έναν οδηγό για να ξεκινήσετε, αλλά και ένα κοινό έδαφος γνώσεων για συζητήσεις σχετικά με τις διεπαφές μεταξύ προϊόντος, τεχνολογίας και επιχείρησης, συμπεριλαμβανομένων των σχετικών ανταλλαγών. Εάν είστε ήδη πιο προχωρημένοι στην εφαρμογή σας, οι αναφορές στο τέλος παρέχουν μια σειρά από βαθιές καταδύσεις για εξερεύνηση.

Εάν αυτό το σε βάθος εκπαιδευτικό περιεχόμενο είναι χρήσιμο για εσάς, μπορείτε εγγραφείτε στη λίστα αλληλογραφίας της AI μας να ειδοποιούμε όταν κυκλοφορούμε νέο υλικό. 

1. Δεδομένα

Οποιαδήποτε προσπάθεια μηχανικής μάθησης ξεκινά με δεδομένα, επομένως θα ξεκινήσουμε διευκρινίζοντας τη δομή των δεδομένων εισόδου και στόχου που χρησιμοποιούνται κατά την εκπαίδευση και την πρόβλεψη. Σε όλο το άρθρο, θα χρησιμοποιήσουμε τη ροή Text2SQL από το Σχήμα 1 ως την εκτελούμενη αναπαράστασή μας και θα επισημάνουμε τα στοιχεία και τις σχέσεις που εξετάζουμε αυτήν τη στιγμή με κίτρινο χρώμα.

συνομιλίας AI για ανάλυση δεδομένων
Εικόνα 3: Σε αυτήν την αναπαράσταση Text2SQL, τα στοιχεία και οι σχέσεις που σχετίζονται με δεδομένα επισημαίνονται με κίτρινο χρώμα.

1.1 Μορφή και δομή των δεδομένων

Συνήθως, ένα ακατέργαστο ζεύγος εισόδου-εξόδου Text2SQL αποτελείται από μια ερώτηση φυσικής γλώσσας και το αντίστοιχο ερώτημα SQL, για παράδειγμα:

Ερώτηση: "Καταχωρίστε το όνομα και τον αριθμό των ακολούθων για κάθε χρήστη."

Ερώτημα SQL:

επιλέξτε όνομα, followers από user_profiles

Στον χώρο δεδομένων εκπαίδευσης, η αντιστοίχιση μεταξύ ερωτήσεων και ερωτημάτων SQL είναι πολλά-προς-πολλά:

  • Ένα ερώτημα SQL μπορεί να αντιστοιχιστεί σε πολλές διαφορετικές ερωτήσεις στη φυσική γλώσσα. Για παράδειγμα, η παραπάνω σημασιολογία του ερωτήματος μπορεί να εκφραστεί ως εξής:δείξτε μου τα ονόματα και τον αριθμό των ακολούθων ανά χρήστη","πόσοι ακόλουθοι υπάρχουν για κάθε χρήστη;" και τα λοιπα.
  • Η σύνταξη SQL είναι εξαιρετικά ευέλικτη και σχεδόν κάθε ερώτηση μπορεί να αναπαρασταθεί στην SQL με πολλούς τρόπους. Το απλούστερο παράδειγμα είναι οι διαφορετικές παραγγελίες των προτάσεων WHERE. Σε μια πιο προηγμένη στάση, όλοι όσοι έχουν κάνει βελτιστοποίηση ερωτημάτων SQL θα γνωρίζουν ότι πολλοί δρόμοι οδηγούν στο ίδιο αποτέλεσμα και ότι σημασιολογικά ισοδύναμα ερωτήματα μπορεί να έχουν εντελώς διαφορετική σύνταξη.

Η μη αυτόματη συλλογή δεδομένων εκπαίδευσης για το Text2SQL είναι ιδιαίτερα κουραστική. Όχι μόνο απαιτεί γνώση της SQL από την πλευρά του σχολιαστή, αλλά και περισσότερο χρόνο ανά παράδειγμα από πιο γενικές γλωσσικές εργασίες, όπως η ανάλυση συναισθημάτων και η ταξινόμηση κειμένου. Για να εξασφαλιστεί επαρκής ποσότητα παραδειγμάτων εκπαίδευσης, μπορεί να χρησιμοποιηθεί η αύξηση δεδομένων — για παράδειγμα, τα LLM μπορούν να χρησιμοποιηθούν για τη δημιουργία παραφράσεων για την ίδια ερώτηση. Το [3] παρέχει μια πληρέστερη έρευνα των τεχνικών αύξησης δεδομένων Text2SQL.

1.2 Εμπλουτισμός της προτροπής με πληροφορίες βάσης δεδομένων

Το Text2SQL είναι ένας αλγόριθμος στη διεπαφή μεταξύ μη δομημένων και δομημένων δεδομένων. Για βέλτιστη απόδοση, και οι δύο τύποι δεδομένων πρέπει να υπάρχουν κατά την προπόνηση και την πρόβλεψη. Συγκεκριμένα, ο αλγόριθμος πρέπει να γνωρίζει για την ερωτούμενη βάση δεδομένων και να είναι σε θέση να διατυπώσει το ερώτημα με τέτοιο τρόπο ώστε να μπορεί να εκτελεστεί σε σχέση με τη βάση δεδομένων. Αυτή η γνώση μπορεί να περιλαμβάνει:

  • Στήλες και πίνακες της βάσης δεδομένων
  • Σχέσεις μεταξύ πινάκων (ξένα κλειδιά)
  • Περιεχόμενο βάσης δεδομένων

Υπάρχουν δύο επιλογές για την ενσωμάτωση της γνώσης της βάσης δεδομένων: αφενός, τα δεδομένα εκπαίδευσης μπορούν να περιοριστούν σε παραδείγματα γραμμένα για τη συγκεκριμένη βάση δεδομένων, οπότε το σχήμα μαθαίνεται απευθείας από το ερώτημα SQL και την αντιστοίχιση του στην ερώτηση. Αυτή η ρύθμιση μιας βάσης δεδομένων επιτρέπει τη βελτιστοποίηση του αλγόριθμου για μια μεμονωμένη βάση δεδομένων ή/και εταιρεία. Ωστόσο, σκοτώνει οποιεσδήποτε φιλοδοξίες για επεκτασιμότητα, καθώς το μοντέλο πρέπει να ρυθμιστεί με ακρίβεια για κάθε πελάτη ή βάση δεδομένων. Εναλλακτικά, σε μια ρύθμιση πολλών βάσεων δεδομένων, το σχήμα της βάσης δεδομένων μπορεί να παρέχεται ως μέρος της εισόδου, επιτρέποντας στον αλγόριθμο να «γενικεύεται» σε νέα, αόρατα σχήματα βάσης δεδομένων. Αν και θα πρέπει οπωσδήποτε να ακολουθήσετε αυτήν την προσέγγιση εάν θέλετε να χρησιμοποιήσετε το Text2SQL σε πολλές διαφορετικές βάσεις δεδομένων, να έχετε κατά νου ότι απαιτεί σημαντική άμεση προσπάθεια μηχανικής. Για οποιαδήποτε λογική επιχειρηματική βάση δεδομένων, η συμπερίληψη των πλήρων πληροφοριών στην προτροπή θα είναι εξαιρετικά αναποτελεσματική και πιθανότατα αδύνατη λόγω των περιορισμών μήκους του άμεσου χρόνου. Έτσι, η συνάρτηση που είναι υπεύθυνη για την άμεση διατύπωση θα πρέπει να είναι αρκετά έξυπνη ώστε να επιλέγει ένα υποσύνολο πληροφοριών βάσης δεδομένων που είναι πιο «χρήσιμο» για μια δεδομένη ερώτηση και να το κάνει αυτό για δυνητικά μη εμφανείς βάσεις δεδομένων.

Τέλος, η δομή της βάσης δεδομένων παίζει καθοριστικό ρόλο. Σε εκείνα τα σενάρια όπου έχετε αρκετό έλεγχο στη βάση δεδομένων, μπορείτε να κάνετε τη ζωή του μοντέλου σας πιο εύκολη, αφήνοντάς το να μάθει από μια διαισθητική δομή. Κατά κανόνα, όσο περισσότερο η βάση δεδομένων σας αντικατοπτρίζει τον τρόπο με τον οποίο οι επιχειρηματίες μιλούν για την επιχείρηση, τόσο καλύτερα και πιο γρήγορα το μοντέλο σας μπορεί να μάθει από αυτήν. Επομένως, εξετάστε το ενδεχόμενο να εφαρμόσετε πρόσθετους μετασχηματισμούς στα δεδομένα, όπως τη συναρμολόγηση κανονικοποιημένων ή με άλλο τρόπο διασκορπισμένων δεδομένων σε μεγάλους πίνακες ή ένα θησαυροφυλάκιο δεδομένων, ονομασία πινάκων και στηλών με σαφή και ξεκάθαρο τρόπο κ.λπ. Όλες οι επιχειρηματικές γνώσεις που μπορείτε να κωδικοποιήσετε εκ των προτέρων θα μειωθούν το βάρος της πιθανολογικής μάθησης στο μοντέλο σας και θα σας βοηθήσουν να επιτύχετε καλύτερα αποτελέσματα.

2. Αλγόριθμος

συνομιλίας AI για ανάλυση δεδομένων
Εικόνα 4: Σε αυτήν την αναπαράσταση Text2SQL, τα στοιχεία και οι σχέσεις που σχετίζονται με τον αλγόριθμο σημειώνονται με κίτρινο χρώμα.

Το Text2SQL είναι ένας τύπος σημασιολογική ανάλυση — η αντιστοίχιση κειμένων σε λογικές παραστάσεις. Έτσι, ο αλγόριθμος δεν πρέπει μόνο να «μάθει» τη φυσική γλώσσα, αλλά και την αναπαράσταση του στόχου — στην περίπτωσή μας, SQL. Συγκεκριμένα, πρέπει να αποκτήσει και τις ακόλουθες γνώσεις:

  • Σύνταξη και σημασιολογία SQL
  • Δομή βάσης δεδομένων
  • Κατανόηση φυσικής γλώσσας (NLU)
  • Αντιστοίχιση μεταξύ φυσικής γλώσσας και ερωτημάτων SQL (συντακτικό, λεξιλογικό και σημασιολογικό)

2.1 Επίλυση γλωσσικής μεταβλητότητας στην είσοδο

Στην είσοδο, η κύρια πρόκληση του Text2SQL έγκειται στην ευελιξία της γλώσσας: όπως περιγράφεται στην ενότητα Μορφή και δομή των δεδομένων, η ίδια ερώτηση μπορεί να παραφραστεί με πολλούς διαφορετικούς τρόπους. Επιπλέον, στο πραγματικό πλαίσιο συνομιλίας, πρέπει να αντιμετωπίσουμε μια σειρά ζητημάτων όπως ορθογραφικά και γραμματικά λάθη, ελλιπείς και διφορούμενες εισροές, πολύγλωσσες εισροές κ.λπ.

συνομιλίας AI για ανάλυση δεδομένων
Εικόνα 5: Ο αλγόριθμος Text2SQL πρέπει να αντιμετωπίσει πολλές διαφορετικές παραλλαγές μιας ερώτησης

LLM όπως τα μοντέλα GPT, T5 και CodeX πλησιάζουν όλο και πιο κοντά στην επίλυση αυτής της πρόκλησης. Μαθαίνοντας από τεράστιες ποσότητες διαφορετικών κειμένων, μαθαίνουν να αντιμετωπίζουν μεγάλο αριθμό γλωσσικών προτύπων και ανωμαλιών. Στο τέλος, γίνονται σε θέση να γενικεύουν ερωτήσεις που είναι σημασιολογικά όμοιες παρότι έχουν διαφορετικές επιφανειακές μορφές. Τα LLM μπορούν να εφαρμοστούν εκτός συσκευασίας (zero-shot) ή μετά από τελειοποίηση. Το πρώτο, αν και βολικό, οδηγεί σε χαμηλότερη ακρίβεια. Το τελευταίο απαιτεί περισσότερη δεξιότητα και δουλειά, αλλά μπορεί να αυξήσει σημαντικά την ακρίβεια.

Όσον αφορά την ακρίβεια, όπως ήταν αναμενόμενο, τα μοντέλα με τις καλύτερες επιδόσεις είναι τα τελευταία μοντέλα της οικογένειας GPT, συμπεριλαμβανομένων των μοντέλων CodeX. Τον Απρίλιο του 2023, το GPT-4 οδήγησε σε δραματική αύξηση ακρίβειας άνω του 5% σε σχέση με την προηγούμενη τελευταία λέξη της τεχνολογίας και πέτυχε ακρίβεια 85.3% (στη μετρική «εκτέλεση με τιμές»).[4] Στο στρατόπεδο ανοιχτού κώδικα, οι αρχικές προσπάθειες για την επίλυση του παζλ Text2SQL επικεντρώθηκαν σε μοντέλα αυτόματης κωδικοποίησης όπως το BERT, τα οποία διαπρέπουν σε εργασίες NLU. σε αυτοπαλινδρομικά μοντέλα όπως το μοντέλο T5. Το T6 είναι προεκπαιδευμένο χρησιμοποιώντας μάθηση πολλαπλών εργασιών και έτσι προσαρμόζεται εύκολα σε νέες γλωσσικές εργασίες, συμπεριλαμβανομένων. διαφορετικές παραλλαγές σημασιολογικής ανάλυσης. Ωστόσο, τα αυτοπαλινδρομικά μοντέλα έχουν ένα εγγενές ελάττωμα όσον αφορά τις εργασίες σημασιολογικής ανάλυσης: έχουν έναν απεριόριστο χώρο εξόδου και κανένα σημασιολογικό προστατευτικό κάλυμμα που θα περιόριζε την παραγωγή τους, πράγμα που σημαίνει ότι μπορούν να γίνουν εκπληκτικά δημιουργικοί στη συμπεριφορά τους. Αν και αυτό είναι εκπληκτικό υλικό για τη δημιουργία περιεχομένου ελεύθερης μορφής, είναι ενοχλητικό για εργασίες όπως το Text7SQL όπου αναμένουμε περιορισμένο, καλά δομημένο αποτέλεσμα-στόχο.

2.2 Επικύρωση και βελτίωση ερωτήματος

Για να περιορίσουμε την έξοδο LLM, μπορούμε να εισαγάγουμε πρόσθετους μηχανισμούς για την επικύρωση και τη βελτίωση του ερωτήματος. Αυτό μπορεί να εφαρμοστεί ως πρόσθετο βήμα επικύρωσης, όπως προτείνεται στο σύστημα PICARD.[8] Το PICARD χρησιμοποιεί έναν αναλυτή SQL που μπορεί να επαληθεύσει εάν ένα μερικό ερώτημα SQL μπορεί να οδηγήσει σε ένα έγκυρο ερώτημα SQL μετά την ολοκλήρωσή του. Σε κάθε βήμα παραγωγής από το LLM, τα διακριτικά που θα ακύρωναν το ερώτημα απορρίπτονται και διατηρούνται τα έγκυρα διακριτικά με τη μεγαλύτερη πιθανότητα. Όντας ντετερμινιστική, αυτή η προσέγγιση διασφαλίζει 100% εγκυρότητα SQL, εφόσον ο αναλυτής τηρεί σωστούς κανόνες SQL. Επίσης, αποσυνδέει την επικύρωση ερωτήματος από τη δημιουργία, επιτρέποντας έτσι τη διατήρηση και των δύο στοιχείων ανεξάρτητα το ένα από το άλλο και την αναβάθμιση και τροποποίηση του LLM.

Μια άλλη προσέγγιση είναι η ενσωμάτωση δομικών γνώσεων και γνώσεων SQL απευθείας στο LLM. Για παράδειγμα, το Graphix [9] χρησιμοποιεί επίπεδα με επίγνωση γραφήματος για να εισάγει δομημένη γνώση SQL στο μοντέλο T5. Λόγω της πιθανολογικής φύσης αυτής της προσέγγισης, ωθεί το σύστημα προς τα σωστά ερωτήματα, αλλά δεν παρέχει εγγύηση επιτυχίας.

Τέλος, το LLM μπορεί να χρησιμοποιηθεί ως παράγοντας πολλαπλών βημάτων που μπορεί αυτόνομα να ελέγξει και να βελτιώσει το ερώτημα.[10] Χρησιμοποιώντας πολλαπλά βήματα σε μια προτροπή αλυσίδας σκέψης, μπορεί να ανατεθεί στον πράκτορα να σκεφτεί την ορθότητα των δικών του ερωτημάτων και να βελτιώσει τυχόν ελαττώματα. Εάν το επικυρωμένο ερώτημα εξακολουθεί να μην μπορεί να εκτελεστεί, η παρακολούθηση εξαίρεσης SQL μπορεί να μεταβιβαστεί στον παράγοντα ως πρόσθετη ανατροφοδότηση για βελτίωση.

Πέρα από αυτές τις αυτοματοποιημένες μεθόδους που συμβαίνουν στο backend, είναι επίσης δυνατή η συμμετοχή του χρήστη κατά τη διαδικασία ελέγχου ερωτημάτων. Θα το περιγράψουμε με περισσότερες λεπτομέρειες στην ενότητα για την εμπειρία χρήστη.

2.3 Αξιολόγηση

Για να αξιολογήσουμε τον αλγόριθμό μας Text2SQL, πρέπει να δημιουργήσουμε ένα σύνολο δεδομένων δοκιμής (επικύρωσης), να εκτελέσουμε τον αλγόριθμό μας σε αυτό και να εφαρμόσουμε σχετικές μετρήσεις αξιολόγησης στο αποτέλεσμα. Ένα απλό σύνολο δεδομένων χωρισμένο σε δεδομένα εκπαίδευσης, ανάπτυξης και επικύρωσης θα βασίζεται σε ζεύγη ερωτήσεων-ερωτημάτων και θα οδηγεί σε μη βέλτιστα αποτελέσματα. Τα ερωτήματα επικύρωσης μπορεί να αποκαλυφθούν στο μοντέλο κατά τη διάρκεια της εκπαίδευσης και να οδηγήσουν σε μια υπερβολικά αισιόδοξη άποψη για τις δεξιότητές του γενίκευσης. ΕΝΑ διαίρεση βάσει ερωτημάτων, όπου το σύνολο δεδομένων χωρίζεται με τέτοιο τρόπο ώστε να μην εμφανίζεται κανένα ερώτημα τόσο κατά την εκπαίδευση όσο και κατά την επικύρωση, παρέχει πιο αληθινά αποτελέσματα.

Όσον αφορά τις μετρήσεις αξιολόγησης, αυτό που μας ενδιαφέρει στο Text2SQL δεν είναι να δημιουργήσουμε ερωτήματα που είναι εντελώς πανομοιότυπα με το χρυσό πρότυπο. Αυτό “ακριβής αντιστοίχιση χορδών” Η μέθοδος είναι πολύ αυστηρή και θα δημιουργήσει πολλά ψευδώς αρνητικά, καθώς διαφορετικά ερωτήματα SQL μπορούν να οδηγήσουν στο ίδιο σύνολο δεδομένων που επιστρέφεται. Αντίθετα, θέλουμε να φτάσουμε ψηλά σημασιολογική ακρίβεια και αξιολογήστε εάν τα προβλεπόμενα ερωτήματα και τα ερωτήματα "χρυσού προτύπου" θα επέστρεφαν πάντα τα ίδια σύνολα δεδομένων. Υπάρχουν τρεις μετρήσεις αξιολόγησης που προσεγγίζουν αυτόν τον στόχο:

  • Ακρίβεια αντιστοίχισης ακριβούς σετ: τα ερωτήματα SQL που δημιουργούνται και στόχος χωρίζονται στα συστατικά τους και τα προκύπτοντα σύνολα συγκρίνονται ως προς την ταυτότητα.[11] Το μειονέκτημα εδώ είναι ότι λαμβάνει υπόψη μόνο παραλλαγές σειράς στο ερώτημα SQL, αλλά όχι για πιο έντονες συντακτικές διαφορές μεταξύ σημασιολογικά ισοδύναμων ερωτημάτων.
  • Ακρίβεια εκτέλεσης: τα σύνολα δεδομένων που προκύπτουν από τα ερωτήματα SQL που δημιουργούνται και στόχου συγκρίνονται ως προς την ταυτότητα. Με καλή τύχη, τα ερωτήματα με διαφορετική σημασιολογία μπορούν ακόμα να περάσουν αυτό το τεστ σε μια συγκεκριμένη παρουσία βάσης δεδομένων. Για παράδειγμα, υποθέτοντας μια βάση δεδομένων όπου όλοι οι χρήστες είναι άνω των 30 ετών, τα ακόλουθα δύο ερωτήματα θα επέστρεφαν πανομοιότυπα αποτελέσματα παρόλο που έχουν διαφορετική σημασιολογία:
    επιλέξτε * από τον χρήστη
    επιλέξτε * από χρήστη όπου ηλικία > 30
  • Ακρίβεια δοκιμαστικής σουίτας: Το test-suite accuracy είναι μια πιο προηγμένη και λιγότερο επιτρεπτή έκδοση της ακρίβειας εκτέλεσης. Για κάθε ερώτημα, δημιουργείται ένα σύνολο ("δοκιμαστική σουίτα") βάσεων δεδομένων που διαφοροποιούνται σε μεγάλο βαθμό σε σχέση με τις μεταβλητές, τις συνθήκες και τις τιμές στο ερώτημα. Στη συνέχεια, η ακρίβεια εκτέλεσης ελέγχεται σε καθεμία από αυτές τις βάσεις δεδομένων. Αν και απαιτεί πρόσθετη προσπάθεια για τη μηχανική της δημιουργίας δοκιμαστικής σουίτας, αυτή η μέτρηση μειώνει επίσης σημαντικά τον κίνδυνο ψευδώς θετικών αποτελεσμάτων στην αξιολόγηση.[12]

3. Εμπειρία χρήστη

συνομιλίας AI για ανάλυση δεδομένων
Εικόνα 6: Σε αυτήν την αναπαράσταση Text2SQL, τα στοιχεία και οι σχέσεις που σχετίζονται με το UX επισημαίνονται με κίτρινο χρώμα.

Η τρέχουσα τελευταία λέξη της τεχνολογίας του Text2SQL δεν επιτρέπει μια εντελώς απρόσκοπτη ενσωμάτωση στα συστήματα παραγωγής — αντίθετα, είναι απαραίτητο να διαχειρίζονται ενεργά τις προσδοκίες και τη συμπεριφορά του χρήστη, ο οποίος πρέπει πάντα να γνωρίζει ότι αλληλεπιδρά με ένα σύστημα AI.

3.1 Διαχείριση αστοχιών

Το Text2SQL μπορεί να αποτύχει σε δύο λειτουργίες, οι οποίες πρέπει να συλληφθούν με διαφορετικούς τρόπους:

  • Σφάλματα SQL: το ερώτημα που δημιουργήθηκε δεν είναι έγκυρο — είτε η SQL δεν είναι έγκυρη είτε δεν μπορεί να εκτελεστεί στη συγκεκριμένη βάση δεδομένων λόγω λεξιλογικών ή σημασιολογικών ελαττωμάτων. Σε αυτήν την περίπτωση, κανένα αποτέλεσμα δεν μπορεί να επιστραφεί στον χρήστη.
  • Σημασιολογικά λάθη: το ερώτημα που δημιουργείται είναι έγκυρο, αλλά δεν αντικατοπτρίζει τη σημασιολογία της ερώτησης, οδηγώντας έτσι σε λάθος επιστρεφόμενο σύνολο δεδομένων.

Η δεύτερη λειτουργία είναι ιδιαίτερα δύσκολη, καθώς ο κίνδυνος "σιωπηλών αποτυχιών" - σφαλμάτων που δεν εντοπίζονται από τον χρήστη - είναι υψηλός. Ο πρωτότυπος χρήστης δεν θα έχει ούτε τον χρόνο ούτε την τεχνική ικανότητα να επαληθεύσει την ορθότητα του ερωτήματος ή/και των δεδομένων που προκύπτουν. Όταν τα δεδομένα χρησιμοποιούνται για τη λήψη αποφάσεων στον πραγματικό κόσμο, αυτό το είδος αποτυχίας μπορεί να έχει καταστροφικές συνέπειες. Για να αποφευχθεί αυτό, είναι σημαντικό να εκπαιδεύσετε τους χρήστες και να καθιερώσετε προστατευτικά κιγκλιδώματα σε επιχειρηματικό επίπεδο που περιορίζουν τον πιθανό αντίκτυπο, όπως πρόσθετοι έλεγχοι δεδομένων για αποφάσεις με υψηλότερο αντίκτυπο. Από την άλλη πλευρά, μπορούμε επίσης να χρησιμοποιήσουμε τη διεπαφή χρήστη για να διαχειριστούμε την αλληλεπίδραση ανθρώπου-μηχανής και να βοηθήσουμε τον χρήστη να εντοπίσει και να βελτιώσει προβληματικά αιτήματα.

3.2 Αλληλεπίδραση ανθρώπου-μηχανής

Οι χρήστες μπορούν να εμπλακούν με το σύστημά σας AI με διαφορετικούς βαθμούς έντασης. Περισσότερη αλληλεπίδραση ανά αίτημα μπορεί να οδηγήσει σε καλύτερα αποτελέσματα, αλλά επιβραδύνει επίσης τη ρευστότητα της εμπειρίας χρήστη. Εκτός από τον πιθανό αρνητικό αντίκτυπο των λανθασμένων ερωτημάτων και αποτελεσμάτων, σκεφτείτε επίσης πόσο κίνητρο θα έχουν οι χρήστες σας να παρέχουν σχόλια πίσω και πίσω προκειμένου να λάβετε πιο ακριβή αποτελέσματα και επίσης να συμβάλετε στη βελτίωση του προϊόντος μακροπρόθεσμα.

Ο ευκολότερος και λιγότερο ελκυστικός τρόπος είναι να εργάζεστε με βαθμολογίες εμπιστοσύνης. Ενώ ο αφελής υπολογισμός της εμπιστοσύνης ως μέσος όρος των πιθανοτήτων των παραγόμενων διακριτικών είναι υπερβολικά απλοϊκός, μπορούν να χρησιμοποιηθούν πιο προηγμένες μέθοδοι όπως η προφορική ανατροφοδότηση. [13] Η εμπιστοσύνη μπορεί να εμφανιστεί στη διεπαφή και να τονιστεί με μια ρητή ειδοποίηση σε περίπτωση που είναι επικίνδυνα χαμηλή. Με αυτόν τον τρόπο, η ευθύνη της κατάλληλης παρακολούθησης στον «πραγματικό κόσμο» — είτε πρόκειται για απόρριψη, αποδοχή ή πρόσθετο έλεγχο των δεδομένων — βαρύνει τους ώμους του χρήστη σας. Αν και αυτό είναι ένα ασφαλές στοίχημα για εσάς ως προμηθευτή, η μεταφορά αυτής της εργασίας στον χρήστη μπορεί επίσης να μειώσει την αξία του προϊόντος σας.

Μια δεύτερη δυνατότητα είναι να εμπλακεί ο χρήστης σε έναν διάλογο διευκρίνισης σε περίπτωση ερωτημάτων χαμηλής εμπιστοσύνης, διφορούμενων ή άλλως ύποπτων. Για παράδειγμα, το σύστημά σας μπορεί να προτείνει ορθογραφικές ή γραμματικές διορθώσεις στην είσοδο και να ζητήσει να αποσαφηνιστούν συγκεκριμένες λέξεις ή γραμματικές δομές. Μπορεί επίσης να επιτρέψει στον χρήστη να ζητήσει προληπτικά διορθώσεις στο ερώτημα:[14]

ΧΡΗΣΤΗΣ: Δείξε μου τα καθήκοντα του John σε αυτό το σπριντ.

ΒΟΗΘΟΣ: Θα θέλατε να δείτε τις εργασίες που δημιούργησε ο John ή αυτές που εργάζεται;

ΧΡΗΣΤΗΣ: εργασίες που δημιούργησε ο Γιάννης

ΒΟΗΘΟΣ: Εντάξει, ορίστε τα αναγνωριστικά εργασιών:

συνομιλίας AI για ανάλυση δεδομένων

ΧΡΗΣΤΗΣ: Ευχαριστώ, θα ήθελα επίσης να δω περισσότερες πληροφορίες σχετικά με τις εργασίες. Παρακαλώ, επίσης, ταξινομήστε με βάση το επείγον.

ΒΟΗΘΟΣ: Φυσικά, εδώ είναι οι εργασίες μαζί με σύντομες περιγραφές, ανάδοχοι και προθεσμίες, ταξινομημένες κατά προθεσμία.

συνομιλίας AI για ανάλυση δεδομένων

Τέλος, για να διευκολυνθεί η κατανόηση των ερωτημάτων από τον χρήστη, το σύστημά σας μπορεί επίσης να παρέχει μια ρητή αναδιατύπωση κειμένου του ερωτήματος και να ζητά από τον χρήστη είτε να το επιβεβαιώσει είτε να το διορθώσει.[15]

4. Μη λειτουργικές απαιτήσεις

Σε αυτήν την ενότητα, συζητάμε τις συγκεκριμένες μη λειτουργικές απαιτήσεις για το Text2SQL καθώς και τις ανταλλαγές μεταξύ τους. Θα εστιάσουμε στις έξι απαιτήσεις που φαίνονται πιο σημαντικές για την εργασία: ακρίβεια, επεκτασιμότητα, ταχύτητα, επεξήγηση, απόρρητο και προσαρμοστικότητα με την πάροδο του χρόνου.

4.1 Ακρίβεια

Για το Text2SQL, οι απαιτήσεις για την ακρίβεια είναι υψηλές. Πρώτον, το Text2SQL εφαρμόζεται συνήθως σε μια ρύθμιση συνομιλίας όπου οι προβλέψεις γίνονται μία προς μία. Έτσι, ο «Νόμος των μεγάλων αριθμών» που συνήθως βοηθά στην εξισορρόπηση του σφάλματος στις ομαδοποιημένες προβλέψεις, δεν βοηθά. Δεύτερον, η συντακτική και λεξιλογική εγκυρότητα είναι μια «σκληρή» συνθήκη: το μοντέλο πρέπει να δημιουργήσει ένα καλά διαμορφωμένο ερώτημα SQL, ενδεχομένως με πολύπλοκη σύνταξη και σημασιολογία, διαφορετικά το αίτημα δεν μπορεί να εκτελεστεί στη βάση δεδομένων. Και αν αυτό πάει καλά και το ερώτημα μπορεί να εκτελεστεί, μπορεί να εξακολουθεί να περιέχει σημασιολογικά σφάλματα και να οδηγεί σε λάθος επιστρεφόμενο σύνολο δεδομένων (βλ. ενότητα 3.1 Διαχείριση αποτυχίας).

4.2 Επεκτασιμότητα

Τα κύρια ζητήματα επεκτασιμότητας είναι εάν θέλετε να εφαρμόσετε το Text2SQL σε μία ή πολλές βάσεις δεδομένων — και στην τελευταία περίπτωση, εάν το σύνολο των βάσεων δεδομένων είναι γνωστό και κλειστό. Εάν ναι, θα περάσετε πιο εύκολα, καθώς μπορείτε να συμπεριλάβετε τις πληροφορίες σχετικά με αυτές τις βάσεις δεδομένων κατά τη διάρκεια της εκπαίδευσης. Ωστόσο, σε ένα σενάριο κλιμακούμενου προϊόντος - είτε πρόκειται για μια αυτόνομη εφαρμογή Text2SQL είτε για ενσωμάτωση σε ένα υπάρχον προϊόν δεδομένων - ο αλγόριθμός σας πρέπει να αντιμετωπίσει κάθε νέο σχήμα βάσης δεδομένων εν κινήσει. Αυτό το σενάριο δεν σας δίνει επίσης την ευκαιρία να μεταμορφώσετε τη δομή της βάσης δεδομένων για να την κάνετε πιο διαισθητική για εκμάθηση (σύνδεσμος!). Όλα αυτά οδηγούν σε μια μεγάλη αντιστάθμιση με την ακρίβεια, η οποία μπορεί επίσης να εξηγήσει γιατί οι τρέχοντες πάροχοι Text2SQL που προσφέρουν ad-hoc ερωτήματα σε νέες βάσεις δεδομένων δεν έχουν ακόμη επιτύχει σημαντική διείσδυση στην αγορά.

Ταχύτητα 4.3

Δεδομένου ότι τα αιτήματα Text2SQL συνήθως υποβάλλονται σε επεξεργασία online σε μια συνομιλία, η πτυχή της ταχύτητας είναι σημαντική για την ικανοποίηση του χρήστη. Από τη θετική πλευρά, οι χρήστες γνωρίζουν συχνά το γεγονός ότι τα αιτήματα δεδομένων μπορεί να διαρκέσουν συγκεκριμένο χρόνο και να δείξουν την απαιτούμενη υπομονή. Ωστόσο, αυτή η καλή θέληση μπορεί να υπονομευθεί από τη ρύθμιση συνομιλίας, όπου οι χρήστες υποσυνείδητα αναμένουν ταχύτητα συνομιλίας παρόμοια με τον άνθρωπο. Οι μέθοδοι βελτιστοποίησης ωμής δύναμης, όπως η μείωση του μεγέθους του μοντέλου, ενδέχεται να έχουν απαράδεκτο αντίκτυπο στην ακρίβεια, επομένως σκεφτείτε τη βελτιστοποίηση συμπερασμάτων για να ικανοποιήσετε αυτήν την προσδοκία.

4.4 Επεξηγησιμότητα και διαφάνεια

Στην ιδανική περίπτωση, ο χρήστης μπορεί να παρακολουθήσει πώς δημιουργήθηκε το ερώτημα από το κείμενο, να δει την αντιστοίχιση μεταξύ συγκεκριμένων λέξεων ή εκφράσεων στην ερώτηση και το ερώτημα SQL κ.λπ. Αυτό επιτρέπει την επαλήθευση του ερωτήματος και την πραγματοποίηση τυχόν προσαρμογών κατά την αλληλεπίδραση με το σύστημα . Επιπλέον, το σύστημα θα μπορούσε επίσης να παρέχει μια ρητή αναδιατύπωση κειμένου του ερωτήματος και να ζητά από τον χρήστη είτε να το επιβεβαιώσει είτε να το διορθώσει.

4.5 Απορρήτου

Η συνάρτηση Text2SQL μπορεί να απομονωθεί από την εκτέλεση ερωτήματος, έτσι ώστε οι επιστρεφόμενες πληροφορίες της βάσης δεδομένων να μπορούν να διατηρηθούν αόρατες. Ωστόσο, το κρίσιμο ερώτημα είναι πόσες πληροφορίες σχετικά με τη βάση δεδομένων περιλαμβάνονται στην προτροπή. Οι τρεις επιλογές (με τη μείωση του επιπέδου απορρήτου) είναι:

  • Δεν υπάρχουν πληροφορίες
  • Σχήμα βάσης δεδομένων
  • Περιεχόμενο βάσης δεδομένων

Το απόρρητο ανταλλάσσεται με ακρίβεια — όσο λιγότερο περιορισμένοι είστε στο να συμπεριλάβετε χρήσιμες πληροφορίες στην προτροπή, τόσο καλύτερα είναι τα αποτελέσματα.

4.6 Προσαρμοστικότητα στο χρόνο

Για να χρησιμοποιήσετε το Text2SQL με ανθεκτικό τρόπο, πρέπει να προσαρμοστείτε στη μετατόπιση δεδομένων, δηλαδή στην μεταβαλλόμενη κατανομή των δεδομένων στα οποία εφαρμόζεται το μοντέλο. Για παράδειγμα, ας υποθέσουμε ότι τα δεδομένα που χρησιμοποιούνται για την αρχική μικρορύθμιση αντικατοπτρίζουν την απλή συμπεριφορά ερωτημάτων των χρηστών όταν αρχίζουν να χρησιμοποιούν το σύστημα BI. Όσο περνάει ο καιρός, οι ανάγκες πληροφοριών των χρηστών γίνονται πιο εξελιγμένες και απαιτούν πιο σύνθετα ερωτήματα, τα οποία κατακλύζουν το αφελές μοντέλο σας. Επιπλέον, οι στόχοι ή η στρατηγική μιας εταιρείας αλλαγής μπορεί επίσης να παρασύρουν και να κατευθύνουν τις ανάγκες πληροφοριών προς άλλους τομείς της βάσης δεδομένων. Τέλος, μια πρόκληση ειδικά για το Text2SQL είναι η μετατόπιση της βάσης δεδομένων. Καθώς η βάση δεδομένων της εταιρείας επεκτείνεται, νέες, μη εμφανείς στήλες και πίνακες μπαίνουν στη γραμμή εντολών. Ενώ οι αλγόριθμοι Text2SQL που έχουν σχεδιαστεί για εφαρμογή πολλαπλών βάσεων δεδομένων μπορούν να χειριστούν καλά αυτό το ζήτημα, μπορεί να επηρεάσει σημαντικά την ακρίβεια ενός μοντέλου μιας βάσης δεδομένων. Όλα αυτά τα ζητήματα επιλύονται καλύτερα με ένα λεπτομερές σύνολο δεδομένων που αντικατοπτρίζει την τρέχουσα συμπεριφορά των χρηστών στον πραγματικό κόσμο. Επομένως, είναι ζωτικής σημασίας να καταγράφονται οι ερωτήσεις και τα αποτελέσματα των χρηστών, καθώς και κάθε σχετική ανατροφοδότηση που μπορεί να συλλεχθεί από τη χρήση. Επιπλέον, αλγόριθμοι σημασιολογικής ομαδοποίησης, για παράδειγμα με χρήση ενσωματώσεων ή μοντελοποίησης θεμάτων, μπορούν να εφαρμοστούν για τον εντοπισμό υποκείμενων μακροπρόθεσμων αλλαγών στη συμπεριφορά των χρηστών και τη χρήση τους ως πρόσθετη πηγή πληροφοριών για την τελειοποίηση του συνόλου δεδομένων σας.

Συμπέρασμα

Ας συνοψίσουμε τα βασικά σημεία του άρθρου:

  • Το Text2SQL επιτρέπει την εφαρμογή διαισθητικής και δημοκρατικής πρόσβασης δεδομένων σε μια επιχείρηση, μεγιστοποιώντας έτσι την αξία των διαθέσιμων δεδομένων.
  • Τα δεδομένα Text2SQL αποτελούνται από ερωτήσεις στην είσοδο και ερωτήματα SQL στην έξοδο. Η αντιστοίχιση μεταξύ ερωτήσεων και ερωτημάτων SQL είναι πολλά-προς-πολλά.
  • Είναι σημαντικό να παρέχετε πληροφορίες σχετικά με τη βάση δεδομένων ως μέρος της προτροπής. Επιπλέον, η δομή της βάσης δεδομένων μπορεί να βελτιστοποιηθεί για να διευκολύνει τον αλγόριθμο να την μάθει και να την κατανοήσει.
  • Όσον αφορά την εισαγωγή, η κύρια πρόκληση είναι η γλωσσική μεταβλητότητα των ερωτήσεων φυσικής γλώσσας, η οποία μπορεί να προσεγγιστεί χρησιμοποιώντας LLM που είχαν προεκπαιδευτεί σε μια μεγάλη ποικιλία διαφορετικών στυλ κειμένου
  • Η έξοδος του Text2SQL πρέπει να είναι ένα έγκυρο ερώτημα SQL. Αυτός ο περιορισμός μπορεί να ενσωματωθεί με την «ένεση» γνώσης SQL στον αλγόριθμο. Εναλλακτικά, χρησιμοποιώντας μια επαναληπτική προσέγγιση, το ερώτημα μπορεί να ελεγχθεί και να βελτιωθεί σε πολλαπλά βήματα.
  • Λόγω του δυνητικά μεγάλου αντίκτυπου των «σιωπηλών αστοχιών» που επιστρέφουν λανθασμένα δεδομένα για τη λήψη αποφάσεων, η διαχείριση αστοχιών αποτελεί πρωταρχικό μέλημα στη διεπαφή χρήστη.
  • Με έναν «επαυξημένο» τρόπο, οι χρήστες μπορούν να συμμετέχουν ενεργά στην επαναληπτική επικύρωση και βελτίωση των ερωτημάτων SQL. Αν και αυτό κάνει την εφαρμογή λιγότερο ρευστή, μειώνει επίσης τα ποσοστά αποτυχίας, επιτρέπει στους χρήστες να εξερευνούν δεδομένα με πιο ευέλικτο τρόπο και δημιουργεί πολύτιμα σήματα για περαιτέρω μάθηση.
  • Οι κύριες μη λειτουργικές απαιτήσεις που πρέπει να ληφθούν υπόψη είναι η ακρίβεια, η επεκτασιμότητα, η ταχύτητα, η επεξήγηση, το απόρρητο και η προσαρμοστικότητα με την πάροδο του χρόνου. Οι κύριες αντισταθμίσεις συνίστανται μεταξύ της ακρίβειας από τη μία πλευρά και της επεκτασιμότητας, της ταχύτητας και της ιδιωτικότητας από την άλλη.

αναφορές

[1] Κεν Βαν Χάρεν. 2023. Αντικατάσταση ενός αναλυτή SQL με 26 αναδρομικές προτροπές GPT

[2] Nitarshan Rajkumar et al. 2022. Αξιολόγηση των δυνατοτήτων μετατροπής κειμένου σε SQL των μεγάλων γλωσσικών μοντέλων

[3] Naihao Deng et al. 2023. Πρόσφατες εξελίξεις στο Text-to-SQL: Μια έρευνα για το τι έχουμε και τι περιμένουμε

[4] Mohammadreza Pourreza et al. 2023. DIN-SQL: Αποσυντεθειμένη εκμάθηση κειμένου σε SQL με αυτοδιόρθωση

[5] Victor Zhong et al. 2021. Γειωμένη προσαρμογή για εκτελέσιμη σημασιολογική ανάλυση μηδενικής λήψης

[6] Xi Victoria Lin et al. 2020. Γεφύρωση δεδομένων κειμένου και πινάκων για σημασιολογική ανάλυση κειμένου σε SQL μεταξύ τομέων

[7] Tong Guo et al. 2019. Βελτιωμένο περιεχόμενο Δημιουργία κειμένου σε SQL που βασίζεται σε BERT

[8] Torsten Scholak et al. 2021. PICARD: Αύξουσα ανάλυση για περιορισμένη αυτόματη παλινδρόμηση αποκωδικοποίησης από μοντέλα γλώσσας

[9] Jinyang Li et al. 2023. Graphix-T5: Mixing Pre-trained Transformers with Graph-Aware Layers for Text-to-SQL Parsing

[10] LangChain. 2023. LLM και SQL

[11] Tao Yu et al. 2018. Spider: A Large Scale Human-Labeled Dataset for Complex and Cross-Domain Semantic Parsing and Text-to-SQL Task

[12] Ruiqi Zhong et al. 2020. Semantic Evaluation for Text-to-SQL with Distilled Test Suites

[13] Katherine Tian et al. 2023. Just Ask for Calibration: Strategies for Eliciting Calibrated Confidence Scores από γλωσσικά μοντέλα προσαρμοσμένα με ανθρώπινα σχόλια

[14] Braden Hancock et al. 2019. Μαθαίνοντας από το Dialogue after Deployment: Feed Yourself, Chatbot!

[15] Ahmed Elgohary et al. 2020. Μιλήστε στον αναλυτή σας: Διαδραστικό κείμενο σε SQL με ανατροφοδότηση φυσικής γλώσσας

[16] Janna Lipenkova. 2022. Μίλησέ μου! Συνομιλίες Text2SQL με τα δεδομένα της εταιρείας σας, μιλήστε στο New York Natural Language Processing meetup.

Όλες οι εικόνες είναι του συγγραφέα.

Αυτό το άρθρο δημοσιεύθηκε αρχικά στις Προς την επιστήμη των δεδομένων και εκδόθηκε εκ νέου στο TOPBOTS με την άδεια του συντάκτη.

Σας αρέσει αυτό το άρθρο; Εγγραφείτε για περισσότερες ενημερώσεις έρευνας για την τεχνητή νοημοσύνη.

Θα σας ενημερώσουμε όταν κυκλοφορούμε περισσότερα συνοπτικά άρθρα όπως αυτό.

Σφραγίδα ώρας:

Περισσότερα από ΚΟΡΥΦΑΙΑ