ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ AI

Flash Προσοχή

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

2 λεπτά ανάγνωσηΤελευταία ενημέρωση

Επισκόπηση

It made long-context training and inference dramatically faster and cheaper.

Βαθιά κατάδυση

Η τυπική προσοχή υπολογίζει μια βαθμολογία για κάθε ζεύγος διακριτικών, παράγοντας έναν πίνακα N-by-N. Για μια ακολουθία 4.000 διακριτικών που είναι 16 εκατομμύρια βαθμολογίες και η μήτρα πρέπει να γραφτεί και να αναγνωσθεί από τη μνήμη υψηλού εύρους ζώνης (HBM) της GPU. Αυτή η κίνηση μνήμης, όχι τα μαθηματικά, είναι το πραγματικό σημείο συμφόρησης. Το FlashAttention, που εισήχθη από τον Tri Dao και τους συναδέλφους του το 2022, αναδομεί τον υπολογισμό έτσι ώστε ο πίνακας να μην υλοποιηθεί ποτέ πλήρως. Επεξεργάζεται την ακολουθία σε πλακίδια που ταιριάζουν στη μικροσκοπική, εξαιρετικά γρήγορη on-chip SRAM της GPU, υπολογίζοντας σταδιακά το softmax όσο πάει. Το αποτέλεσμα είναι μαθηματικά πανομοιότυπο με την τυπική προσοχή, αλλά χρησιμοποιεί πολύ λιγότερη μνήμη και εκτελείται αρκετές φορές πιο γρήγορα, επιτρέποντας πολύ μεγαλύτερα παράθυρα περιβάλλοντος.

Τεχνική διορατικότητα

Το κόλπο είναι το «online softmax» σε συνδυασμό με πλακάκια. Το FlashAttention φορτώνει μικρά μπλοκ ερωτημάτων, κλειδιών και τιμών στη SRAM, υπολογίζει εξόδους μερικής προσοχής και επανακλιμακώνει τα τρέχοντα αθροίσματα καθώς φτάνουν νέα μπλοκ, ώστε η κανονικοποίηση του softmax να παραμένει σωστή χωρίς να βλέπει όλες τις βαθμολογίες ταυτόχρονα. Επειδή δεν αποθηκεύει ποτέ τον πλήρη πίνακα N-by-N στο HBM, η μνήμη κλιμακώνεται γραμμικά παρά τετραγωνικά, και ο πυρήνας συγχωνεύεται σε μια ενιαία λειτουργία GPU για να ελαχιστοποιήσει την αργή ανάγνωση και εγγραφή στη μνήμη.

Στρατηγικός αντίκτυπος

Ταχύτητα και κλίμακα

Οι ροές εργασίας της γλώσσας μπορούν να κινηθούν πιο γρήγορα χωρίς να θυσιάζεται η συνέπεια.

Πρόσβαση και προσέγγιση χρηστών

Επεκτείνει την πρόσβαση σε όλες τις γλώσσες και τα στυλ επικοινωνίας.

Σαφέστερες αποφάσεις

Οι ομάδες μπορούν να αφιερώσουν περισσότερο χρόνο στην κρίση, ενώ ο αυτοματισμός χειρίζεται την επανάληψη.

Το μέλλον του FlashΠροσοχή

Το FlashAttention έχει γίνει ένα προεπιλεγμένο δομικό στοιχείο. Το FlashAttention-2 βελτίωσε τη διαμέριση εργασίας GPU και το FlashAttention-3 εκμεταλλεύεται νεότερες δυνατότητες υλικού Hopper, όπως ο ασύγχρονος και το FP8 χαμηλής ακρίβειας. Αναμένετε συνεχή συν-σχεδιασμό με τσιπ, βαθύτερη ενσωμάτωση σε διακομιστές συμπερασμάτων για μεγάλα έγγραφα και παραλλαγές που έχουν συντονιστεί για αραιή ή συρόμενη προσοχή. Καθώς τα παράθυρα περιβάλλοντος πιέζουν προς εκατομμύρια διακριτικά, πυρήνες με επίγνωση IO, όπως αυτός, παραμένουν απαραίτητοι για να διατηρηθεί το κόστος εκπαίδευσης και εξυπηρέτησης διαχειρίσιμο.

Υλοποίηση σε πραγματικό κόσμο

Εκπαίδευση μοντέλων μεγάλων γλωσσών όπως τα συστήματα Llama και GPT γρηγορότερα και με χαμηλότερο κόστος GPU

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

Επιτάχυνση αγωγών σύνοψης εγγράφων που επεξεργάζονται δεκάδες χιλιάδες διακριτικά ταυτόχρονα

Η τροφοδοσία όρασης και πολυτροπικών μετασχηματιστών όπου οι μεγάλες ακολουθίες μπαλωμάτων εικόνας κάνουν την προσοχή ακριβή

Κίνδυνοι & προστατευτικά κιγκλιδώματα

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

Η άμεση ευαισθησία μπορεί να δημιουργήσει ασυνεπή αποτελέσματα σε παρόμοια αιτήματα.

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

Οδικός Χάρτης Εφαρμογής

1

Καθορίστε τη μορφή εξόδου, τον τόνο και τα πρότυπα ποιότητας πριν από την κυκλοφορία.

2

Επίγειες απαντήσεις με αξιόπιστες πηγές όποτε έχει σημασία η ακρίβεια.

3

Διατηρήστε ένα σημείο ελέγχου ανθρώπινης αξιολόγησης για αποτελέσματα υψηλού πονταρίσματος.

4

Παρακολουθήστε τα μοτίβα αποτυχίας και επανεκπαιδεύστε τις προτροπές ή τις ροές εργασίας τακτικά.

Συνεχίστε την εξερεύνηση

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the FlashAttention quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Έναρξη κουίζ

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Επόμενος οδηγός

Ενσωματώσεις περιστροφικής θέσης

Συχνές ερωτήσεις

What is FlashAttention?

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

Ποιοι είναι οι κύριοι στόχοι FlashAttention με προβλήματα συμφόρησης στην τυπική προσοχή;

Η τυπική προσοχή είναι περιορισμένη στη μνήμη: η μεταφορά της τεράστιας μήτρας N-by-N προς και από τη μνήμη υψηλού εύρους ζώνης κυριαρχεί στον χρόνο, όχι στην ίδια την αριθμητική.

Πώς συγκρίνεται η έξοδος του FlashAttention με την τυπική προσοχή;

Το FlashAttention υπολογίζει τις ίδιες ακριβώς τιμές προσοχής. απλώς αναδιοργανώνει τον υπολογισμό για να αποφύγει την υλοποίηση του πλήρους πίνακα.

Ποια μνήμη GPU εκμεταλλεύεται το FlashAttention επεξεργάζοντας δεδομένα σε πλακίδια;

Το FlashAttention φορτώνει μικρά πλακίδια στη γρήγορη SRAM on-chip της GPU, διατηρώντας τη βαριά εργασία κοντά στις υπολογιστικές μονάδες.

Ποια τεχνική επιτρέπει στο FlashAttention να υπολογίσει το softmax χωρίς να βλέπει όλες τις βαθμολογίες ταυτόχρονα;

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

Τι εκμεταλλεύτηκε συγκεκριμένα το FlashAttention-3;

Το FlashAttention-3 σχεδιάστηκε από κοινού με τις σύγχρονες GPU Hopper, χρησιμοποιώντας ασύγχρονη εκτέλεση και χαμηλής ακρίβειας FP8 για περαιτέρω επιτάχυνση.