Prompt Compression
İstem sıkıştırmanın AI verimliliğini nasıl optimize ettiğini keşfet. Ultralytics YOLO26 ile bugün LLM jeton kullanımını azaltmayı, maliyetleri düşürmeyi ve çıkarım hızını artırmayı öğren.
Prompt sıkıştırma, Large Language Models (LLMs) ve multi-modal models için sağlanan giriş metninin uzunluğunu ve karmaşıklığını azaltmak amacıyla tasarlanmış gelişmiş bir optimizasyon tekniğidir. Temel anlamsal anlamı korurken gereksiz kelimeleri, alakasız bağlamı ve durdurma kelimelerini algoritmik olarak ayıklayan prompt sıkıştırma, yapay zeka sistemlerinin bilgiyi daha verimli işlemesini sağlar. Bu yöntem; hesaplama maliyetlerini en aza indirmek, inference latency değerini düşürmek ve modellerin maksimum context window sınırını aşmasını önlemek açısından giderek daha kritik hale gelmektedir.
İstem Sıkıştırma Nasıl Çalışır#
Mimari düzeyde prompt sıkıştırma, belirli bir prompt içindeki her bir token değerinin önemini değerlendirmek için genellikle daha küçük, özel modeller veya bilgi teorisi algoritmaları kullanır. token merging and entropy-based pruning gibi teknikler, genel anlamaya çok az katkı sağlayan token'ları tespit edip kaldırır. Bu, nihai girişin yalnızca en yoğun şekilde paketlenmiş bilgiyi içermesini sağlar.
Yetkili kuruluşların son araştırmaları, son derece sıkıştırılmış prompt'ların karmaşık akıl yürütme görevlerinde performansını koruyabileceğini ve token tüketimini önemli ölçüde azaltabileceğini vurgulamaktadır. Yapay zekayı ölçeklenebilir uygulamalara entegre eden geliştiriciler için prompt optimization guidelines by OpenAI kurallarına uymak ve sıkıştırma çerçevelerinden yararlanmak, verimli dağıtım için standart bir en iyi uygulamadır.
Gerçek Dünya Uygulamaları#
İstem sıkıştırma, kapsamlı metinsel veya görsel verilerin hızlı bir şekilde işlenmesini gerektiren senaryolarda anında değer sağlar:
- Retrieval-Augmented Generation (RAG): Kurumsal arama uygulamalarında RAG boru hatları, tek bir kullanıcı sorgusunu yanıtlamak için genellikle onlarca uzun belgeyi alır. Prompt sıkıştırma algoritmaları, bu alınan belgeleri küçülterek üretim modeline beslemeden önce onları kısa olgusal özetlere dönüştürür. Bu, token taşmasını önler ve real-time inference sürecini hızlandırır.
- Autonomous AI Agents: Ajanlar ve chatbots, kullanıcı etkileşimlerinin uzun vadeli belleğini korumalıdır. Tüm konuşma geçmişini her yeni sorguya aktarmak yerine sıkıştırma teknikleri, daha eski diyalog dönüşlerini özetleyerek ajanların üstel hesaplama maliyetlerine katlanmadan bağlama duyarlı kalmasını sağlar.
İstem Sıkıştırma ve İlgili Tekniklerin Karşılaştırılması#
Sağlam machine learning operations (MLOps) boru hatları oluşturmak için prompt sıkıştırmayı ilgili kavramlardan ayırmak önemlidir:
- Vs. Prompt Caching: Önbelleğe alma, daha önce işlenen metnin dahili hesaplama durumlarını yeniden hesaplamaktan kaçınmak için saklar. Öte yandan sıkıştırma, herhangi bir işlem gerçekleşmeden önce giriş metninin kendisini aktif olarak değiştirir ve kısaltır.
- Vs. Prompt Engineering: Prompt mühendisliği, etkili talimatlar tasarlamanın insan odaklı zanaatidir. Sıkıştırma ise bu talimatların otomatik, algoritmik bir indirgenmesidir.
- Vs. Prompt Enrichment: Zenginleştirme, harici bağlam ekleyerek bir prompt'u genişletirken sıkıştırma onu azaltır. Genellikle birlikte kullanılırlar: bir sistem, bir prompt'u veritabanı sonuçlarıyla zenginleştirebilir ve ardından çıkarımdan önce nihai yükü sıkıştırabilir.
Bilgisayarlı Görüde Uygulama#
In Computer Vision (CV), prompt sıkıştırma ilkeleri, nesneleri tanımlamak için metin sorgularını kabul eden açık kelime dağarcığı modelleri kullanılırken geçerlidir. Sınıf açıklamalarının kısa tutulması, daha hızlı metinsel kodlama sağlar ve bellek yükünü azaltır.
Hızın en üst düzeyde olduğu sabit sınıflı üretim ortamları için geliştiriciler genellikle metin prompt'lu modellerden Ultralytics YOLO26 gibi son derece optimize edilmiş, sabit mimarili modellere geçiş yapar. Ultralytics Platform kullanarak veri kümelerini verimli bir şekilde yönetebilir ve bu son teknoloji modelleri eğitebilirsiniz.
from ultralytics import YOLO
# Load an open-vocabulary YOLO-World model
model = YOLO("yolov8s-world.pt")
# Principle of prompt compression: Use concise, distilled class names
# instead of lengthy, complex descriptions for faster text encoding
compressed_prompts = ["helmet", "vest", "forklift"]
model.set_classes(compressed_prompts)
# Run inference with the optimized class list
results = model.predict("https://ultralytics.com/images/bus.jpg")
results[0].show()





