Deneyimlerinde, bir büyük dil modeli (LLM) ile desteklenen konuşmalar aracılığıyla dinamik karakter etkileşimleri oluştur.
UEFN’deki Scene Graph persona_component’ı ve Persona Değiştiricisi birlikte, oyuncuların adanda sesli sohbet aracılığıyla etkileşimde bulunabileceği bir LLM sağlar. Seslendirilen kimlik, kullanıcı arayüzünde, adanda bir tür oyuncu olmayan karakter (NPC) olarak işlev gören bir simge ile temsil edilir.
Bu özelliklerin, dinamik karakterler oluşturacak şekilde birleşimi konuşmalar olarak bilinir.
LLM arayüzü, oyuncuların bu NPC’lerle özel konuşmalar ve etkileşimler içinde bulunabilmesini ve böylece her oyun oturumunda benzersiz bir deneyim oluşturulabilmesini sağlar. Bu deneyimler, oyuncuların bir kafede rekabetçi bir baristayla etkileşime girmesinden huysuz bir kediye sahibini bulma konusunda yardım etmelerine kadar birçok çeşitli durumu içerebilir. Sağladığın karakter istemleri aracılığıyla bu karakterlerin personasını tanımlayabilirsin.
Büyük Dil Modelleri (LLM) Hakkında
LLM, insan dilini işleyen ve çıktı olarak sağlayan eğitilmiş bir modeldir. LLM, öğrenme işlemini, dilin nasıl kullanıldığını gösteren büyük bir kütüphane olarak düşünebileceğin çok büyük bir metin veri setini kullanarak gerçekleştirir.
Model, dili, bir sonraki metin birimini (buna jeton adı verilir) adım adım tahmin ederek üretir ve böylece bir istem için eksiksiz bir yanıt oluşturur. Eğitim sırasında, dildeki desenleri ve ilişkileri öğrenmek için bir algoritma kullanır. Bu eğitim sistemine makine öğrenimi adı verilir.
LLM ne yapar?
LLM şunları yapar:
Dili işler ve anlar.
Metin oluşturur.
Soruları cevaplar.
Metni özetler ve çevirir.
Makine öğrenimi, UEFN’deki persona bileşeniyle birleştirildiğinde şunları yapar:
Oyuncular için etkileşimli bir LLM oturumu sağlar.
Girdilerinden kişilikler oluşturur.
Oyuncular ile NPC’ler arasında doğaçlama konuşmalar için mekanikler sağlar.
Oyuncuların personayı duyabilmesi için metinden ses oluştururken, LLM’nin oyuncuyu dinleyebilmesi için de sesi metne dönüştürür.
Programın yanıtına dayalı olarak olaylar oluşturur.
Neler Yapabilirsin?
LLM destekli özelliği şunlar için kullanabilirsin:
Bir persona oluşturmak için açıklamalar girme.
Bir LLM’nin yanıtına göre tetiklenen olaylar ekleme.
Personayı, bir NPC Karakter Tanımları kullanarak fiziksel bir NPC’ye bağlama.
LLM konuşması, önceden hazırlanmış sözcüklere bağımlı karakterler oluşturma zorunluluğunu ortadan kaldırarak, duyarlı ancak uyarlamalı karakterler oluşturma olanağını sunmaktadır.
Bu dinamik davranış, Konuşma cihazı ile oluşturduğun önceden belirlenmiş konuşmalar ile seçeneklerden farklıdır. Konuşma cihazında, NPC’nin nasıl yanıt vereceğine ilişkin temel davranışı manuel olarak ayarlaman gerekirken LLM, doğal ve doğaçlama konuşmalar üretir.
Özellik ayrıca, oyuncuların persona temelli NPC’leri tanımlamaları, nasıl konuşma başlatılacağını anlamaları ve NPC’yle konuştuklarında bunu fark etmeleri için varsayılan bir kullanıcı arayüzü içerir.
Personaları Karakter İstemleri ile Tanımla
Persona, adandaki LLM karakterinin kişiliğini ve özelliklerini içerir. Bir persona oluşturmanın anahtarı, cihazdaki istemlere ve bilgilere dayanmaktadır. İstemler ve bilgiler, NPC’nin kim olduğu (oynadığı rol) ve neler bildiği konusunda bağlam sağlar. LLM, personanın nasıl yanıt vereceğini prova etmek için tanımladığın persona ile birlikte onun oyuncu girdilerini de kaydeder.
Örneğin, aşağıdaki personaları oluşturabilirsin:
Oyuncuları bir düğmeye basmaya ikna etmeye çalışan gizemli bir kozmik varlık.
Rakibinin kapanmasını sağlamayı kendisine görev edinmiş hırslı bir barista.
Sahibini uzaylıların kaçırdığından emin olan huysuz bir kedi.
Oyunculara Fortnite’ta oluşturmanın temellerini öğreten mizahi bir Fort eğitmeni.
Haydut tavşanlardan uzak durmaya kararlı olan korkmuş bir havuç.
Bay Düğme LLM oynanış örneği için State of Unreal 2025 sunumuna göz atabilirsin.
Her karakter tanımı için bir adet persona oluşturabilirsin. İstemler aracılığıyla adandaki başka bir persona hakkında farkındalık yaratabilirsin.
İstemler oluşturmaya yönelik ipuçları aşağıdadır:
LLM’nin üstleneceği rolü anlayabilmesi için personayı net bir kimlik, değerler ve özelliklerle tanımla.
LLM’nin, fikirleri, daha etkili bir şekilde başvurabileceği ayrı öbekler olarak gruplandırabilmesi için istemleri modüler bölümlere ayır. Kimlik, geçmiş, motivasyon, diyalog ve oynanış gibi bölümler düşün.
Açıklamaları kısa, net ve ilgili tutmaya çalış.
Önemli ayrıntılar için biraz tekrardan yararlan. Bir bilgiye birkaç kez atıfta bulunursan LLM önemli bir noktayı daha iyi anlayabilir.
LLM’ye tarzı, tempoyu ve tekrarlanabilir sözel desenleri vermek için diyalog örnekleri ve slogan niteliğinde ifadeler sağla.
LLM, markdown sözdizimi adı verilen bir yazım stiliyle eğitilir. Bu öğrenme stili nedeniyle istemleri, bu sözdizimini göz önünde bulundurarak yazmak faydalı olacaktır. Örneğin, bir sözcüğü vurgulama amacıyla koyulaştırmak için çift yıldız kullan.
Desen tanıma için kilit nokta tutarlılıktır. LLM sözdizimini ilk işlediğinde onu kaydeder. LLM, eşleşen sözdizimini her fark ettiğinde onun desen işlemesi, sözdizimini daha iyi vurgulamak ve ona anlam vermek için eğitilir.
Kişilik Komutu
Bir karakterin temel kişilik özelliklerini ve bildiği bilgileri tanımlamak için kişilik istemleri ekle. Bu istemler, LLM’nin işleyeceği kısıtlamalar (bir yanıtın on sözcükle sınırlandırılması gibi) içerebilir.
Eklenecek kişilikler düşünürken, LLM destekli karakteri nasıl kullanmak istediğini ve karakterin deneyimini nasıl geliştirebileceğini düşün. Oyuncuların sorabileceği "Neden buradasın?" gibi soruları öngörmeye çalış.
Sağlayabileceğin bilgilerin sayısının sınırı yoktur. LLM, sağladığın bilgiler ile birlikte bir oyun oturumu sırasında oyunculardan gelen istemleri de alır. Tüm bu bilgiler, LLM bir oyuncuya yanıt vermeden önce LLM içinde ayrıştırılır.
Aşağıdaki tabloda kişilik istemi örnekleri yer almaktadır.
| Persona NPC’si | İstem Örnekleri |
|---|---|
Gizli Kozmik Varlık (Bay Düğme) |
|
Saklanan Havuç |
|
Bir olay sırasında etkinleşen ilave istemler (örneğin, bir oyuncu düğmeye basmadan odadan ayrılmaya çalıştığında verilen istem yanıtı) için Verse’ü kullanabilirsin.
Karakter tanımından gelen istemler yalnızca çalışma zamanında kullanılabilir. Verse ile, dinamik bir anlayışa yönelik istemler ekleyebilirsin.
Personanın nasıl yanıt verdiğini görmek için İstem Editörü Aracı’nı kullan veya adanda oynanış testi yap, ardından daha güçlü bir sonuç için istemleri yinele.
Ses Modelleri
36 Fortnite kıyafeti için tutarlı sesler ve personalar bulunmakta olup bu kıyafetlere zamanla yenileri de eklenecek. Bu Fortnite karakterleri, ilk andan itibaren beklediğiniz şekilde ses çıkaracak ve tepki verecek.
Bir Fortnite karakteri seçtiğinde kişilik istemi, karakter hakkındaki bilgilerle (örn. karakterin iletişim tarzı, ses tonu, karakter arketipi, mizah tarzı vb.) önceden doldurulur.
Bir Fortnite karakteri seçmen şunları yapabileceğin anlamına gelir:
Karakterin sesini duymak için Çal düğmesini seçebilirsin.
Yüz animasyonları ekleyebilirsin.
Kesinti kuralları ekleyebilirsin.
Fortnite karakterlerinin çoğu düzenlenebilir kişiliklere sahiptir, dolayısıyla mevcut kişilik ve ses özellikleri listesine ekleme yapabilir veya karakterlerin kişiliklerini Kişilik İstemi’nde baştan sona düzenleyebilirsin.
41.30 sürümünden itibaren Fortnite’taki fikri mülkiyetle korunan karakterler düzenlenemeyecektir. Fortnite’ta fikri mülkiyetle korunan ve düzenlenemeyen karakterlerin tam listesini aşağıda bulabilirsin:
Ajan Jonesy
Muzaffer
Kızıl Felaket Yürekdeşen
Japon Balığı
Amigo Özgür
Çifte Bela
Pankek
Meka Takım Lideri
Midas
Gizemli
Kuzgun
Savaş Balığı
Ziggy
Domates Kafa
Gözalıcı Bombacı
Minnoş Takım Lideri
Kahraman Umut
Kurallar ve Denetleme
Konuşmaları kullanırken personaların, istemlerin ve karakter tasarımların Fortnite Geliştirici Kuralları’na, Epic Topluluk Kuralları’na ve Epic İçerik Kuralları’na uygun olmalıdır. Karakterlerinin verdiği yanıtların Fortnite Geliştirici Kuralları ile uyumlu olması için modelin üzerine güvenlik katmanları ekledik.
Konuşmaların kullanımına ilişkin kurallar hakkında daha fazla bilgi edinmek için Fortnite Geliştirici Kuralları’nın 1.22 no’lu kuralına bakabilirsin.
Bu kurallara uymayan geliştiriciler, hesaplarının yasaklanması da dahil olmak üzere çeşitli yaptırımlara tabi tutulma riskiyle karşı karşıya kalacaklardır.
LLM konuşmaları şu anda hiçbir marka adası için desteklenmemektedir. Marka adaları oluşturma konusunda daha fazla bilgi edinmek için Oyun Koleksiyonları kısmına bakabilirsin.
İstem Editörü Aracı ve Verse API’si
Sistem ve karakter istemleri, İstem Editörü Aracı ve Verse aracılığıyla işlev gösterir.
İstemlerini düzenlemeye başlamak için bir NPC Karakter Tanımı oluşturman ve bir Persona Değiştiricisi eklemen gerekir. Değiştirici, LLM’nin kontrol ettiği bir persona bileşeni ekler. Bu değiştirici yalnızca Özel NPC Karakter Türü için kullanılabilir. Karakter tanımını oluştur ve onu otomatik olarak bir Karakter Çıkma Yeri cihazına eklemek için görünüm penceresine sürükle. Karakter tanımları hakkında daha fazla bilgi edinmek için NPC Karakter Tanımları sayfasına bakabilirsin.
Değiştirici, kişilik istemlerini eklemen için bir Karakter Bilgileri açılır menüsü içerir. Bu bölüm, İstem Editörü Aracı’na da erişim sağlar.
Karakter istemlerini, istemlerin üzerine yazmayı önlemek için karakter tanım penceresine veya Karakter Çıkma Yeri cihazının Ayrıntılar paneline ekle.
İstediğin personayı oluşturmana yardımcı olacak şekilde karakter tasarımını hızla yinelemek için İstem Editörü Aracı’nı kullanabilirsin, çünkü bu araç, personayı test etmek için bir oturum başlatmanı gerektirmez. Diyelim ki, personanı bir restoranda kasiyer olarak tanımlamak için ona istemler ekliyorsun. Personanın yanıtında ise onun mutfaktaki ustalığını mükemmelleştirmekten bahsettiğini fark ediyorsun. Burada bir ayarlama yapmak için personanın yalnızca kasada çalıştığını belirten bir satır ile mutfakta kimin çalıştığını belirten bir başka satır daha ekleyebilirsin.
Bir oyuncunun bir persona ile konuşabilmesi için karakter tanımında özel bir Verse davranışı ayarlaman gerekir.
Bileşene dair Verse API’si, tanım ile aynı ayarları içerir ancak aşağıdaki ilave seçeneklere sahiptir:
Varsayılan çalışma zamanı dışında istemler oluşturma. Bu, olay istemleri seçeneğini sağlar.
İstemleri çalışma zamanında ekleme veya kaldırma. Bu, kişilik değişikliği veya bozulmuş bilgiler gibi gelişen bir anlatının da oluşturulmasına yardımcı olabilir.
Yapılandırılmış çıktılar oluşturma. Bu, oynanışı daha da fazla yönlendirir (örn. oyunun ne zaman bitirileceği).
Oyuncu için persona bileşeni kalıcı değildir. LLM oturumu, oyundaki her raunttan sonra temizlenir.
Editör ve Verse hakkında daha fazla bilgi edinmek için İstem Editörü Aracını Kullanma ve konuşmalar modülü Verse API Referansı bölümlerine bakabilirsin.
Sıradaki
Kendi sürükleyici persona temelli NPC’ni oluşturmaya başla ve ilerledikçe özel bir davranış oluşturma hakkında daha fazla bilgi edin!