Uygulamayı aç
Moonborn — Developers

Sentetik kullanıcı paneli kur

Beş ayrık kullanıcı persona'sından oluşan bir panel oluştur, yapılandırılmış görüşme yürüt, panel tek bir tona çökmeden yanıtları topla.

Sıradan bir "yapay zeka persona paneli" beş soru sonra tek bir iyimser, genel cevaplayıcıya kayar. Moonborn'la bunu engelleyen üç şey vardır: persona'lar belirleyicidir (deterministik) (her seferinde aynı kişi konuşur), distinctiveness (ayırt edicilik) ölçülür (panel üyeleri birbirine ne zaman benziyor görürsün), her yanıtın drift zarfı (envelope) vardır (karakterin kendi tonundan ne zaman çıktığı belli olur).

Bu rehber beş ayrık kullanıcı persona'sından oluşan bir deneyim araştırma paneli kurar, panele aynı soruları sırayla sorar, yanıtları toplar ve paneli ileride tekrar kullanmak için saklar.

Bu rehberi bitirdiğinde

  • Beş ayrık kullanıcı persona'sından oluşan bir panel kurabileceksin.
  • Panelin distinctiveness denetiminden geçtiğinden emin olabileceksin (panel üyeleri birbirine çok benzemiyor).
  • Aynı soruları her persona'ya sırayla soran bir görüşme akışı yazabileceksin.
  • Yanıtları transkriptlere toplayıp aşağı akış analiz aracına geçirebileceksin.
  • Paneli haftalar sonra yeni sorularla yeniden çalıştırabileceksin.
  • Sentetik panelin nereye kadar yetip nerede gerçek katılımcıya ihtiyaç duyduğunu ayırt edebileceksin.

Ön koşul: API anahtarı, çalışma alanı kimliği. Persona üretme akışını henüz bilmiyorsan önce İlk persona'yı baştan sona üret rehberine bak.

1. Panelin demografik + psikografik yelpazesini taslakla

Tipik bir B2B SaaS değerlendirmesi paneli için beş ayrık karar profili:

#KimKarar tetikleyici
1Kıdemli bireysel katkıcı (IC) mühendisYapay zeka araçlarına şüpheci, iki kez sağlayıcıya bağımlılıktan (vendor lock-in) yandı
2Mühendislik müdürüSlack'teki ekip duygusuna ve Hacker News yorumlarına bakar
3Bağımsız kurucuFiyat hassas, her şeyi karşılaştırır
4Araştırma lideriHipotezi test etmeden almaz
5Yeni işe alımEkibinin onayı olmadan karar vermez

2. Persona'ları paralel üret

Beş niyet cümlesini paralel personas.create çağrısıyla geçir:

const briefs = [
  'Orta büyüklükte bir SaaS\'ta 38 yaşında kıdemli arka uç (backend) mühendisi. Yapay zeka araçlarına şüpheci. İki kez sağlayıcıya bağımlılıktan yandı.',
  '34 yaşında mühendislik müdürü. Aracı Slack\'teki ekip duygusuna göre alır. Sözleşme imzalamadan önce HN yorumlarını okur.',
  '29 yaşında bağımsız kurucu, fiyat hassas. Hep ücretsiz katmandan başlar, gerekirse karşılaştırma tablosu kurar.',
  '41 yaşında araştırma lideri. Her aracı kendi hipotezine karşı test eder. Pilot olmadan bütçe kullanmaz.',
  '24 yaşında yeni işe alım, ürün ekibinde ilk yıl. Karar vermeden önce kıdemli ekip arkadaşının onayını arar.',
];
 
const panel = await Promise.all(
  briefs.map((intent) =>
    client.personas.create({ intent, workspaceId: 'ws_...' }),
  ),
);
 
console.log(panel.map((p) => p.id));

Üretim genelde 30–90 saniye sürer ve paralel koşar.

3. Panelin ayırt ediciliğini denetle

Görüşmeyi yürütmeden önce panel üyelerinin birbirinden ayrık olduğunu doğrula. İki persona birbirine < 0.30 puan veriyorsa kopya hissi veren yanıtlar üretir.

const warnings: Array<{ a: string; b: string; distance: number }> = [];
 
for (let i = 0; i < panel.length; i++) {
  for (let j = i + 1; j < panel.length; j++) {
    const cmp = await client.consistency.compare({
      fromPersonaId: panel[i].id,
      toPersonaId: panel[j].id,
    });
    if (cmp.value < 0.30) {
      warnings.push({ a: panel[i].id, b: panel[j].id, distance: cmp.value });
    }
  }
}
 
if (warnings.length > 0) {
  console.warn('Yakın-kopya persona\'lar:', warnings);
}

4. Görüşme soru kümesini yaz

Açık uçlu sorular sentetik panelde çoktan-seçmeli sorulardan çok daha iyi sonuç verir; karakter kendi cümlesini kurar ve özgün ifadelerini bırakır.

const questions = [
  'Yeni bir geliştirici aracı değerlendirirken neye güvenirsin?',
  'Para ödediğin bir aracı bıraktığın son anı anlat. Seni ne ayırttı?',
  '"İyi dokümantasyon" sana göre nasıl görünür? Somut ol.',
  'Bir aracı pilot olarak değil de üretime (production) aldığın an nedir?',
  'Bir yapay zeka ürününe güvenmek için neye ihtiyacın var?',
];

5. Görüşmeyi her persona'ya karşı sırayla yürüt

Her persona kendi oturumunu alır — çapraz konuşma yok, biri diğerinin yanıtını duymaz.

type Transcript = { personaId: string; rows: Array<{ q: string; a: string; drift: number }> };
 
const transcripts: Transcript[] = [];
 
for (const persona of panel) {
  const session = await client.chat.sessions.create({ personaId: persona.id });
  const rows: Transcript['rows'] = [];
 
  for (const q of questions) {
    const reply = await client.chat.messages.create({
      sessionId: session.id,
      content: q,
    });
 
    rows.push({ q, a: reply.content, drift: reply.driftScore });
 
    if (reply.driftAlert) {
      console.warn(`Drift on ${persona.id}: score ${reply.driftScore}`);
    }
  }
 
  await client.chat.sessions.end({ sessionId: session.id });
  transcripts.push({ personaId: persona.id, rows });
}

6. Sonuçları topla ve aşağı akışa ver

for (const t of transcripts) {
  console.log(`\n=== ${t.personaId} ===`);
  for (const row of t.rows) {
    console.log(`S: ${row.q}`);
    console.log(`C: ${row.a}`);
    console.log(`   drift=${row.drift.toFixed(2)}\n`);
  }
}

Tematik analiz Moonborn'un işi değildir. Transkriptleri kendi araştırma aracına (Dovetail, Reframer, Jupyter notebook) borulamış olacaksın — kümeleme, tema kodlama ve içgörü çıkarma orada yapılır.

7. Paneli yeniden çalıştırmak için sakla

Persona kimliklerini araştırma aracında bir "panel" nesnesi olarak sakla. Aynı panel haftalar sonra yeni sorularla yeniden çalıştırılabilir — persona'lar ve voice fingerprint'leri kalıcıdır, böylece boylamsal tutarlılık gerçek olur.

// Sözde kod — kendi araştırma aracında
await researchTool.panels.create({
  name: 'Developer Tool Buyers — Q3 2026',
  personaIds: panel.map((p) => p.id),
  notes: 'Beş ayrık karar profili; distinctiveness audited >= 0.30',
});

Sentetik panel ne yapar, ne yapmaz

- Hipotezleri hızlı ve ucuz yüzeye çıkarır.
- Açık uçlu sorulara çeşitli karakter cevapları üretir.
- Aynı paneli zaman içinde tekrar çalıştırarak
  boylamsal karşılaştırma sağlar.
- "Bu mesaj farklı kullanıcı tipleri için
  nasıl okunuyor" gibi sorulara hızlı bir
  ön eleme verir.

Plan gereksinimi

Pro ve üzeri planlar — ayırt edicilik karşılaştırması ve kalıcı voice fingerprint'ler bu seviyede etkindir.

Başardın

Elinde beş ayrık per_… kimliği, hepsinin distance >= 0.30 skoru, beş soruluk bir görüşme transkripti ve panelin yeniden çalıştırılabilir hâli varsa rehber bitti.

Sonraki adım

Sentetik kullanıcı araştırması — kullanım senaryosu

Araştırma ekiplerinin Moonborn'u nasıl kullandığına dair anlatım.

Open →
Çok karakterli sahneler

Beş persona'yı aynı sahnede konuşturmak — odak grup simülasyonu deseni.

Open →
Distinctiveness kavramı

Persona'lar arası uzaklık nasıl ölçülür, eşikler ne anlama gelir.

Open →
Voice fingerprint kavramı

Parmak izi nasıl üretilir ve boylamsal panel için neden önemlidir.

Open →