Aracılığıyla paylaş


Sıfır çekim ve az denemeli öğrenme

Bu makalede, birincil kullanım örnekleri de dahil olmak üzere .NET'te istem mühendisliği için sıfır çekim öğrenme ve az çekim öğrenme açıklanmaktadır.

GPT modeli performansı, çıktısını iyileştirmek için modele yönergeler ve örnekler sağlama uygulaması olan istem mühendisliğinden yararlanır. Sıfır çekim öğrenme ve az çekim öğrenme, örnek sağlarken kullanabileceğiniz tekniklerdir.

Sıfır çekim öğrenme ile istemler eklersiniz ancak ayrıntılı tamamlamalar içermezsiniz. Yalnızca ipuçlarından oluşan tamamlamaları ekleyebilirsiniz. Sıfır çekim öğrenme, yanıt oluşturmak için tamamen modelin mevcut bilgilerine dayanır. Bu da oluşturulan belirteç sayısını azaltır ve maliyetleri denetlemenize yardımcı olabilir. Ancak sıfır çekim öğrenme modelin bilgisine ek değildir.

Burada, modelin girişin temsil ettiği dört olası amaçtan hangisini temsil ettiğini belirlemek için kullanıcı girişini değerlendirmesini ve ardından yanıtının önüne "Amaç: " ifadesinin eklenmesini söyleyen bir sıfır atış istemi örneği verilmiştir.

prompt = $"""
Instructions: What is the intent of this request?
If you don't know the intent, don't guess; instead respond with "Unknown".
Choices: SendEmail, SendMessage, CompleteTask, CreateDocument, Unknown.
User Input: {request}
Intent: 
""";

Az denemeli öğrenmeyle, ayrıntılı tamamlamalarla eşleştirilmiş istemler eklersiniz. Sıfır çekim öğrenme ile karşılaştırıldığında, bu, az çekim öğrenmenin daha fazla belirteç ürettiği ve modelin bilgisini güncelleştirmesine neden olduğu anlamına gelir ve bu da az çekim öğrenmenin daha yoğun kaynak kullanmasına neden olabilir. Ancak, aynı nedenlerden dolayı az denemeli öğrenme modelin daha ilgili yanıtlar üretmesine de yardımcı olur.

prompt = $"""
Instructions: What is the intent of this request?
If you don't know the intent, don't guess; instead respond with "Unknown".
Choices: SendEmail, SendMessage, CompleteTask, CreateDocument, Unknown.

User Input: Can you send a very quick approval to the marketing team?
Intent: SendMessage

User Input: Can you send the full update to the marketing team?
Intent: SendEmail

User Input: {request}
Intent:
""";

Sıfır çekim öğrenme kullanım örnekleri

Sıfır çekim öğrenme, ayrıntılı tamamlamalarla eşleştirilmeyen istemleri geçirme uygulamasıdır, ancak bunlar bir ipucuyla eşleştirilebilir. Sıfır çekim öğrenme için iki birincil kullanım örneği vardır:

  • Hassas ayarlı LLM'lerle çalışma - Modelin mevcut bilgilerine bağlı olduğundan, sıfır çekim öğrenme, az çekimli öğrenme kadar yoğun kaynak kullanımlı değildir ve zaten yönerge veri kümelerinde ince ayar yapılmış OLAN LLM'lerle iyi çalışır. Yalnızca sıfır çekim öğrenmeye güvenebilir ve maliyetleri nispeten düşük tutabilirsiniz.
  • Performans temelleri oluşturma - Sıfır çekim öğrenme, uygulamanızın gerçek kullanıcılar için nasıl performans göstereceğinin benzetimini yapmanıza yardımcı olabilir. Bu, modelinizin geçerli performansının doğruluk veya duyarlık gibi çeşitli yönlerini değerlendirmenizi sağlar. Bu durumda genellikle sıfır aşamalı öğrenmeyi kullanarak bir performans temeli oluşturur ve ardından performansı geliştirmek için az denemeler yapmaya çalışırsınız.

Az denemeli öğrenme kullanım örnekleri

Az denemeli öğrenme, modelinizin nasıl yanıt vereceğini göstermek için ayrıntılı tamamlamalarla (birkaç çekimli istemler) eşleştirilmiş istemleri geçirme alıştırmasıdır. Sıfır çekim öğrenmeden farklı olarak, az çekim öğrenme modelin bilgisine eklenebilir. Hatta kendi veri kümelerinizi kullanarak, alma artırılmış oluşturma işlemi gerçekleştirerek otomatik olarak birkaç çekim istem oluşturabilirsiniz.

Az denemeli öğrenmenin iki birincil kullanım örneği vardır:

  • LLM'yi ayarlama - Modelin bilgisine ekleyebildiği için az denemeli öğrenme modelin performansını geliştirebilir. Ayrıca modelin sıfır çekim öğrenmeden daha fazla belirteç oluşturmasına neden olur ve bu da son derece pahalı ve hatta uygulanabilir hale gelebilir. Ancak LLM'niz henüz hassas ayarlanmamışsa sıfır çekim istemlerle iyi bir performans elde etmezsiniz ve az denemeli öğrenme garanti edilir.
  • Performans sorunlarını düzeltme - Az çekim öğrenmeyi, sıfır çekim öğrenme için bir izleme olarak kullanabilirsiniz. Bu durumda, sıfır çekim öğrenmeyi kullanarak bir performans temeli oluşturursunuz ve ardından kullandığınız sıfır çekim istemleri temelinde birkaç çekimli öğrenmeyi denemeniz gerekir. Bu, modelin şu anda nasıl yanıt verdiğini gördükten sonra modelin bilgilerine eklemenizi sağlar, böylece tanıtdığınız belirteç sayısını en aza indirirken performansı yineleyebilir ve geliştirebilirsiniz.

Uyarılar

  • Örnek tabanlı öğrenme, karmaşık mantık yürütme görevleri için iyi çalışmaz. Ancak, yönergeler eklemek bu sorunu gidermeye yardımcı olabilir.
  • Az çekim öğrenme, uzun istemler oluşturmayı gerektirir. Çok sayıda belirteç içeren istemler hesaplamayı ve gecikme süresini artırabilir. Bu genellikle maliyetlerin artması anlamına gelir. Ayrıca istemlerin uzunluğuna yönelik bir sınır da vardır.
  • Birkaç örnek kullandığınızda, model "Yaklaşımlar negatiften iki kat daha pozitif olabilir" gibi yanlış desenler öğrenebilir.