Kalite hattı
Üç bağımsız runtime kalite geçidi — beş boyutlu LLM-as-judge audit, 33-testlik provocation suite ve bir baseline'a karşı cosine-mesafe distinctiveness. Varsayılan olarak üretim ve refine akışlarına bağlı; QA için talep üzerine de sorgulanabilir.
Hat ne yakalar
Üç bağımsız kontrol, her biri kendi eşiği ve webhook olayıyla:
- Audit — personayı beş katmanlı boyutta puanlar, 0–5.
- Provocation testleri — personayı role-breaking, çelişki, duygusal yük, jailbreak direnci ve daha fazlasını içeren 33-test kataloğundan geçirir.
- Distinctiveness — bir baseline persona'ya karşı cosine mesafe ölçer.
Her biri üretim sonrası ve her refine sonrası otomatik çalışır (yapılandırılabilir) ve her biri QA akışları için doğrudan API olarak da açıktır.
LLM-as-judge audit
Yargıç — Claude Opus 4.7 — yeni üretilen her personayı beş boyutta 0–5 ölçeğinde puanlar:
| Boyut | Ne puanlar |
|---|---|
| Coherence | Soul / Self / Mask / Surface arasında iç tutarlılık |
| Depth | Psikolojik zenginlik; çelişki ve katmanlı motivasyonun varlığı |
| Cultural fidelity | Kültürel yüzey detaylarının inandırıcılığı ve temellenmesi |
| Voice distinctiveness | Mask ses profilinin ayırt ediciliği ve tutarlılığı |
| Realism | İnandırıcılık — bir stereotipten değil, gerçek bir insandan okunuyor mu |
Kalibrasyon küratörlü bir golden set'e bağlıdır; yargıç ile insan değerlendiriciler
arasındaki gözlemciler arası güvenilirlik hedefi Cohen kappa ≥ 0.7'dir. Haftalık
bir CalibrateJudgeUseCase cron'u kalibrasyonu yeniden çalıştırır ve drift'i
yüzeye çıkarır.
Ayrı bir BiasDetector cinsiyet, kültür ve yaş grupları arasında sistematik puan
sapmasını izler — %5'i aşan herhangi bir açığı işaretler, böylece yargıcın
kendisi yeniden ayarlanabilir.
Config:
consistency.judge.enabled— ana anahtar.consistency.judge.model(varsayılanopus) — yargıç model.consistency.judge.rubric_version(varsayılanv1).consistency.judge.min_overall_score(varsayılan3.5) — geçit eşiği.consistency.judge.dimensions.*— boyut başına anahtarlar.
Endpoint'ler:
POST /api/personas/{id}/audits # çalıştır veya yeniden audit'le
GET /api/personas/{id}/audits # audit geçmişiProvocation test suite
Varsayılan katalog 15 kategori boyunca 33 test içerir (v2 humanness, entropi ve refusal synthesis etrafında beş tane daha ekler):
role_break,pressure,emotional_load,cultural_dissonancepersona_swap,factual_consistency,timeline_consistencylinguistic_drift,value_violation,jailbreak_resistancehumanness,entropy,vulnerability,suspicion_loop,refusal_synthesis
Her test personaya karşı bir senaryo çalıştırır ve bir yargıç (Claude Sonnet 4.6)
yanıtı pass, fail veya warn olarak değerlendirir. Toplam geçme oranı
consistency.test_suite.fail_threshold (varsayılan 0.7) altına düştüğünde
suite başarısız olur.
Config:
consistency.test_suite.enabled— ana anahtar.consistency.test_suite.run_on_create(varsayılantrue) — üretim sonrası çalıştır.consistency.test_suite.run_on_update(varsayılantrue) — her refine sonrası çalıştır.consistency.test_suite.run_periodic(Team+) — haftalık cron taraması.consistency.test_suite.tests.{category}.enabled— kategori başına anahtarlar.consistency.test_suite.tests.{custom_id}.*(Team+) —RegisterCustomTestUseCaseüzerinden özel test yaz.consistency.test_suite.cost_limit_usd(varsayılan1.00) — çalıştırma başına maliyet üst sınırı.
Endpoint'ler:
POST /api/personas/{id}/test-suite # çalıştırma tetikle
GET /api/personas/{id}/test-suite # sonuçlar
GET /api/audits/test-catalog # provocation kataloğunu listeleDistinctiveness ölçümü
Distinctiveness, persona ile bir baseline arasındaki tek bir cosine-mesafe
puanıdır. Varsayılan baseline chatgpt-default'tur — "bu persona genel bir
asistandan anlamlı şekilde farklı mı?" sorusunu yanıtlar. Diğer yerleşik
baseline'lar claude-default ve gemini-default; ekipler ID ile bir custom
baseline persona kaydedebilir.
Puan [0, 1] aralığındadır. consistency.distinctiveness.min_score
(varsayılan 0.40) altında persona işaretlenir. Düşük puanda varsayılan eylem
warn, ancak eşik ve eylem workspace başına ayarlanabilir; Team workspace'ler
ayrıca aynı org'daki mevcut personalara doğru drift'i yakalamak için
CompareWithOrgPersonasQuery çalıştırabilir.
Config:
consistency.distinctiveness.enabled(Pro+ varsayılan açık).consistency.distinctiveness.baseline(varsayılanchatgpt-default).consistency.distinctiveness.min_score(varsayılan0.40).consistency.distinctiveness.metric(varsayılancosine).consistency.distinctiveness.action_on_low_score(varsayılanwarn).
Üretime nasıl entegre olur
Hat üç anda çalışır:
- Üretim sonrası — her taze persona kütüphaneye düşmeden önce audit'lenir ve (varsayılan olarak) provocation-test edilir.
- Düzenleme sonrası — her refine yeni bir audit tetikler;
run_on_updateaçıksa testler yeniden çalışır. - Talep üzerine — bir QA akışı için endpoint'leri doğrudan çağır veya izleme için toplu çalıştır.
Bir persona üretim-anı audit'i başarısız olduğunda, hat üretimi en fazla üç
kez yeniden dener. Üç denemeden sonra persona kullanıcıya flagged durumunda
teslim edilir — Moonborn sessizce sonsuza dek yeniden üretmez veya çıktıyı
otomatik mutasyona uğratmaz.
Webhook olayları
İki olay başarısızlıkları entegrasyon katmanına çıkarır:
persona.audit_failed— bir audit çalıştırması yapılandırılmışmin_overall_scorealtına düştüğünde yayılır.persona.test_suite_failed— bir provocation çalıştırması yapılandırılmışfail_thresholdaltına düştüğünde yayılır.
İkisi de standart webhook kontratını taşır: HMAC-SHA256 imzalı, üstel backoff'la beş tekrar, dead-letter queue.
Dashboard
Üç toplam endpoint QA dashboard'unu besler:
GET /api/audits/summary # audit / provocation / distinctiveness boyunca 7 günlük geçme oranları
GET /api/audits/trends # zaman serisi kalite metrikleriTarife
| Yetenek | Free | Pro | Team | Enterprise |
|---|---|---|---|---|
| Audit (5 boyut) | ✓ | ✓ | ✓ | ✓ |
| Provocation suite (varsayılan 33 test) | ✓ | ✓ | ✓ | ✓ |
| Distinctiveness (chatgpt-default baseline) | — | ✓ | ✓ | ✓ |
| Özel baseline'lar | — | ✓ | ✓ | ✓ |
| Özel provocation testleri | — | — | ✓ | ✓ |
| Periyodik test çalıştırmaları (haftalık cron) | — | — | ✓ | ✓ |
| Org çapında distinctiveness karşılaştırması | — | — | ✓ | ✓ |
Dürüst kapsam
Kalite hattı bir runtime kalite geçididir, kod üzerinde bir CI geçidi değildir. Her commit'te audit çalıştıran bir GitHub Action yok; hat ürün katmanında üretim ve refine olayları üzerinde çalışır. Ayrıca persona kalite puanları için kamuya açık bir liderlik tablosu yok ve audit başarısızlığındaki üç-deneme yeniden denemenin ötesinde otomatik yeniden üretim yok — tasarım gereği.
Sıradaki
- Kavram girişi: runtime drift eşlikçisi için Voice fingerprint.
- Marka ekibi varyantları için bunu Marka ses varyantları ile eşleştir — her fork bağımsız audit'lenir.