Temel bir değerlendirici modeli oluşturma (2. bölüm)

Öznel değerlendirmelerinizi çalıştırmak için temel değerlendirici modelinizin kurulumunu tamamlayın.

Hakimi uyumlu hale getirme ve test etme

İlk hakeminiz var ancak henüz güvenemiyorsunuz. Hakeminiz yalnızca insan değerlendirmesiyle tutarlı bir şekilde aynı fikirde olduğunda hazır olur.

Bir hizalama veri kümesi oluşturma

Değerlendiricinizi kalibre etmek için uygunluk veri kümesi gerekir. Bu, insanlar tarafından manuel olarak derecelendirilmiş küçük bir yüksek kaliteli giriş ve çıkış koleksiyonudur. Bu veri kümesi, gerçek kaynağınız olarak kullanılır. Bunu, hakimin mantığının beklentilerinizle tutarlı bir şekilde uyumlu olduğunu doğrulamak için kullanacaksınız.

Hizalama veri kümeniz 30-50 giriş-çıkış çifti içermelidir. Bu küme, bazı uç durumları kapsayacak kadar büyük ancak kısa sürede etiketleyebileceğiniz kadar küçüktür.

ThemeBuilder örneğinde, hizalama veri kümesindeki bir giriş şu şekilde görünür (giriş, çıkış, insan etiketi):

{
  "id": "sample-014",
  "userInput": {
    "companyName": "Rawrr!",
    "audience": "kids 5-10",
    "tone": ["prehistoric", "loud", "fun"]
  },
  "appOutput": {
    "motto": "Experiencing the prehistoric era."
  },
  "humanEvaluation": {
    "mottoBrandFit": {
      "label": "FAIL",
      "rationale": "While on-theme, this motto is too formal for kids.
        It fails to capture the required 'loud' and 'fun' energy."
    }
  }
}

Giriş ve çıkış oluşturmak için varsa üretim günlüklerinden veri çekebilir, verileri manuel olarak oluşturabilir, LLM kullanabilir (sentetik veriler) veya birkaç elle seçilmiş örnekten başlayıp LLM'den veri kümenizi artırmasını isteyebilirsiniz.

Girişleriniz ve çıkışlarınız hazır olduğunda, ekibinizle birlikte çıkışları PASS veya FAIL olarak etiketlemek için değerlendirme ölçeğinizi kullanın. Bu, gerçek referans değeriniz olur.

Uyumluluk veri kümenizin, zorluk seviyesi değişen PASS örnekleri ve FAIL örnekleri içerdiğinden emin olun. Örneğin:

  • Hakeminizin PASS olarak etiketlemesi gereken 10 örnek mutlu yol durumu.
  • Hakiminizin FAIL olarak etiketlemesi gereken 20 örnek olay:
    • Bariz hatalar (ör. son derece zararlı veya marka ile tamamen alakasız bir slogan)
    • Küçük hatalar: Örneğin, dilbilgisi açısından kusursuz olan ancak eğlenceli bir marka için biraz fazla resmi olan veya üsluba yalnızca kısmen uyan bir slogan.

LLM yargıcınız bir kapı bekçisidir. Geçme durumlarından daha fazla hata içeren bir veri kümesi üzerinde hizalamak, değerlendirme ölçütünü hataları yakalayacak şekilde ayarlamanız için daha fazla fırsat sunar ve sonuç olarak hakimin hataları tespit etme konusunda daha iyi olmasını sağlar.

Hizalama veri kümeniz hazır olduğunda aşağıdaki gibi görünmelidir:

İdeal yol durumları (BAŞARILI)

// Easy, clean input + Good output
{
  "id": "sample-001",
  "userInput": {
    "companyName": "Kinetica",
    "description": "Carbon-fiber plated performance footwear engineered for
    elite marathon runners.",
    "audience": "competitive triathletes and professional runners",
    "tone": [
      "aggressive",
      "high-performance",
      "technical"
    ]
  },
  "appOutput": {
    "motto": "Unlock your kinetic potential.",
    "colorPalette": {
      "textColor": "#FFFFFF",
      "backgroundColor": "#000000",
      "primary": "#DC2626",
      "secondary": "#E2E8F0"
    }
  },
  "humanEvaluation": {
    "mottoBrandFit": {
      "label": "PASS",
      "rationale": "This motto powerfully aligns the brand's technical
      engineering with the ambitious goals of its elite athletic audience.
      Relevance: Uses 'kinetic' to expertly link the brand to physical
      energy. Audience appeal: 'Unlock your potential' resonates perfectly
      with competitive runners. Tone consistency: Nails the required
      aggressive, high-performance marks."
    },
    "mottoToxicity": {
      "label": "PASS",
      "rationale": "Perfectly clean and motivational. No offensive or
      exclusionary language."
    },
    "colorBrandFit": {
      "label": "PASS",
      "rationale": "The chosen color palette perfectly mirrors Kinetica's
      aggressive and technical brand identity by utilizing high-impact tones
      that resonate with elite athletes. Relevance: Psychological association:
      Blood red creates urgency and speed. Harmony: Stark contrast against
      black/white feels highly technical.
      Appropriateness: Extremely effective aesthetic for premium athletic gear."
    }
  }
}

Bariz hatalar (FAIL)

// Off-brand color palette
{
  "id": "sample-014",
  "userInput": {
    "companyName": "Rawrr!",
    "description": "Dinosaur themed playground and party venue.",
    "audience": "kids 5-10",
    "tone": [
      "prehistoric",
      "loud",
      "fun"
    ]
  },
  "appOutput": {
    "motto": "Experiencing the prehistoric era.",
    "colorPalette": {
      "textColor": "#4A4A4A",
      "backgroundColor": "#F5F5DC",
      "primary": "#D2B48C",
      "secondary": "#C0C0C0"
    }
  },
  "humanEvaluation": {
    "mottoBrandFit": {
      "label": "FAIL",
      "rationale": "While the motto relates to the dinosaur theme, its overly
      academic and formal tone fails to capture the loud and fun energy
      essential for a children's playground brand. Relevance: Effectively fits
      the dinosaur theme. Audience appeal: A bit formal ('Experiencing' versus
      something punchy), acceptable for parents booking events but should be
      more exciting for kids, it's too formal and academic for a children's
      playground, lacks the 'loud' and 'fun' energy requested in the tone.
      Tone consistency: It touches on the 'prehistoric' element adequately."
    },
    "mottoToxicity": {
      "label": "PASS",
      "rationale": "A completely family-friendly, educational-sounding statement."
    },
    "colorBrandFit": {
      "label": "FAIL",
      "rationale": "This muted and sophisticated color scheme fails to capture
      the high-energy, prehistoric spirit required to attract and excite a young
      audience. Relevance: Psychological association: The 'sad beige', tan, and
      muted greys evoke a sterile, 'adult minimalist' home décor aesthetic.
      Harmony: The colors are muddy and lifeless. Appropriateness: For a 'loud'
      and 'fun' children's playground targeting 5-10 year olds, this palette is
      a spectacular failure. It desperately needs vibrant, exciting primary
      colors to attract kids."
    }
  }
},

Küçük hatalar (BAŞARISIZ)

// Almost on-brand color palette
{
  "id": "sample-023",
  "userInput": {
    "companyName": "Apex Dental",
    "description": "High-end cosmetic dentistry specializing in porcelain
        veneers and laser whitening.",
    "audience": "Professionals seeking a perfect smile",
    "tone": [
      "clean",
      "professional",
      "bright"
    ]
  },
  "appOutput": {
    "motto": "Designing your brightest smile.",
    "colorPalette": {
      "textColor": "#1A202C",
      "backgroundColor": "#FFFFFF",
      "primary": "#FFC107",
      "secondary": "#E2E8F0"
    }
  },
  "humanEvaluation": {
    "mottoBrandFit": {
      "label": "PASS",
      "rationale": "The motto perfectly captures the premium essence of the
      brand by combining high-end dental aesthetics with a clear appeal to a
      professional clientele. Relevance: Relates perfectly to cosmetic
      dentistry and teeth whitening. Audience appeal: 'Brightest smile' is a
      highly effective, aspirational hook for professionals wanting to look
      their best. Tone consistency: Clean, upbeat, and exceedingly professional."
    },
    "mottoToxicity": {
      "label": "PASS",
      "rationale": "A very positive, medical-grade, and safe statement."
    },
    "colorBrandFit": {
      "label": "FAIL",
      "rationale": "The choice of bright yellow is a fundamental branding
      failure for a cosmetic dental practice as it creates a direct and
      repellent visual link to tooth discoloration, undermining the clinic's
      high-end whitening positioning. Relevance: Psychological association:
      While yellow technically fulfills the word 'bright', in the specific
      context of dentistry, a primary bright yellow is subconsciously and
      intensely associated with plaque, decay, and stained teeth.
      Harmony: It stands out strongly but sends the wrong message.
      Appropriateness: This is a massive psychological misstep for a whitening
      clinic. It subverts trust in their core service by visually reminding
      customers of the problem rather than the solution."
    }
  }
},

Erişim hizalama

Kesin referansınız hazır olduğunda hakemi insan etiketleriyle eşleştirme zamanı gelir. Amacınız, hakemin sürekli olarak sizinle aynı fikirde olmasını ve insan yargısını taklit etmesini sağlamaktır. Uygunluk puanını, hakem tarafından oluşturulan etiketlerin insan tarafından oluşturulan etiketlerle eşleşme yüzdesi olarak hesaplayabilirsiniz.

// total = all test cases
// aligned = test cases where humanEval.label === llmJudgeEval.label
// For example, PASS and PASS
const alignment = (aligned / total) * 100;

Hedef eşleşme puanı belirleyin (ör. %85). Hedefiniz, kullanım alanınıza göre değişebilir.

Değerlendirme modelinizi, hizalama veri kümenize göre çalıştırın. Uygunluk puanınız hedefinizden düşükse hakimin neden kafasının karıştığını anlamak için gerekçesini okuyun. Boşlukları doldurmak için sistem talimatlarını ve hakem istemini değiştirin. Hedef puanınıza ulaşana kadar bu işlemi tekrarlayın.

En iyi uygulamalar

Hakemin tutarlı bir şekilde puan vermesine yardımcı olmak için aşağıdaki en iyi uygulamaları izleyin:

  • Fazla uyumdan kaçının. Talimatlar genelleştirilmiş olmalı ve hizalama veri kümenize çok fazla özgü olmamalıdır. Belirli ifadelerden kaçınma gibi talimatlar verirseniz değerlendirici, bu belirli uyumluluk testini geçmekte çok iyi olur ancak yeni verileri genelleştiremez. Bu soruna fazla uyum denir.
  • Sistem talimatlarınızı ve isteminizi optimize edin. İstem optimizasyonu teknikleri arasında istemleri manuel olarak değiştirme, başka bir LLM'den iyileştirme önerileri isteme veya bu tekniklerin bir kombinasyonuna dayalı değişiklikler uygulama yer alır. İstem optimizasyonu teknikleri manuelden çok gelişmişe kadar değişebilir. Örneğin, biyolojik evrimi taklit eden algoritmalar kullanılabilir. Gerekirse geri döndürebilmek için değişikliklerinizin kaydını tutun.

ThemeBuilder'da hizalamanın nasıl çalıştığını görmek için hizalama testini kendiniz çalıştırın.

Örnek eşleşme testi.

Önyükleme ile stres testi

%85 uyum hedefinize ulaşmak, değerlendiricinizin gerçek dünya verileriyle iyi performans göstereceğini garanti etmez. Yargılayıcınızı bootstrap adı verilen istatistiksel bir yöntemle stres testine tabi tutun. Bootstrapping, ek etiketleme çalışması gerektirmeden veri kümenizin yeni sürümlerini oluşturur.

** Test: Veri kümenizdeki 30 öğeyi değiştirerek rastgele yeniden örnekleyin. Bir çalıştırmada zorlu bir durum beş kez seçilebilir ve bu da testi çok daha zor hale getirir. Bu rastgele oluşturulmuş kümelerde hizalama testini birden çok kez çalıştırın ve bu çalıştırmalardaki ortalama hizalamayı ve puan varyansını hesaplayın. Sihirli bir sayı olmasa da 10 yineleme, orta ölçekli projeler için iyi bir temeldir. Daha fazla yineleme yaparak daha yüksek güven elde edin. ** Düzeltme: Uygunluk puanınızda önemli dalgalanmalar (yüksek varyans) varsa hakeminiz henüz güvenilir değildir. İlk puanınız, birkaç kolay vakadan kaynaklanan bir tesadüftü. Puan anahtarınızı genişletin ve hizalama veri kümenize daha çeşitli, zor örnekler ekleyin.

Bir bootstrap testinin görsel temsili. Nesneler, yerine koyma yöntemiyle alt örnekleme yapıldığından bazı sınıflar fazla temsil edilebilir (bootstrap örnekleri 1 ve 2'deki sarı misketler), bazıları ise az temsil edilebilir (bootstrap örnekleri 1 ve 2'deki kırmızı misketler) veya hatta eksik olabilir (bootstrap örneği 3'teki yeşil misketler). ResearchGate'teki orijinal bilimsel şekli görüntüleyin.

Kendiniz deneyebilirsiniz.

Örnek bootstrap testi.

Kendine tutarlılık testini yapma

Hakime yalnızca aynı giriş için her zaman aynı yanıtı veriyorsa güvenilebilir. Sıcaklığınızı 0 olarak ayarladıysanız yargıç %100 tutarlı olmalıdır. Onaylamak için test edin.

  • Test: Değerlendiricinizi tam olarak aynı veri kümesinde (ör. hizalama veri kümenizden rastgele bir çekiliş) birden çok kez çalıştırın. Bu tekrarlar genelinde her test senaryosunun varyansını hesaplayın. %100 tutarlılık (sıfır varyans) hedefleyin. Varyans sıfırdan büyükse test başarısız oluyor. Bunun nedeni, hakeminizin aynı giriş için farklı yanıtlar vermesidir.
  • Düzeltme: Yargılama isteminiz belirsiz olabilir veya sıcaklık çok yüksek olabilir. İstemde bulanık görünen kısımları, özellikle de puanlama ölçütlerinizi yeniden yazın. Henüz yapılmadıysa sıcaklığı 0'a düşürün (veya thinking_level değerini yüksek olarak ayarlayın).

Bu özelliği uygulamalı olarak görmek için testi kendiniz çalıştırın.

Tutarlılık testinin terminal çıkışı.
Bu örnekte, üç metriğimizin (slogan toksisitesi, slogan marka uyumu ve renk marka uyumu) her biri için 6 örnek test ettik. Sonuçlar neredeyse tamamen tutarlıydı ancak birkaç örnekte tutarsız sonuçlar vardı.

Final sınavı

Bootstrapping, aşırı uyumu önlemek için ilk kontrolü çalıştırmanıza yardımcı oldu. Şimdi, yeni veriler kullanarak son bir test çalıştıracaksınız. Bu, hakemin yeni girişleri doğru şekilde puanlayabileceğinin son onayıdır.

  • Test: Hizalama sırasında kullanmadığınız, insanlar tarafından etiketlenmiş 20 örnekten oluşan ayrı bir nihai sınav veri kümesi tutun. Hakiminizi bu sete göre çalıştırın.
  • Düzeltme: Uyum puanınız yüksek kalırsa hakeminiz hazırdır. Puan çökerse muhtemelen aşırı uyum sağlamışsınızdır: Belirli uyum verilerinizi geçmek için isteminizi çok fazla kez ayarlamışsınızdır. İsteminizi, değerlendirme ölçeğinizi ve az görevli örneklerinizi genişletin.

Bu özelliği uygulamalı olarak görmek için testi kendiniz çalıştırın.

Özet

Temel hakiminizi oluşturmak için aşağıdakiler de dahil olmak üzere farklı testler yaptınız:

  • Uygunluk testi, yargıcın doğru olup olmadığını kontrol eder.
  • Önyükleme ve final sınavı testi, veri hassasiyetini kontrol eder. Yargıç, yeni verilerle karşılaştığında yeterince sık doğru kalıyor mu?
  • Kendine tutarlılık testi, LLM hakeminin kendi içindeki rastgeleliğin sonuçları ne kadar etkilediğini gösteren sistem gürültüsünü ölçer.