Konuşmaları kullanmaya başlamanın en hızlı yolu, yeni bir NPC Karakter Tanımı oluşturmak ve Persona Değiştiricisi’ni NPC Karakter Değiştiricileri listesine eklemektir. Persona Değiştiricisi’nde personanın karakter bilgilerini, kişiliğini, konuşmak için kullandığı sesi ve konuşma sırasında kesintileri nasıl yöneteceğini tanımlayabilirsin.
NPC Karakter Tanımı Oluşturma
Bir NPC Karakter Tanımı oluşturmak için şu adımları izle:
Projenin içerik klasörüne git ve İçerik Çekmecesi içinde sağ tıkla.
Açılır pencere menüsünde Yapay Zekâ > NPC Karakter Tanımı seçeneğine git.
Karakter tanımını "PersonaNPCDefinition" olarak adlandır, ardından NPC’nin özelliklerini düzenlemek için önizleme resmine çift tıkla.
Sekmeyi kapatmadan önce NPC Karakter Tanımı’nda yaptığın değişiklikleri kaydettiğinden emin ol.
NPC Karakter Tanımına Persona Değiştiricisi Ekleme
PersonaNPCDefinition’ına bir Persona Değiştiricisi eklemek için şu adımları izle:
NPC Karakter Değiştiricileri > Değiştiriciler’e git ve bir değiştirici eklemek için AddElement (+) simgesine tıkla.
Yeni eklenen Değiştirici dizinini bul (başka değiştirici eklenmediyse genellikle Index[2]) ve açılır menüden Persona Değiştiricisi’ni seç.
Değişiklikleri NPC Karakter Tanımı’na kaydet.
PersonaNPCDefinition’ın artık bir personası vardır. Persona > Karakter Bilgileri’nin yanındaki açılır menü okunu seçerek personanın Kişilik İstemi ile Bilgi İstemi’nin tanımını görebilirsin. Bunlar doğrudan Değiştirici’de veya İstem Editörü Aracı üzerinden düzenlenebilir. İstem editörü aracı, NPC’nin personasıyla konuşmalar simüle ederek onun kişiliğini ve ona dair bilgileri geliştirmene yardımcı olur ve istediğin NPC davranışlarını hızla yinelemeni sağlar.
Ayrıca, personanın sesini belirlemek için Ses Modeli’ni, personanın çakışan istemleri nasıl yöneteceğini belirlemek için de Kesinti Kuralı’nı ayarlayabilirsin.
Personanı Adlandırma
Personana bir ad eklemek için bir kullanıcı arayüzü değiştiricisi eklemen ve Görünen Ad’ı ayarlaman gerekir.
NPC Personanla Etkileşime Geç
NPC personanla etkileşime geçmeye başlamak için İstem Editöründe Düzenle’ye tıkla.
Bunun sonucunda İstem Editörü Aracı açılacak ve böylece NPC personanla hemen etkileşime geçmeye başlaman mümkün olacaktır.
Burada istem editörü aracının ortasındaki metin kutusuna bir istem yazabilir ve NPC personanın yanıtlarını görebilirsin:
Burası, oluşturmakta olduğun persona ile doğrudan etkileşime geçebileceğin ve bu persona Karakter Çıkma Yeri’ne eklendikten sonra onun oyun dünyasında nasıl yanıtlar verdiğini simüle edebileceğin ilk yerdir.
NPC Personana Kişilik Ekle
Aşağıda, özel bir persona oluşturmak için kişilik istemine ekleyebileceğin bilgi örnekleri yer almaktadır. Varsayılan bir ses ve persona ile birlikte gelen mevcut Fortnite karakterlerinden birini de kullanabilirsin. Fortnite karakterlerinden birini kullanmak için şunları yap:
Persona Değiştiricisi’ni Karakter Tanımı’na ekle.
Karakter Kozmetiği’ne bir Fortnite karakteri ekle. Karakterin kişilik bilgileri otomatik olarak Kişilik alanında görünür.
Karakterin kişiliğini eklemek için bu adımlar yukarıdaki sıraya göre uygulanmalıdır.
Karakterin kişiliğini silersen öğeni silip her şeye sıfırdan başlamadan onu geri getirmenin bir yolu yoktur.
Kişilik
Özelliklerin ve davranışların yapılandırması, bir personanın benzersiz kişiliğini ve davranışlarını oluşturur.
Bir karakterin geçmişini, yapmakta olduğu şeyler için motivasyonlarını ve çevresindeki dünyayla nasıl etkileşimde bulunduğunu düşün.
Verse’ü, LLM karakterinin kişiliğini çalışma zamanında bir alıcı ve ayarlayıcı olarak kabul edilebilecek olan kişilik değişkeniyle değiştirmek için de kullanabilirsin.
# Declare the Message that we will add to the Personality at runtime
PersonalityAddition<localizes>:message = "Here are my new orders for you, Persona"
# Declare a separator we will use later when we Join() our two Messages. This will be inserted between the two Messages
MessageSeparator<localizes>:message = "\n"
persona_npc_behavior := class(npc_behavior):
# This function takes a Message and adds it to the current Personality of the NPC that is running this behavior
ModifyPersonality(Addition:message):void=
if:
Daha fazla bilgi edinmek için Bir Konuşmaya NPC Ekle sayfasına göz at.
Örneğin, bir falcı personası oluşturmak için aşağıdaki istemleri ekleyebilirsin:
Kişilik Özellikleri:
Adın Gizellda.
Gizemli bir havan var.
Algıların güçlü ve düşünceli birisin.
Gelecekten haber vermek senin için yalnızca bir iş değil, müşterilerine bilgi ve anlayış aktarmanın senin misyonun olduğunu hissediyorsun.
Müşterileri selamlarken bilmecelerle konuşuyorsun.
Mizah Tarzı:
Keskin bir zekân ve kendini ifade etme konusunda sade bir tarzın var. En komik replikler, müşterileri selamlarken söylediklerin.
Bir müşterinin geleceği belirsiz olduğunda yıldızları suçluyorsun. (Orion şu anda Büyük Ayı’dan içiyor. Onun ötesinde pek bir şey göremiyorum.)
Karakter Biyografisi:
Tahmin istendiğinde oyuncunun falına bakıyorsun.
Sen yardımsever ve şefkatli bir falcısın.
Çölde büyüdün. (Oyuncu çöl hakkında herhangi bir şeyden bahsederse çölün güzelliği hakkında bir haiku oku.)
Fiziksel Tanım:
Başında püsküllü bir bandana var. Ayak bileği hizasında salaş bir elbise giyiyorsun.
Kırklı yaşlarında bir kadınsın.
Bu kişiliği ve bilgileri NPC personana ekle ve yanıtın nasıl değiştiğini gör.
Ses Modelleri
Persona değiştiricisi, Varsayılan Ses aracılığıyla NPC karakterin için benzersiz bir ses oluşturmanın bir yolunu sunar. Bir Fortnite karakteri kullandığında, Çal düğmesini seçerek karakterin sesini dinleyebilirsin.
LLM karakterin için özel bir ses oluşturmak istediğinde karakterin nasıl konuştuğunu düşün. Bu, iki kategoriye ayrılabilir; ses tonu ve iletişim tarzı.
Ses tonu genellikle tını olarak adlandırılır ve bir sesin algılanan kalitesini ifade eder. Bunu, her insanın fiziksel ve genetik özelliklerinden kaynaklanan benzersiz sesi olarak düşünebilirsin. Bu özellikler sesi şekillendirir ve ona renk katar.
İletişim tarzı, bilginin nasıl iletildiğine dair özellikleri ifade eder. Bu, bir kişinin veya karakterin bilgiyi nasıl aldığını, çatışmaya ve geribildirime nasıl tepki verdiğini ve aynı zamanda fikirlerin nasıl paylaşıldığını da içerir.
Aşağıda ses tonu ve iletişim tarzı örnekleri yer almaktadır.
Ses Tonu | İletişim Tarzı |
Perde | Pasif / İlgili |
Ton | Çatışmacı / Sakin |
Tempo | Kayıtsız / Sempatik |
Vurgu | İddialı / Emin Değil |
Aksan | Tutarlı / Tutarsız |
İnişli Çıkışlı Ses | Dürüst / Güvenilmez |
Monoton | Kısa ve öz / Dağınık ve belirsiz |
Sesin nasıl olması gerektiği ve karakterin nasıl iletişim kurduğu hakkında ne kadar çok ayrıntı verirsen karakterin, senin oyununda oynadığı rolde o kadar inandırıcı olur.
Mevcut Fortnite karakterlerinin ve her karakterin iletişim tarzının ve ses tonunun tam listesini görmek için aşağıdaki Fortnite Karakteri bölümüne bakabilirsin.
Yapılandırılmış Çıktı
LLM karakterinin oyuncularla istem editöründeki Yapılandırılmış Çıktı sekmesi aracılığıyla nasıl etkileşime girdiği konusunda daha da fazla kontrolün vardır. Yapılandırılmış çıktı, LLM’nin davranış koduna daha fazla yapı eklemenin bir yolunu sunar. Bu yapılar, LLM karakterinin soruları nasıl yanıtladığını belirler. Bu önemlidir çünkü LLM karakterleri, oyuncunun girdisine (sesli veya yazılı) bağlı olarak farklı yanıtlar verir.
LLM’nin sese verdiği yanıtın doğru olduğundan ve kodda aynı anda birden fazla yapılandırılmış çıktı döndürebildiğinden ancak istem editöründe döndürmediğinden emin olmanız uygun olacaktır.
Örnek bir kullanım senaryosu, oynanışı bir LLM karakterinin arkasına kilitlemek olabilir. Bir oyuncunun gizli şifreyi veya bir bilmecenin cevabını bilip bilmediğini belirlemek için. Yapı daha sonra oyuncunun ilerleme seviyesini sorgulayan bir RegisterAction() fonksiyonunda kullanılır. Sorgu sonuçlarına göre LLM karakteri oynanışa erişimi reddeder veya sağlar.
İstem editörünü kullanarak bir yapı oluşturmak için şunları yap:
İstem editörü aracında Yapılandırılmış Çıktı’yı seç.
Yapı alanını eklemek için +Ekle düğmesini seç.
Karaktere bir yapı eklemek için + düğmesine tıkla.
Yapı alanını seç ve yapı açılır menüsünden bir yapı türü seç.
Açılan boş alanda yapı türüne bir değişken ekle. Bu değişken, işlevsellik sağlamak veya olaylar tetiklemek için sorgulanabilir.
Verse kodunda bu karakterin yapılarına referans verebilir veya yapıları doğrudan koda ekleyebilirsin.
Persona Verilerini Verse Dosyasına Aktar
İstem editörü, yapı verilerini bir Verse dosyasına aktarmanın bir yolunu da sunar. Bu, bir karakter için bir modül biçiminde herkese açık bir yapı oluşturur. Bu dosya projeler genelinde paylaşılabilir veya kullanılabilir.
Yapılandırılmış çıktını bir Verse dosyasına aktarmak için şunları yap:
İstem editörü araç çubuğundaki Dışa Aktar simgesini seç.
Verse dosyası için bir klasör seç.
Dosya klasöre aktarıldığında personaname_BURADALLMADIN.verse şeklinde adlandırılacaktır.