Μονάδα 6 / 11

Βελτιστοποίηση κόστους: Προσωρινή αποθήκευση

Κέρδη:

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

Ένα προϊόν LLM φαίνεται φθηνό σε πρωτότυπο. Όταν ανεβείτε στην κλίμακα, ο λογαριασμός εκπλήσσει. Στους περισσότερους φόρτους εργασίας, το μεγαλύτερο μέρος του λογαριασμού προέρχεται από το ίδιο σταθερό πλαίσιο που αποστέλλεται ξανά και ξανά με κάθε αίτημα: μια μεγάλη προτροπή συστήματος, ένα βιβλίο κανόνων, τεκμηρίωση αναφοράς. Η άμεση προσωρινή αποθήκευση εξαλείφει ακριβώς αυτή τη σπατάλη. Σε αυτή την ενότητα, θα μάθετε πώς λειτουργεί η κρυφή μνήμη, πώς να τακτοποιείτε την προτροπή για να χτυπήσετε και πώς να υπολογίσετε το νεκρό σημείο της οικονομίας της κρυφής μνήμης. Όταν εγκατασταθεί σωστά, από μόνο του μπορεί να μειώσει το λογαριασμό σας στο μισό ή και χαμηλότερα.

Πώς λειτουργεί η προσωρινή μνήμη; Ο ένας αμετάβλητος κανόνας

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

Ένας αμετάβλητος κανόνας προκύπτει από αυτό: Εάν ένα μεμονωμένο byte αλλάξει οπουδήποτε στο πρόθεμα, ολόκληρη η κρυφή μνήμη καθίσταται άκυρη από αυτό το σημείο και μετά. Δηλαδή, το σταθερό περιεχόμενο θα πρέπει να βρίσκεται στην αρχή και το μεταβλητό περιεχόμενο θα πρέπει να είναι στο τέλος. Εάν βάλετε μια γραμμή στην αρχή της προτροπής συστήματος που αλλάζει με κάθε αίτημα, όπως "Σημερινή ημερομηνία: 18.07.2026", όλα πίσω από αυτήν δεν θα μπορούν να εισέλθουν στην προσωρινή μνήμη.

Η σειρά επεξεργασίας είναι συνήθως: εργαλεία → προτροπή συστήματος → μηνύματα. Βάζεις το σημείο κρυφής μνήμης (σημείο διακοπής) στο τέλος του σταθερού τμήματος.

Οικονομία κρυφής μνήμης

Η προσωρινή μνήμη έχει τρία επίπεδα τιμών:

  • Εγγραφή προσωρινής μνήμης: Αποθήκευση για πρώτη φορά. ~1,25x κανονική τιμή εισόδου (για αποθήκευση 5 λεπτών).
  • Ανάγνωση προσωρινής μνήμης: Ανάγνωση σε επόμενα αιτήματα. ~0,1 φορές την κανονική τιμή εισροής — δηλαδή το ένα δέκατο.
  • Κανονική είσοδος: Το τμήμα που δεν εισέρχεται στην κρυφή μνήμη και υποβάλλεται σε επεξεργασία με πλήρες κόστος κάθε φορά.

Σημείο εξισορρόπησης: Το πρώτο αίτημα πληρώνει premium εγγραφής (1,25×). Από το δεύτερο αίτημα μπαίνει στο παιχνίδι η ανάγνωση (0,1×). Χονδρικά, θα είστε στο λαιμό και στο λαιμό σε δύο αιτήματα. Μετά από αυτό, είναι καθαρή αποταμίευση. Όσο μεγαλύτερο είναι το σταθερό πλαίσιο και όσο περισσότερα αιτήματα επαναχρησιμοποιούνται, τόσο μεγαλύτερο γίνεται το κέρδος.

Σενάριο

Λειτουργεί η προσωρινή μνήμη;

Μεγάλη προτροπή σταθερού συστήματος, χιλιάδες αιτήματα

Ναι — τα υψηλότερα κέρδη

Πολλές ερωτήσεις για τα ίδια έγγραφα αναφοράς

Ναι

Εντελώς διαφορετικό σύντομο κείμενο για κάθε αίτημα

Όχι — το μπόνους εγγραφής είναι χαμένο

Εφάπαξ αίτημα

Όχι — καθόλου διάβασμα

Η ημερομηνία/αναγνωριστικό αλλάζει με κάθε αίτημα στην προτροπή του συστήματος

Όχι — το πρόθεμα είναι σπασμένο, το χτύπημα είναι μηδέν

Βήμα προς βήμα: Πώς να ρυθμίσετε μια προτροπή επίσκεψης;

  1. Ξεχωριστή σταθερά και μεταβλητή. Ποιο περιεχόμενο δεν αλλάζει ποτέ (προτροπή συστήματος, βιβλίο κανόνων, τεκμηρίωση); Τι αλλάζει με κάθε αίτημα (ερώτηση χρήστη, ημερομηνία, αναγνωριστικό);
  2. Βάλτε τη σταθερά στην αρχή. Κατά την επεξεργασία, το τμήμα που έρχεται πρώτο (εργαλεία, σύστημα) πρέπει να είναι σταθερό.
  3. Βάλτε τη μεταβλητή στο τέλος. Η τρέχουσα ερώτηση του χρήστη, τελευταία.
  4. Τοποθετήστε την πινακίδα στο τέλος του περιγράμματος. Τοποθετήστε το σημείο κρυφής μνήμης στο τελευταίο μπλοκ του σταθερού τμήματος.
  5. Επαλήθευση επίσκεψης. Ελέγξτε εάν τα cache_read_input_tokens είναι μεγαλύτερα από το μηδέν στο πεδίο χρήσης στην απόκριση. Εάν είναι μηδέν, υπάρχει ένας κρυφός διακόπτης στο πρόθεμα.

{ "system": [ { "type": "text", "text": "{{large_constant_system_promptu_and_rules}}", "cache_control": { "type": "ephemeral" } } ], "messages": [ {"role": "user", "content}_currency"{user}]

Συμβουλή: Μην μαντεύετε επιτυχίες κρυφής μνήμης, μετρήστε τις. Εάν το usage.cache_read_input_tokens εξακολουθεί να είναι μηδέν σε διαδοχικά αιτήματα, εκτελείται ένας αθόρυβος διακόπτης (datetime.now() στη γραμμή εντολών συστήματος, μη ταξινομημένο JSON, λίστα εργαλείων που αλλάζουν με κάθε αίτημα). Συγκρίνετε την προτροπή των δύο αιτημάτων byte-byte και βρείτε τη διαφορά.

Silent Disruptors

Τυπικά μοτίβα που καταστρέφουν εν αγνοία την κρυφή μνήμη:

# BREAKER: ενσωμάτωση πληροφοριών στο σύστημα που αλλάζει με κάθε αίτημα "Σημερινή ημερομηνία: {{τώρα}}. Είστε βοηθός..." ← αλλάζει το πρόθεμα με κάθε αίτημα, το χτύπημα είναι μηδέν# TRUE: μετακινήστε τη μεταβλητή στο σύστημα μηνυμάτων: "Είστε βοηθός..." ← η σταθερά εισάγει τα cachemessages: {roow user: {roow user: Ερώτηση: ..."}] ← μεταβλητή στο τέλος

Άλλοι διακόπτες: Το JSON ταξινομείται διαφορετικά σε κάθε αίτημα (διατήρηση των κλειδιών σε σταθερή σειρά), λίστα εργαλείων που διαφέρει ανάλογα με το χρήστη (τα εργαλεία επεξεργάζονται πρώτα. τίποτα δεν μπαίνει στη μνήμη cache εάν αλλάξουν), αλλαγή του μοντέλου κατά τη διάρκεια της συνομιλίας (οι κρυφές μνήμες είναι συγκεκριμένες για το μοντέλο).

Αδύναμη προτροπή / Ισχυρή προτροπή (δομή φιλική στην προσωρινή μνήμη)

# Ασθενές σύστημα (καταστροφής προσωρινής μνήμης) σύστημα: "Ημερομηνία: 18.07.2026 14:32. Χρήστης: Ahmet (id 8842). Είστε bot υποστήριξης. Κανόνες: ...(2000 tokens)..."

# ΔΥΝΑΤΟ (Σύστημα φιλικό προς την προσωρινή μνήμη): "Είστε ένα ρομπότ υποστήριξης. Κανόνες: ...(2000 tokens, never change)..." [σημάδι κρυφής μνήμης] μηνύματα: [ { ρόλος: χρήστης, περιεχόμενο: "Ημερομηνία: 18.07.2026 14:32. Αναγνωριστικό χρήστη: 8842. Ερώτηση: πώς μπορώ να επιστρέψω τα χρήματα μου;" }]

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

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

Περίπτωση 1 — Αποθήκευση του βιβλίου κανόνων. Ένας λογιστικός αυτοματισμός προσέθετε το βιβλίο κανόνων των 12.000 token σε κάθε τιμολόγιο. 5.000 αιτήματα την ημέρα. Η είσοδος χωρίς προσωρινή μνήμη κοστίζει ~ 180 $ ανά ημέρα. Διατήρησαν σταθερό το βιβλίο κανόνων και το αποθήκευσαν στην κρυφή μνήμη: τα πρώτα αιτήματα πλήρωναν ένα premium εγγραφής, οι επόμενες αναγνώσεις 0,1×. Το κόστος εισαγωγής μειώθηκε ~90% σε ~18$ ανά ημέρα.

Περίπτωση 2 — Κόστος γραμμής κρυφής ημερομηνίας. Μια ομάδα δημιούργησε μια κρυφή μνήμη αλλά δεν έλαβε καμία επιτυχία. Τα cache_read_input_tokens ήταν πάντα μηδέν. Αιτία: Υπήρχε datetime.now() στην πρώτη γραμμή της προτροπής συστήματος, το πρόθεμα άλλαζε με κάθε αίτημα. Όταν μετακινήσαμε την ημερομηνία στο μήνυμα χρήστη, το ποσοστό επισκέψεων αυξήθηκε ξαφνικά από 0% σε 94%.

Περίπτωση 3 — Μη τοποθετημένη κρυφή μνήμη. Μια εφαρμογή αναζήτησης έστελνε εντελώς διαφορετικά σύντομα ερωτήματα με κάθε αίτημα. Πρόσθεσαν ανυπόμονα ένα σημάδι κρυφής μνήμης. Χωρίς κοινό πρόθεμα, κάθε αίτημα πλήρωνε μόνο ένα premium εγγραφής, χωρίς ανάγνωση — αυξάνοντας το κόστος. Αφαίρεσαν την ταμπέλα. Μάθημα: η προσωρινή μνήμη πληρώνει μόνο εάν υπάρχει ένα μεγάλο και σταθερό πρόθεμα που χρησιμοποιείται ξανά.

Συνήθη λάθη

  • Μίξη σταθεράς και μεταβλητής: Όταν το περιεχόμενο της μεταβλητής είναι στο πρόθεμα, η επίσκεψη επαναφέρεται.
  • Ενσωμάτωση ημερομηνίας/αναγνωριστικού στο μήνυμα συστήματος: Ο πιο συνηθισμένος αθόρυβος διακόπτης.
  • Μη μέτρηση της επιτυχίας: Εάν δεν ελεγχθεί η cache_read_input_tokens, δεν θα γίνει αντιληπτή η σπατάλη.
  • Προσθήκη προσωρινής μνήμης όταν δεν υπάρχει δημόσιο πρόθεμα: Πληρώνετε μόνο το premium εγγραφής, το κόστος αυξάνεται.
  • Αλλαγή λίστας οχημάτων ή μοντέλου: Το πρόθεμα είναι σπασμένο από την αρχή. όλα ξαναγράφονται.
  • Ξεχάστε το ελάχιστο μέγεθος της κρυφής μνήμης: Οι πολύ μικρές κρυφές μνήμες (κάτω από ~1–4 χιλιάδες διακριτικά ανάλογα με το μοντέλο) δεν θα εισέλθουν σιωπηλά στην κρυφή μνήμη.

Βαθύτερο: Σχεδιασμός προσωρινής μνήμης κατά τύπο φόρτου εργασίας

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

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

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

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

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

Συνοπτικά

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

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

Επιλέξτε φόρτο εργασίας. (1) Διαχωρίστε το περιεχόμενο σε δύο στήλες: "ποτέ δεν αλλάζει" και "αλλάζει με κάθε αίτημα". (2) Σχεδιάστε ξανά τη δομή προτροπής, βάζοντας το σταθερό μέρος στην αρχή και το μεταβλητό μέρος στο τέλος. (3) Υπολογίστε το μέγεθος διακριτικού του σταθερού τμήματος και συγκρίνετε το μηνιαίο κόστος με/χωρίς κρυφή μνήμη. (4) Σημειώστε από ποιο πεδίο (cache_read_input_tokens) θα επαληθεύσετε την επίσκεψη.

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

  • [ ] Μπορώ να εξηγήσω ότι η κρυφή μνήμη είναι η αντιστοίχιση προθέματος και ο μόνος αμετάβλητος κανόνας.
  • [ ] Μπορώ να αυξήσω την ακρίβεια βάζοντας το σταθερό περιεχόμενο στην αρχή και τη μεταβλητή στο τέλος.
  • [ ] Γνωρίζω οικονομικά στοιχεία γραφής/διαβάζω και το νεκρό σημείο δύο αιτημάτων.
  • [ ] Μπορώ να αναγνωρίσω αθόρυβους διακόπτες (ημερομηνία, μη διατεταγμένο JSON, αλλαγή λίστας οχημάτων).
  • [ ] Μπορώ να επαληθεύσω την επιτυχία με το usage.cache_read_input_tokens.