Μονάδα 8 / 11

Αξιολόγηση και παρακολούθηση RAG

Κέρδη:

  • Καθορισμός μετρήσεων που μετρούν χωριστά τη διατήρηση και την ποιότητα παραγωγής
  • Ρυθμίστε ένα σετ χρυσών ερωτήσεων και εκτελέστε αυτόματη αξιολόγηση με το LLM-as-judge
  • Διατήρηση της ποιότητας μέσω ανατροφοδότησης, παρακολούθησης και δοκιμών παλινδρόμησης στην παραγωγή

Η πρόταση "εγκατέστησα τον βοηθό, φαίνεται να λειτουργεί καλά" δεν είναι μια δήλωση μηχανικής. Τα συστήματα RAG καταρρέουν σιωπηλά: ένας νέος τύπος εγγράφου ξεγελάει την ανάκτηση, μια άμεση αλλαγή μειώνει την ακρίβεια, το ευρετήριο γίνεται μπαγιάτικο. Ο μόνος τρόπος για να το συνειδητοποιήσουμε αυτό είναι να μετρήσουμε. Σε αυτή την ενότητα, καλύπτουμε τον τρόπο μέτρησης της ποιότητας RAG (ανάκτηση και παραγωγή χωριστά), την αυτόματη αξιολόγηση (LLM-as-judge) και τη διατήρηση της ποιότητας στην παραγωγή (παρακολούθηση, παλινδρόμηση). «Δεν μπορείς να βελτιώσεις όσα δεν μετράς» είναι το σύνθημα αυτής της ενότητας.

Μετρήστε δύο ξεχωριστά πράγματα

Το RAG έχει δύο σκέλη και πρέπει να μετρηθεί ξεχωριστά γιατί το πρόβλημα μπορεί να βρίσκεται σε κάποιο από αυτά:

  1. Ποιότητα ανάκτησης: Έφτασε το σωστό εξάρτημα;
  2. Ποιότητα γενιάς: Προέκυψε η σωστή απάντηση από το εισερχόμενο κομμάτι;

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

Μετρήσεις ανάκτησης

Η ανάκτηση είναι πρόβλημα ταξινόμησης/πρόσβασης. μετράται με κλασικές μετρήσεις ανάκτησης πληροφοριών. Για αυτό πρέπει να έχετε το χρυσό σύμπλεγμα: η γνώση του ποιο κομμάτι είναι «σωστό» για κάθε ερώτηση.

μετρική

Ποια μέτρα

Απλός ορισμός

Ανάκληση@κ

Είναι το σωστό κομμάτι στην κορυφή k;

Σωστός ρυθμός λήψης εξαρτημάτων

precision@k

Πόσα από τα k κομμάτια που επιστράφηκαν είναι σχετικά;

Καθαρισμός όσων φέρονται

MRR (Μέση αμοιβαία κατάταξη)

Με ποια σειρά είναι το σωστό κομμάτι;

Οι ανταμοιβές βρίσκονται στις κορυφαίες τάξεις

Ποσοστό επιτυχίας

Έφτασε τουλάχιστον ένα σωστό κομμάτι;

Το βασικότερο μέτρο επιτυχίας

Πρακτικό σχόλιο: Εάν το Recall@k είναι χαμηλό, η στρατηγική τμηματοποίησης ή αναζήτησης (υβριδική, k, ανακατάταξη) θα πρέπει να επεξεργαστεί εκ νέου. Εάν η ακρίβεια είναι χαμηλή αλλά η ανάκληση είναι υψηλή, η προσθήκη εκ νέου κατάταξης είναι μια καλή κίνηση.

Μετρήσεις Γενιάς

Όταν φτάσει το σωστό εξάρτημα, μετράμε την ποιότητα της απόκρισης που παράγεται από το μοντέλο. Τρεις βασικές διαστάσεις:

  • Πιστότητα: Κάθε ισχυρισμός στην απάντηση υποστηρίζεται από το πλαίσιο; Υπάρχει κάποια προσαρμογή; Είναι ένα άμεσο μέτρο παραισθήσεων.
  • Συνάφεια της απάντησης: Η απάντηση απαντά πραγματικά στην ερώτηση ή είναι εκτός θέματος;
  • Πληρότητα: Έχουν χρησιμοποιηθεί όλες οι σχετικές πληροφορίες στο πλαίσιο ή λείπουν;

Αυτά βαθμολογούνται συχνά σε βαθμολογημένη βάση (π.χ. 1-5), αντί για δυαδική μορφή όπως "αληθές/λάθος".

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

Καθιερώνοντας ένα σετ χρυσών ερωτήσεων

Κάθε μέτρηση απαιτεί ένα χρυσό σύνολο / σύνολο δεδομένων αξιολόγησης: ρεαλιστικές ερωτήσεις + αναμενόμενες σωστές απαντήσεις + σωστά κομμάτια πηγής. Το να ξεκινήσετε με 30-50 σωστά επιλεγμένες ερωτήσεις είναι καλύτερο από 500 τυχαίες ερωτήσεις. Συμπεριλάβετε τα ακόλουθα στο σετ: συχνές πραγματικές ερωτήσεις, γνωστές δύσκολες ερωτήσεις, παγιδευμένες ερωτήσεις χωρίς απαντήσεις (θα πρέπει να πει κανείς "δεν ξέρω"), ερωτήσεις με αντιφατικές πηγές.

# Παράδειγμα χρυσού συμπλέγματος (εννοιολογικό)[ {"ερώτηση": "Πόσες ημέρες ετήσιας άδειας;", "αναμενόμενη_απάντηση": "14 ημέρες για 1-5 χρόνια αρχαιότητας", "correct_part_id": "two-part-3", "category": "leave"}, {"question": "'"sexpressed the company?" "NO_INFORMATION", # trap: Δεν ξέρω "correct_part_id": null, "category": "trap"}]

LLM-as-Judge: Αυτόματη Αξιολόγηση

Το να σκοράρεις εκατοντάδες απαντήσεις με το χέρι είναι κουραστικό. Το μοντέλο LLM-as-judge είναι όταν ένα μοντέλο βαθμολογεί και αιτιολογεί την απάντηση ενός άλλου μοντέλου με βάση ορισμένα κριτήρια. Ένας καλός δικαστής ορίζει με σαφήνεια τα κριτήρια, δίνει παραδείγματα και ζητά αιτιολόγηση.

# Προτροπή LLM-as-judge (εννοιολογική) Είστε αμερόληπτος αξιολογητής. Αξιολογήστε την παρακάτω ΑΠΑΝΤΗΣΗ σύμφωνα με το δεδομένο ΠΛΑΙΣΙΟ και την ΑΝΑΜΕΝΟΜΕΝΗ ΑΠΑΝΤΗΣΗ. Βαθμολογήστε (1-5) και αιτιολογήστε:- πιστότητα: υποστηρίζεται κάθε ισχυρισμός στην απάντηση στο πλαίσιο;- ακρίβεια: ταιριάζει η απάντηση με την αναμενόμενη απάντηση;- πληρότητα: είναι πλήρεις οι σχετικές πληροφορίες; Ειδικότερα: εάν η απάντηση περιέχει πληροφορίες που δεν περιλαμβάνονται στα συμφραζόμενα, δώστε πιστότητα1 και υποδείξτε ποιος ισχυρισμός είναι κατασκευασμένος. CONTEXT: {context}EXPECTED: {expected}ΑΠΑΝΤΗΣΗ: {answer}Έξοδος: {πιστότητα, ακρίβεια, πληρότητα, αιτιολόγηση}

Προσοχή: Το LLM-as-judge δεν είναι τέλειο. Μπορεί να έχουν τις δικές τους προκαταλήψεις (μακροσκελής απάντηση, προτιμώντας το δικό τους στυλ). Επίσης, επαληθεύστε τον κριτή: έχετε μερικές απαντήσεις βαθμολογημένες τόσο από τον κριτή όσο και από τον άνθρωπο και μετρήστε τη συμφωνία μεταξύ τους. Εάν ο Judge είναι συνεπής με τις ανθρώπινες βαθμολογίες, μπορείτε να τον εμπιστευτείτε.

Αδύναμη/Ισχυρή βαθμολογία

Αδύναμος ("ήταν καλό για μένα"):

Έκανα μερικές ερωτήσεις και οι απαντήσεις μου φάνηκαν καλές. Το έχω ζωντανό.# Πρόβλημα: χωρίς μετρήσεις, ανεπαίσθητη παλινδρόμηση, τυφλή βελτίωση.

Ισχυρό (χρυσό σύμπλεγμα + διακριτές μετρήσεις + αυτόματη κρίση + παλινδρόμηση):

Χρυσό σύμπλεγμα 40 ερωτήσεων. Με κάθε αλλαγή, το recall@5, η πιστότητα και η ακρίβεια μετρώνται αυτόματα. Εάν η βαθμολογία πέσει, η αλλαγή επαναφέρεται. Κατά την παραγωγή, τα σχόλια των χρηστών συλλέγονται και προστίθενται στο σύνολο.

Παρακολούθηση και Παλινδρόμηση στην Παραγωγή

Η αξιολόγηση δεν γίνεται μια φορά και τελειώνει. Τρεις σταθερές πρακτικές:

  • Δοκιμή παλινδρόμησης: Αυτόματη εκτέλεση χρυσού συμπλέγματος σε κάθε αλλαγή προτροπής/ανάκτησης/μοντέλου. Εάν η βαθμολογία μειωθεί, η αλλαγή αντιστρέφεται. Αυτό αποτρέπει το «σπάσιμο του ενώ προσπαθείτε να το βελτιώσετε».
  • Παρακολούθηση παραγωγής: Το ποσοστό "Δεν μπόρεσα να βρω πληροφορίες" σε πραγματικές ερωτήσεις, παρακολουθείται η μέση καθυστέρηση, το κόστος, τα σχόλια των χρηστών (👍/👎). Μια ξαφνική αύξηση στο «Δεν ξέρω» είναι συχνά το πρώτο σημάδι μιας δυσλειτουργίας του δείκτη ή της ανάκτησης.
  • Βρόχος σχολίων: Οι πραγματικές ερωτήσεις που παρέχονται από τον χρήστη 👎 εξετάζονται και προστίθενται στον χρυσό σωρό. Έτσι, το σετ γίνεται πλουσιότερο με την πάροδο του χρόνου και τα τυφλά σημεία του συστήματος κλείνουν.

Τρεις Μίνι Θήκες

Περίπτωση 1 — Σιωπηλή παλινδρόμηση. Μια ομάδα τροποποίησε την προτροπή για να τη "βελτιώσει". Η γενική ακρίβεια αυξήθηκε, αλλά η πιστότητα μειώθηκε κατά 30% στις ερωτήσεις παγίδας (το μοντέλο άρχισε να ταιριάζει περισσότερο). Δεν θα είχε γίνει αντιληπτό αν δεν υπήρχαν οι ερωτήσεις παγίδας στο χρυσό σύμπλεγμα. Η δοκιμή παλινδρόμησης επανέφερε την αλλαγή.

Περίπτωση 2 — Ισιώστε το λάθος πόδι. Σε έναν βοηθό οι απαντήσεις ήταν κακές. Η ομάδα εργάστηκε με την προτροπή για εβδομάδες. Όταν μετρήσαμε τις μετρήσεις ανάκτησης, η ανάκληση@5 ήταν μόνο 48% — το πρόβλημα ήταν στην ανάκτηση, όχι στη δημιουργία. Όταν προστέθηκε υβριδική + ανακατάταξη, η ανάκληση αυξήθηκε στο 89% και η ακρίβεια αυξήθηκε επίσης.

Περίπτωση 3 — Ειδοποίηση παραγωγής. Μια μέρα, το ποσοστό "Δεν μπορούσα να βρω πληροφορίες" για έναν βοηθό υποστήριξης εκτινάχθηκε από 6% σε 34%. Το trackpad προειδοποίησε. Ο λόγος ήταν ότι η εργασία ευρετηρίασης, η οποία εκτελείται τη νύχτα, απέτυχε σιωπηλά και δεν ανέβηκαν νέα άρθρα. Χωρίς παρακολούθηση, οι λανθασμένες δηλώσεις «δεν ξέρω» θα είχαν συνεχιστεί για μέρες.

Συνήθη λάθη

  • Το να είμαι ικανοποιημένος με το «δούλεψε καλά για μένα»: Χωρίς μέτρηση, η παλινδρόμηση περνά απαρατήρητη.
  • Χωρίς διαχωρισμό ανάκτησης και παραγωγής: Θα διορθώσετε το λάθος πόδι και θα χάσετε χρόνο.
  • Δεν κάνουμε ερωτήσεις παγίδας: Η τάση να φτιάχνουμε πράγματα δεν εμφανίζεται στο χρυσό σύμπλεγμα.
  • Μη επαληθεύσιμος δικαστής: Μια προκατειλημμένη κριτική επιτροπή δίνει ψεύτικη εμπιστοσύνη.
  • Μη παρακολούθηση της παραγωγής: Αστοχία του δείκτη, η έκρηξη κόστους συνεχίζεται σιωπηλά.

Συνοπτικά

  • Στο RAG, η ποιότητα ανάκτησης και παραγωγής μετρώνται χωριστά. Πρέπει πρώτα να καθοριστεί ποιο πόδι έχει καταστραφεί.
  • recall@k, precision@k, MRR για ανάκτηση. Η πιστότητα, η καταλληλότητα, η πληρότητα χρησιμοποιούνται για τη δημιουργία.
  • Κάθε μέτρηση απαιτεί ένα σύμπλεγμα χρυσού. Βάλτε ερωτήματα αληθινά, δύσκολα, παγιδευμένα και αντιφατικά.
  • LLM-as-judge μεγάλα σετ αυτόματα σκορ. αλλά ο ίδιος ο δικαστής πρέπει να δικαιωθεί εναντίον του ανθρώπου.
  • Η δοκιμή παλινδρόμησης, η παρακολούθηση της παραγωγής και ο βρόχος ανάδρασης διατηρούν την ποιότητα με την πάροδο του χρόνου.

Εργασία εφαρμογής

(1) Δημιουργήστε ένα χρυσό σύνολο τουλάχιστον 15 ερωτήσεων για τον δικό σας βοηθό: συμπεριλάβετε τουλάχιστον 3 παγίδες (χωρίς απαντήσεις), 3 δύσκολες, 2 αντιφατικές ερωτήσεις πηγής. Γράψτε την αναμενόμενη απάντηση και το σωστό μέρος για κάθε ερώτηση. (2) Συγκρίνετε χειροκίνητα δύο διαφορετικές εκδόσεις προτροπής με αυτό το σύνολο. Δώστε σε κάθε απάντηση 1-5 βαθμούς για πιστότητα και ακρίβεια. (3) Προσαρμόστε την προτροπή LLM-as-judge παραπάνω στα δικά σας κριτήρια. (4) Προσδιορίστε 3 μετρήσεις που θα παρακολουθείτε στην παραγωγή και για καθεμία ρωτήστε "σε ποιο όριο ξυπνάω;" γράψτε την τιμή.

λίστα ελέγχου

  • [ ] Μπορώ να μετρήσω την ποιότητα διατήρησης και παραγωγής με ξεχωριστές μετρήσεις.
  • [ ] Ξέρω τι σημαίνουν μετρήσεις όπως recall@k, πιστότητα.
  • [ ] Μπορώ να δημιουργήσω ένα χρυσό σύμπλεγμα που περιλαμβάνει πραγματικές, δύσκολες, παγίδες και αντιφατικές ερωτήσεις.
  • [ ] Μπορώ να ρυθμίσω την αυτόματη αξιολόγηση και να επαληθεύσω τον κριτή με το LLM-as-judge.
  • [ ] Μπορώ να λειτουργήσω δοκιμές παλινδρόμησης, παρακολούθηση παραγωγής και βρόχο ανάδρασης.