Uzun Ön Ekleri Önbelleğe Alma
İstem önbelleğe almayla maliyet denetimi.
Uzun Ön Ekleri Önbelleğe Alma, CoddyKit'te ücretsiz bir AI Prompt Engineering dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Prompt Engineering öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Prompt Engineering kursu toplamda 4 dersten oluşur.
Önek Önbellekleme Neden Var
Her uzun istem, üretimden önce belirteçlerini kodlamak için ön doldurma maliyetine katlanır. Aynı uzun önek birçok çağrıda tekrarlandığında — bir sistem istemi, bir araç belirtimi veya büyük bir başvuru belgesi gibi — istem önbelleklemesi, sağlayıcının yeniden hesaplama yapmak yerine önceden hesaplanmış dikkat durumunu yeniden kullanmasını sağlar.
- Önbellek isabetleri gecikmeyi ve girdi maliyetini büyük ölçüde azaltır.
- Tasarruf, önek boyutu ve yeniden kullanım sıklığıyla artar.
Önbellekleme Öneğe Bağlıdır
Önbellekler, istemin başlangıcından itibaren tam belirteç öneki eşleşmesine göre anahtarlanır. Önbelleğe alınan bölüm, başlangıçtan ilk ayrışma noktasına kadar sürer. Erken kısımdaki herhangi bir şeyi değiştirirseniz, ondan sonraki her şey önbelleği kaçırır.
Sonuç olarak, isabetleri en üst düzeye çıkaran yerleşim en kararlı içeriği başa, en değişken içeriği sona koyar.
# Cache reuse covers: [identical prefix .... first difference)
# One early edit invalidates the whole downstream cache.Kararlılığa Göre Sıralayın
İçeriği en kararlıdan en az kararlıya doğru düzenleyin: önce değişmez sistem kuralları ve araç tanımları, ardından büyük ve kararlı başvuru materyali, sonra oturum boyunca sabit kalan bağlam, en sonda da isteğe özgü değişken girdi ve soru.
- Kararlı -> önde (önbelleğe alınabilir).
- Değişken -> arkada (yeniden hesaplanan tek bölüm).
Bu tek sıralama ilkesi, önbellekleme kazanımlarının çoğunu sağlar.
prompt = [
SYSTEM_RULES, # never changes
TOOL_SPECS, # rarely changes
REFERENCE_CORPUS, # stable for the session
USER_TURN # changes every call -> keep last
]Önbellek Kesme Noktaları
Bazı sağlayıcılar açık önbellek kesme noktaları işaretlemenize izin verir. Sistemin o noktaya kadar önbelleğe alabilmesi için bunları her kararlı bölümün sonuna yerleştirin. En büyük kararlı bloğu (başvuru derlemesini veya uzun sistem istemini) önbelleğe alınabilir olarak işaretleyin.
Açık işaretçiler olmasa bile yapıyı kararlılık sırasına göre düzenleyin; böylece örtük önek eşleştirmesi yine de yardımcı olabilir.
blocks = [
{'text': SYSTEM_RULES, 'cache': True},
{'text': REFERENCE_CORPUS, 'cache': True}, # big win
{'text': user_turn} # uncached
]Gizli Önek Kaymasına Dikkat Edin
İnce ve istem dışı değişiklikler önbelleğe almayı sessizce bozabilir: sistem istemindeki bir zaman damgası, erken eklenen isteğe özgü bir kimlik, yeniden sıralanan araç tanımları veya belirlenimci olmayan JSON anahtar sırası. Bunların her biri öneği kaydırır ve tam yeniden hesaplamayı zorunlu kılar.
Öneğinizi, çağrılar arasında değişen her şey açısından denetleyin ve bunları önbelleğe alınan bölgenin sonrasına taşıyın.
# BAD: dynamic value early -> kills cache
# system = 'Session ' + str(uuid4()) + ' rules: ...'
# GOOD: keep system static; put the id in the tail user turn.TTL ve Önbellek Yaşam Süresi
Önbellekler, sağlayıcının tanımladığı bir yaşam süresinin ardından sona erer ve çoğu zaman her isabette yenilenir. Çağrılar çok seyrekse soğuk ıskalamalar tekrarlanır. Ani ve yüksek frekanslı iş yüklerinde önbelleğe alma işe yarar; nadir ve dağınık çağrılarda önbelleğin kullanım aralarında süresi dolabilir.
Trafik düzeninizi TTL ile eşleştirin ve değerli ön ekler için canlı tutma sinyallerini değerlendirin.
Önbelleğe Alma Maliyet Modeli
Önbellek girdisini yazmak genellikle küçük bir ek ücret gerektirir, okumak ise büyük bir indirim sağlar. Ekonomik açıdan yeniden kullanım avantajlıdır: birçok okumaya yayılan tek bir yazma işlemi net tasarrufu büyük ölçüde artırır; yalnızca yazma yapan tek bir kullanım biraz daha pahalıya mal olabilir.
- Yüksek yeniden kullanım -> Önbelleğe agresif biçimde alın.
- Tek kullanımlık ön ekler -> Önbelleğe alma maliyetini karşılamayabilir.
def worth_caching(prefix_tokens, expected_reuses, write_mult, read_mult):
no_cache = expected_reuses
cached = write_mult + read_mult * (expected_reuses - 1)
return cached < no_cache # in normalized prefix-cost unitsKararlı Sistem Blokları Tasarlama
Sistem isteminizi ve araç belirtimlerinizi belirlenebilir ve sürüme sabitlenmiş hâle getirin. Araç tanımlarını kurallı biçimde sıralayın, dinamik verileri gömmekten kaçının ve bunları yalnızca planlı sürümlerde değiştirin. Kararlı bir sistem bloğu, tüm istekler arasında paylaşılan, uzun ömürlü ve yüksek isabet oranına sahip bir önbellek girdisine dönüşür.
Önbelleğe alınan ön eki, gelişigüzel değiştirdiğiniz bir dize olarak değil, sürümü olan bir ürün olarak ele alın.
TOOLS = sorted(tool_defs, key=lambda t: t['name']) # canonical order
SYSTEM_VERSION = 'v3' # change deliberately, not per requestÇok Turlu Ajanlarda Önbelleğe Alma
Ajan döngülerinde büyüyen konuşma doğal bir önbellek görevi görür: her tur, sonraki turun yeniden kullanacağı bir ön eki genişletir. Yeni turları kuyruğun sonuna ekleyin ve önceki turları asla yeniden yazmayın; böylece önceki önbellek geçerliliğini korur.
Sıkıştırma yapmanız gerektiğinde, eski ön ekleri tekrar tekrar değiştirmek yerine sonraki turlar için yeni ve kararlı bir ön ek oluşturacak şekilde yapın.
Önbellek Etkililiğini Ölçme
Ölçüm ekleyin. Çoğu sağlayıcı her çağrı için önbelleğe alınmış ve önbelleğe alınmamış girdi belirteçlerini bildirir. İsabet oranını izleyin; düşükse ön ekteki kaymaları inceleyin. İsabet oranındaki gerileme genellikle istemin başlarına yakın zamanda eklenmiş dinamik bir değere işaret eder.
- Önbelleğe alınan belirteçleri / toplam girdi belirteçlerini günlüğe kaydedin.
- Bir yayına alımdan sonra isabet oranı düştüğünde uyarı verin.
hit_rate = usage['cache_read_input_tokens'] / max(1, usage['input_tokens'])
assert hit_rate > 0.6, 'prefix drift suspected'Önbelleğe Uyumlu İstem Düzeni
Uzun ön eklerde maliyeti kontrol etmek için içeriği kararlılığına göre sıralayın, en büyük kararlı bloğu bir önbellek kesme noktası olarak işaretleyin, gizli kaymaları ortadan kaldırın, sistem ve araç bloklarının sürümünü sabitleyip sürümlerini yönetin, ajan döngülerinde yalnızca sona ekleme yapın ve isabet oranını izleyin. Amaç, yeniden kullanılabilir tek bir büyük ön ek ile her çağrıda yeniden hesaplanan küçük ve değişken bir son bölüm oluşturmaktır.
Hızlı Kontrol
Her gün binlerce sorguda 100 bin belirteçlik bir başvuru derlemini yeniden kullanıyorsunuz, ancak önbellek isabet oranınız sıfıra yakın.
Özet: Uzun Ön Ekleri Önbelleğe Alma
İstem önbelleğe alma, tam ve kararlı bir ön ekin ön doldurma aşamasını yeniden kullanarak yeniden kullanım sık olduğunda gecikmeyi ve girdi maliyetini büyük ölçüde azaltır. İçeriği en kararlı olandan başlayacak şekilde sıralayın, büyük kararlı bloğu bir kesme noktası olarak işaretleyin ve tüm değişkenliği sona taşıyın. Gizli kaymaları ortadan kaldırın, sistem ve araç bloklarının sürümünü sabitleyip sürümlerini yönetin, ajan döngülerinde yalnızca sona ekleme yapın ve isabet oranını izleyin; böylece bir gerileme, başlarda değişkenlik gösteren yeni bir değeri ortaya çıkarır.
Sıkça Sorulan Sorular
“Uzun Ön Ekleri Önbelleğe Alma” dersi ücretsiz mi?
Evet — “Uzun Ön Ekleri Önbelleğe Alma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Prompt Engineering kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Prompt Engineering kursu toplamda 4 dersten oluşur.
“Uzun Ön Ekleri Önbelleğe Alma” dersinde ne öğreneceğim?
İstem önbelleğe almayla maliyet denetimi. AI Prompt Engineering ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
AI Prompt Engineering öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te AI Prompt Engineering, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Uzun Ön Ekleri Önbelleğe Alma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu AI Prompt Engineering dersinde kod yazıp çalıştırabilir miyim?
Evet. Her AI Prompt Engineering dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Milyon Belirteçlik Bağlam Pencereleri
- Ortada Kaybolma
- Devasa İstemleri Yapılandırma
- Uzun Ön Ekleri Önbelleğe Alma