24 puan yazan xguru 2024-12-03 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Doğru ve uygun LLM çıktıları elde etmek için gelişmiş prompt tasarımı kritik önem taşır
  • Prompt tasarımı, makine öğrenmesine aşina olmayan kullanıcıların bile minimum ek yükle model çıktısını kontrol etmesini sağlar
  • Uber, LLM’lerle hızlı iterasyon yapabilmek için merkezi bir araç seti geliştirdi
    • Prompt şablonu oluşturma ve yönetimi
    • RAG ve çalışma anındaki veri kümelerinin kullanımı
  • Özellikler:
    • Sistem komutları, dinamik bağlamsallaştırma, toplu offline üretim (LLM çıkarımı), yanıt değerlendirmesi desteği
    • Sürüm kontrolü, iş birliği, güvenlik kontrolleri (halüsinasyon kontrolü, standart değerlendirme çerçevesi, güvenlik politikaları dahil)

Prompt Engineering yaşam döngüsü

Prompt engineering yaşam döngüsü iki aşamadan oluşur:

  • Geliştirme aşaması: LLM keşfi, prompt şablonu iterasyonu ve değerlendirme olmak üzere 3 adımdan oluşur
    • LLM keşif aşaması: Model kataloğu ve GenAI Playground üzerinden kullanılabilir LLM’leri keşfetme ve prompt’larla LLM yanıtlarını test etme
    • Prompt şablonu iterasyon aşaması: Belirli iş gereksinimlerini anlama, örnek veri toplama, prompt oluşturma/analiz etme/test etme, yanıtları değerlendirme ve gerektiğinde düzeltme. Auto-prompting sayesinde prompt şablonunu sıfırdan oluşturmak gerekmez
    • Değerlendirme aşaması: Performansı ölçmek için prompt şablonunu daha büyük veri kümeleriyle test etme. Performans değerlendirmesi için LLM bir hakem olarak kullanılabilir veya özel kod tabanlı LLM değerlendiricileri kullanılabilir
  • Üretime alma (Productionization) aşaması: Yalnızca değerlendirme aşamasında eşik değeri geçen prompt şablonları üretime alınır. Üretim ortamındaki kullanım izlenir/monitör edilir ve sistem kullanım verileri toplanarak süreci iyileştirmek için kullanılır

Mimari

  • Prompt şablonu UI/SDK: Prompt şablonlarını ve revizyonları yönetir. GetAPI ve Execute API ile entegredir
  • LLM model kataloğu: Dağıtılmış LLM modelleriyle arayüz sağlar
  • Modeller ve prompt’lar ETCD ve UCS’de saklanır; offline üretim hattı ve prompt şablonu değerlendirme hattında kullanılır

Prompt şablonu oluşturma

  • Prompt toolkit içindeki prompt builder, kullanıcı için otomatik olarak prompt üretir
  • Belirli yapay zeka kullanım senaryolarına uygun ileri seviye prompting tekniklerini keşfetmeye yardımcı olur
  • LangChain tabanlı dahili Langfx framework’ünü kullanan otomatik prompt builder şu adımları izler
    • 1. Prompt engineering en iyi uygulamalarını entegre etme
    • 2. Prompt oluşturmayı desteklemek için ayrıntılı şablon listesi yönergeleri ve bazı örnekler sağlama
    • 3. Prompt üretimini desteklemek için LLM modellerinden yararlanma
  • İleri seviye prompt yönergeleri: Prompt builder, prompt üretirken aşağıdaki ilkeleri kullanır
    • CoT(Chain of Thought) prompting: Ara akıl yürütme adımlarıyla karmaşık muhakeme yeteneğini mümkün kılar
    • Auto-CoT: Başlatıcı ifade olarak "think step by step" kullanılır. Manuel çabayı ortadan kaldırmak için LLM’e "Let's think step by step" prompt’u verilir
    • Prompt chaining: Birden çok görev veya dönüşüm içeren senaryolarda kullanılabilir
    • ToT(Tree of Thought): Chain-of-thought prompting’i genelleştirir ve genel problem çözümünde ara adım olarak kullanılabilecek düşünce keşfini dil modeliyle teşvik eder
    • APE(Automatic Prompt Engineering): Komut üretimi ve seçimini otomatikleştiren framework
    • Çok modlu CoT prompting: Metin ve görselleri iki aşamalı bir framework içinde birleştirir. 1. aşama çok modlu bilgiye dayalı gerekçe üretimi, 2. aşama ise üretilen gerekçeyi kullanarak yanıt çıkarımı yapmadır
  • Revizyon yönetimi
    • Prompt şablonu iterasyonu, kod tabanlı iterasyon için en iyi uygulamaları izler
    • Kullanıcılar, test yanıtları ve veri kümeleriyle deneme yapmak için komutları ve model parametrelerini değiştirebilir
    • Prompt şablonunun her iterasyonu için kod incelemesi gerekir. Onaylanıp birleştirildiğinde yeni bir prompt şablonu revizyonu oluşturulur

Prompt şablonu değerlendirmesi

Prompt şablonunun performansını değerlendirmek için birden fazla bileşen birlikte çalışır:

  • İki değerlendirme mekanizması
    • LLM’i değerlendirici olarak kullanma. Öznel kalite veya dilsel nüansın önemli olduğu görevlerde faydalıdır
    • Özel kullanıcı tanımlı kod kullanarak performans değerlendirmesi. Performansın belirli yönlerini ölçmek için faydalıdır
  • Değerlendirme prompt şablonu: Değerlendirme için komutlar, kısa örnekler, metrikler, yanıt formatı vb. sağlayan kullanıcı dostu şablon
  • Gerçek prompt şablonu: Üretimde kullanılan şablon. Çalışma anında hydrate edilir ve performans değerlendirmesinde kullanılır
  • Girdi veri kümesi seçenekleri: Etiketlenmiş golden dataset veya üretim trafiğinden türetilmiş veri kümesi
  • Her şablon; belirli komutlar, bağlam, ilgili model ve parametreler dikkate alınarak değerlendirilir

Uber’deki kullanım senaryoları

Offline LLM servisi

LLM batch offline üretim hattı, büyük ölçekli LLM yanıt üretimi için batch inference’ı kolaylaştırır:

  • Tüketici kullanıcı adı doğrulama kullanım senaryosunda kullanılabilir
  • MA Studio’da yalnızca ilgili veri kümesini seçmek ve girmek yeterlidir
  • Prompt şablonu veri kümesiyle dinamik olarak hydrate edilir

Online LLM servisi

Prompt şablonu, çalışma anına özgü değerlerle değiştirilmesi gereken dinamik placeholder’lar içerir:

  • Şu anda Jinja tabanlı şablon sözdizimi kullanılarak yalnızca string türü değiştirmeler desteklenir
  • Prompt, şablon ve model arasında fan-out özelliği desteklenir
    • Şablon: API şablonu, genel veri modelinde açığa çıkarılan payload’u sağlayıcıya özgü API yapısına göre biçimlendirme işlevi içerir
    • Prompt ve model: Prompt belirli model ve şablona sabitlenir. Servis prompt’u alır ve gerekli model ile şablon parametreleriyle genAI API’sini çağırarak çalıştırır

Özet kullanım senaryosu olarak bu özelliklerin incelenmesi:

  • Bir destek talebinin (contact) birden fazla temsilci tarafından işlenebildiği senaryoda, yeni temsilcinin bağlamı anlamak için talebi incelemesi veya müşteriden sorunu yeniden açıklamasını istemesi gerekir
  • Temsilciler arası devir sırasında özet sunularak bu sorun çözülür

İzleme

İzleme, üretimde kullanılan prompt şablonlarının performansını ölçer:

  • Günlük performans izleme hattı, üretim trafiği üzerinde performans değerlendirmesi yürütür
  • Gecikme, doğruluk, kesinlik gibi metrikler prompt şablonunun her üretim iterasyonu için izlenir
  • MES dashboard, performans izleme metrikleriyle her gün yenilenir

Sonuç

Uber’ın prompt engineering araç seti, LLM’lerle etkileşimi ve bunlardan yararlanmayı geliştirme ile üretimin farklı aşamalarında iyileştirmeye yönelik kapsamlı bir framework’tür:

  • Gen AI Playground’da LLM yeteneklerinin ilk keşfinden ayrıntılı prompt şablonu iterasyonu ve oluşturmaya kadar destek sağlar
  • Araç setinin mimarisi, ileri seviye yönerge teknikleriyle sağlam değerlendirme yöntemlerini entegre ederek prompt tasarımına sistematik bir yaklaşım sunar
  • Prompt şablonlarının geliştirmeden üretimde kullanıma ve izlemeye uzanan yapılandırılmış yaşam döngüsü, her şablonun titizlikle test edilmesini ve performans için optimize edilmesini sağlar
  • Gelecekte online değerlendirme ile değerlendirme için RAG ve offline üretim için RAG ile entegrasyon planlanmaktadır

Henüz yorum yok.

Henüz yorum yok.