Document Details

PreciseStar

Uploaded by PreciseStar

Trabzon Üniversitesi

Tags

prompt writing ChatGPT artificial intelligence technology

Full Transcript

Etkili Prompt Yazma Rehberi [[https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/) İçindekiler - [[ChatGPT 4o Nedir?]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4o_Nedir)...

Etkili Prompt Yazma Rehberi [[https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/) İçindekiler - [[ChatGPT 4o Nedir?]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4o_Nedir) - [[Neden Etkili Prompt Yazma Önemlidir?]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Neden_Etkili_Prompt_Yazma_Onemlidir) - [[Prompt Yazmanın Temel İlkeleri]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Prompt_Yazmanin_Temel_Ilkeleri) - [[Kapsayıcı ve Açıklayıcı Olmak]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Kapsayici_ve_Aciklayici_Olmak) - [[Hedef Kitlenizi Tanıyın]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Hedef_Kitlenizi_Taniyin) - [[Açık ve Net İletişim]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Acik_ve_Net_Iletisim) - [[Etkili Prompt Yapısı]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Etkili_Prompt_Yapisi) - [[Giriş ve Konu Belirleme]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Giris_ve_Konu_Belirleme) - [[Ana Mesaj ve Detaylar]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Ana_Mesaj_ve_Detaylar) - [[Sonuç ve Eylem Çağrısı]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Sonuc_ve_Eylem_Cagrisi) - [[ChatGPT 4o Özelliklerinden Yararlanma]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4o_Ozelliklerinden_Yararlanma) - [[Çoklu Dil Desteği]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Coklu_Dil_Destegi) - [[Duygusal Anlayış ve Tepki Verme]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Duygusal_Anlayis_ve_Tepki_Verme) - [[Gerçek Zamanlı Konuşma ve Yanıtlar]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Gercek_Zamanli_Konusma_ve_Yanitlar) - [[Sık Yapılan Hatalar ve Kaçınma Yolları]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Sik_Yapilan_Hatalar_ve_Kacinma_Yollari) - [[Belirsiz İstekler]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Belirsiz_Istekler) - [[Fazla Karmaşık Yapılar]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Fazla_Karmasik_Yapilar) - [[Uygun Olmayan Dil Kullanımı]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Uygun_Olmayan_Dil_Kullanimi) - [[Detaylı, Kapsamlı ve Etkili Prompt Örnekleri]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Detayli_Kapsamli_ve_Etkili_Prompt_Ornekleri) - [[Günlük Konuşmalar İçin]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Gunluk_Konusmalar_Icin) - [[Profesyonel Yazışmalar İçin]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Profesyonel_Yazismalar_Icin) - [[Eğitsel İçerikler İçin]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Egitsel_Icerikler_Icin) - [[Kriz Yönetimi ve Acil Durumlar]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Kriz_Yonetimi_ve_Acil_Durumlar) - [[Müşteri Hizmetleri İçin]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Musteri_Hizmetleri_Icin) - [[Sonuç]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Sonuc) - [[Etkili Prompt Yazmanın Önemi]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Etkili_Prompt_Yazmanin_Onemi) - [[ChatGPT 4o'nun Gücü ve Kullanımı]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4onun_Gucu_ve_Kullanimi) - [[Etkili Prompt Yazma Yöntemleri]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Etkili_Prompt_Yazma_Yontemleri) - [[Öğrenme ve Gelişim Süreci]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#Ogrenme_ve_Gelisim_Sureci) - [[ChatGPT 4o'nun Etkili Kullanımı İçin İpuçları]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4onun_Etkili_Kullanimi_Icin_Ipuclari) - [[ChatGPT 4o ile Geleceğe Hazırlık]](https://www.gezginajans.com/chatgpt-4o-etkili-prompt-yazma-rehberi/#ChatGPT_4o_ile_Gelecege_Hazirlik) **ChatGPT 4o Nedir?** **ChatGPT 4o,** [[yapay zeka]](https://www.gezginajans.com/yapay-zeka/) teknolojilerinin en yeni ve gelişmiş örneklerinden biridir. Bu model, insan benzeri metinler üretme yeteneği ile dikkat çekmektedir. Ancak, bu güçlü aracın potansiyelinden tam anlamıyla faydalanmak için **etkili prompt yazmayı bilmek önemlidir.** Peki, neden etkili prompt yazmak bu kadar önemli? **Bu yazı ilginizi çekebilir: [*[OpenAI Yeni Ücretsiz GPT Modeli: GPT 4o (GPT 4 Omni)]*](https://www.gezginajans.com/openai-yeni-ucretsiz-gpt-modeli-gpt-4o-gpt-4-omni/)** **Neden Etkili Prompt Yazma Önemlidir?** **Etkili promptlar, ChatGPT 4o'nun doğru ve amaca yönelik yanıtlar üretmesini** sağlar. Kapsayıcı ve net bir prompt, modelin sizin isteklerinizi daha iyi anlamasına ve en uygun cevabı vermesine yardımcı olur. Bu, hem zaman kazandırır hem de elde edilen sonuçların kalitesini artırır. Şimdi, etkili prompt yazmanın temel ilkelerine bakalım. **Prompt Yazmanın Temel İlkeleri** **Kapsayıcı ve Açıklayıcı Olmak** Prompt yazarken, isteğinizi mümkün olduğunca açık ve detaylı bir şekilde ifade etmelisiniz. Bu, modelin beklentilerinizi anlamasına yardımcı olur ve daha doğru yanıtlar üretir. Örneğin, "Bana bir hikaye yaz" demek yerine, **"Bana 300 kelimelik, çocuklar için uygun, doğada geçen bir macera hikayesi yaz"** demek çok daha açıklayıcıdır. **Hedef Kitlenizi Tanıyın** Prompt yazarken, **hedef kitlenizi göz önünde bulundurmalısınız.** Bu, hem dilin tonunu hem de içeriğin yapısını belirler. Çocuklar için yazıyorsanız daha basit ve eğlenceli bir dil kullanmalısınız; profesyonel bir kitle için ise daha resmi ve bilgi verici bir ton tercih edilmelidir. **Açık ve Net İletişim** Promptların açık ve net olması, modelin doğru yanıtlar üretmesini sağlar. Belirsiz ifadelerden kaçının ve isteklerinizi doğrudan belirtin. "Bana biraz bilgi ver" demek yerine, "Bana dijital pazarlama stratejileri hakkında bilgi ver" demek daha net ve yönlendirici olacaktır. **Bu yazı ilginizi çekebilir: [*[Prompt Mühendisliği Nedir?]*](https://www.gezginajans.com/prompt-muhendisligi-nedir/)** **Etkili Prompt Yapısı** **Giriş ve Konu Belirleme** **Her prompt bir girişle başlamalıdır.** Bu, modelin hangi konuda bilgi vereceğini veya hikaye yazacağını belirler. Giriş, promptun geri kalan kısmının çerçevesini çizer. **Ana Mesaj ve Detaylar** **Promptun ana mesajı ve gerekli detaylar** bu bölümde belirtilir. Bu, modelin yanıtını şekillendirecek ve yönlendirecek olan kısımdır. Tüm önemli bilgiler ve beklentiler burada yer almalıdır. **Sonuç ve Eylem Çağrısı** Promptun sonunda, modelin **hangi türde bir sonuç veya yanıt üretmesini istediğinizi belirtin.** Bu, bir sonuca bağlanmasını ve gerektiğinde eyleme geçirilebilir bir yanıt verilmesini sağlar. sanat, grup, iç mekan içeren bir resim Açıklama otomatik olarak oluşturuldu **ChatGPT 4o Özelliklerinden Yararlanma** **Çoklu Dil Desteği** ChatGPT 4o, birden fazla dili destekler ve bu özelliği sayesinde farklı dillerde etkili yanıtlar üretebilir. Promptlarınızı bu özellikten faydalanarak yazabilirsiniz. Örneğin, **aynı anda hem İngilizce hem de Türkçe** **bilgi** isteyebilirsiniz. **Duygusal Anlayış ve Tepki Verme** ChatGPT 4o, **duygusal tonları anlama ve uygun tepkiler verme yeteneği**ne sahiptir. Promptlarınızı yazarken bu özelliği göz önünde bulundurun. Örneğin, "Üzgün bir arkadaşımı nasıl teselli edebilirim?" gibi duygusal içerikli promptlar oluşturabilirsiniz. **Gerçek Zamanlı Konuşma ve Yanıtlar** Model, gerçek zamanlı olarak konuşma ve yanıt verme yeteneğine sahiptir. Bu,** özellikle canlı sohbetler ve müşteri hizmetleri için** oldukça faydalıdır. Promptlarınızı bu doğrultuda yapılandırarak anında yanıtlar alabilirsiniz. **Bu yazı ilginizi çekebilir: [*[ChatGPT 4o Hayrete Düşürücü Özellikleri]*](https://www.gezginajans.com/openai-chatgpt-4onun-omni-hayrete-dusurucu-8-ozelligi/)** **Sık Yapılan Hatalar ve Kaçınma Yolları** **Belirsiz İstekler** Belirsiz promptlar, modelin **doğru yanıt vermesini zorlaştırır.** Bu nedenle, isteklerinizi mümkün olduğunca açık ve spesifik bir şekilde ifade edin. **Fazla Karmaşık Yapılar** Promptlarınızı yazarken **çok karmaşık yapılardan kaçının**. Basit ve anlaşılır cümleler kullanarak modelin yanıt vermesini kolaylaştırın. **Uygun Olmayan Dil Kullanımı** **Hedef kitlenize uygun olmayan dil kullanımı,** istenilen etkiyi yaratmaz. Promptlarınızda hedef kitlenizi göz önünde bulundurarak dil kullanın. **Detaylı, Kapsamlı ve Etkili Prompt Örnekleri** **Günlük Konuşmalar İçin** **Örnek 1:** "Bana bugün iş yerinde yaşadığın en ilginç olayı anlat. Detaylara girerek, olayın nasıl başladığını, geliştiğini ve sonuçlandığını açıklayabilir misin? Ayrıca, bu olayın senin üzerindeki etkilerini ve nasıl hissettiğini de belirtir misin?" **Örnek 2:** "Bu hafta sonu için planladığın aktiviteleri anlat. Hangi aktiviteleri yapmayı düşünüyorsun, kimlerle vakit geçireceksin ve bu aktiviteler seni nasıl hissettiriyor? Planladığın her aktivite için detaylı bilgi ver lütfen." **Profesyonel Yazışmalar İçin** **Örnek 1:** "Yeni ürünümüzün tanıtımı için müşteri tabanımıza göndereceğimiz bir e-posta taslağı oluştur. E-postada, ürünün benzersiz özelliklerini, kullanım alanlarını ve müşterilerimize sağlayacağı faydaları vurgula. Ayrıca, erken satın alma fırsatları ve indirimler hakkında bilgi ver. E-postanın sonunda, müşterileri daha fazla bilgi almak için web sitemize yönlendirecek bir çağrı ekle." **Örnek 2:** "Şirket içi bir toplantı sonrası gönderilecek bir toplantı notu hazırla. Toplantıda konuşulan önemli konuları, alınan kararları ve atılacak adımları detaylandır. Ayrıca, toplantıya katılan kişilerin sorumluluklarını ve belirlenen tarihlere göre yapılacak işleri belirt. Notların sonunda, katılımcılara teşekkür ederek ve olası sorular için iletişim bilgilerini ekle." **Eğitsel İçerikler İçin** **Örnek 1:** "Ortaokul seviyesinde öğrencilere fotosentez sürecini açıklayan bir paragraf yaz. Fotosentezin ne olduğunu, bitkilerin bu süreci nasıl gerçekleştirdiğini ve fotosentezin önemi hakkında bilgi ver. Ayrıca, klorofilin rolü ve güneş ışığının fotosentezdeki yeri hakkında detaylar ekle." **Örnek 2:** "Lise öğrencileri için tarihi olayların önemini vurgulayan bir makale yaz. Makalede, Rönesans dönemini ele alarak, bu dönemin başlangıcını, önemli figürleri ve kültürel etkilerini açıkla. Ayrıca, Rönesans'ın sanat, bilim ve toplum üzerindeki uzun vadeli etkilerini tartış. Her bölümde spesifik örnekler ve tarihi referanslar kullan." **Kriz Yönetimi ve Acil Durumlar** **Örnek 1:** "Bir müşteri memnuniyetsizliği durumu için kullanılacak bir yanıt şablonu oluştur. Yanıtta, müşterinin yaşadığı sorunu anladığınızı ve çözmek için adımlar attığınızı belirtin. Özür dileyerek ve çözüm önerileri sunarak, müşteri memnuniyetini sağlamak için ne yapacağınızı detaylandırın. Yanıtın sonunda, müşteriye daha fazla yardımcı olabilmek için iletişim bilgilerini ekleyin." **Örnek 2:** "Bir ürün geri çağırma durumunda müşterilere gönderilecek bir bilgilendirme mektubu yaz. Mektupta, geri çağırmanın nedenlerini, etkilenen ürünlerin nasıl tanımlanacağını ve geri çağırma sürecinin nasıl işleyeceğini açıklayın. Ayrıca, müşterilere alternatif çözümler ve destek için neler yapabileceklerini belirtin. Mektubun sonunda, müşterilere sabırları ve anlayışları için teşekkür edin." **Müşteri Hizmetleri İçin** **Örnek 1:** "Bir müşteriye ürün iadesi hakkında bilgi verecek bir mesaj yaz. Mesajda, ürün iadesi politikanızı, iade sürecini ve müşterinin izlemesi gereken adımları detaylandırın. Ayrıca, iadelerin işlenme süresi ve müşterinin parası iade edilene kadar geçecek süre hakkında bilgi verin. Mesajın sonunda, müşteri hizmetleri ekibinizle iletişime geçmeleri için gerekli bilgileri ekleyin." **Örnek 2:** "Bir müşteriye teknik destek sağlayacak bir e-posta yaz. E-postada, müşterinin yaşadığı teknik sorunu çözmek için adım adım talimatlar verin. Ayrıca, sorunun çözülmemesi durumunda neler yapabileceklerini ve ek destek için kimlerle iletişime geçebileceklerini belirtin. E-postanın sonunda, müşteriye yardımcı olabilmek için daha fazla bilgi veya ekran görüntüleri talep edin." Bu örneklerle, ChatGPT 4o'nun güçlü özelliklerinden tam anlamıyla yararlanabilir ve etkili, kapsamlı promptlar oluşturabilirsiniz. Bu sayede, modelin verdiği yanıtların kalitesini artırabilir ve amaca yönelik, kullanışlı içerikler elde edebilirsiniz. **Sonuç** **Etkili Prompt Yazmanın Önemi** Etkili prompt yazmak, **ChatGPT 4o'nun sunduğu geniş olanaklardan tam anlamıyla faydalanmak için kritik bir öneme sahiptir.** İyi yapılandırılmış bir prompt, modelin istenilen sonuçları daha doğru ve verimli bir şekilde üretmesini sağlar. Bu sadece zaman kazandırmakla kalmaz, aynı zamanda elde edilen içeriklerin kalitesini ve doğruluğunu da artırır. Etkili promptlar, ChatGPT 4o'nun yeteneklerini en üst düzeye çıkarmak için bir köprü görevi görür. **[[ChatGPT 4o]](https://openai.com/chatgpt/)'nun Gücü ve Kullanımı** ChatGPT 4o, çok yönlülüğü ve ileri düzey özellikleri ile kullanıcılarına benzersiz bir deneyim sunar. Çoklu dil desteği, duygusal anlayış ve gerçek zamanlı yanıt verme yetenekleri, bu modeli birçok farklı senaryoda etkili bir araç haline getirir. İster günlük konuşmalar, ister profesyonel yazışmalar olsun, doğru promptlar yazıldığında ChatGPT 4o'nun kapasitesiyle inanılmaz sonuçlar elde edilebilir. Modelin sunduğu bu güçlü özellikler, kullanıcılara her durumda mükemmel yanıtlar sunma fırsatı verir. **Etkili Prompt Yazma Yöntemleri** Etkili prompt yazma sürecinde dikkat edilmesi gereken bazı temel ilkeler vardır. **Öncelikle, promptların açık ve anlaşılır olması gerekmektedir.** Bu, modelin sizin ne istediğinizi daha iyi anlamasını sağlar. Ayrıca, promptlarınızı yazarken hedef kitlenizi göz önünde bulundurmalısınız. Bu, **doğru ton ve dil kullanımı ile amaca yönelik içerikler elde etmenizi sağlar.** Son olarak, her promptun belirli bir yapıya sahip olması önemlidir. Giriş, ana mesaj ve sonuç bölümleri, modelin yanıtlarını şekillendiren temel unsurlardır. **Öğrenme ve Gelişim Süreci** Etkili prompt yazma becerisi, düzenli pratik ve geri bildirim ile gelişir. Farklı konular ve senaryolar için çeşitli promptlar yazarak ve sonuçları analiz ederek, bu becerinizi sürekli olarak iyileştirebilirsiniz. Ayrıca, iyi ve kötü örnekleri inceleyerek ve analiz ederek, hangi tür promptların daha başarılı sonuçlar verdiğini anlayabilirsiniz. Bu süreç, hem kişisel hem de profesyonel gelişiminize katkıda bulunur. **ChatGPT 4o'nun Etkili Kullanımı İçin İpuçları** ChatGPT 4o'nun etkili kullanımı için bazı ipuçları şunlardır: - **Spesifik ve net olun:** Belirsiz ve genel promptlar, modelin doğru yanıtlar üretmesini zorlaştırabilir. - **Detaylara yer verin:** İstediğiniz sonucu elde etmek için gerekli tüm detayları promptunuzda belirtin. - **Hedef kitlenizi göz önünde bulundurun:** Dil ve ton kullanımı, hedef kitlenize uygun olmalıdır. - **Geri bildirim alın:** Yazdığınız promptları test edin ve geri bildirim alarak iyileştirin. **PM-B0 Prompting Eğitim Serisi Tanıtımı** [[https://leraes.medium.com/b0-prompting-e%C4%9Fitim-serisi-tan%C4%B1t%C4%B1m%C4%B1-7ac2b2a47dda]](https://leraes.medium.com/b0-prompting-e%C4%9Fitim-serisi-tan%C4%B1t%C4%B1m%C4%B1-7ac2b2a47dda) ![bilgisayar, masa, tasarım içeren bir resim Açıklama otomatik olarak oluşturuldu](media/image2.jpeg) **Neden Prompting Öğrenmelisiniz?** Prompting, modern dünyanın gerekliliklerine uyum sağlamak için önemli bir becerilerden biridir. Peki, prompting nedir? Kısaca, prompting, yapay zeka teknolojisinin gücünden yararlanarak bilgisayar sistemlerine talimat verme sürecidir. Bu süreç, bilgisayarın doğal dil işleme yeteneklerini kullanarak insanlarla etkileşime geçmesini sağlar. Ancak, prompting sadece teknoloji alanında değil, aynı zamanda iş dünyasında ve günlük yaşamda da büyük bir öneme sahiptir. Prompting, iletişimi güçlendirir, karar alma süreçlerini hızlandırır ve problem çözme becerilerini geliştirir. Ayrıca, verimliliği artırır, zamanı daha etkili kullanmanızı sağlar ve rekabet avantajı elde etmenize yardımcı olur. Peki neden prompting öğrenmelisiniz? Çünkü bu beceri, kariyerinizde ilerlemenize, iş dünyasında öne çıkmanıza ve hayatınızı daha verimli bir şekilde yönetmenize yardımcı olacaktır. Prompting öğrenmek, sadece bilgiyi değil, aynı zamanda geleceği de yönlendiren bir adımdır. **PM-B1 Prompt Engineering Terimleri** dizüstü, bilgisayar donanımı, bilgisayar, elektronik donanım içeren bir resim Açıklama otomatik olarak oluşturuldu Konuyu daha iyi anlayabilmemiz için gerekli bazı terimler ve kısa açıklamaları: **Makine öğrenmesi:** Yapay zekanın bir alt dalı olan makine öğrenmesi verilerden öğrenilebilen algoritmalar üzerine çalışan bir disiplindir. **MLM(Masked Language Model)(Maskelenmiş Dil Modeli?):** Sonraki kelimeyi tahmin etmek için eğitilmiş dil modeli türüdür. Genellikle büyük miktarda metinle eğitilen bu modeller, makine çevirisi, duygu analizi, özetleme gibi çeşitli görevleri yapabilir. **NLP (Natural Language Processing)(Doğal dil işleme):** Doğal dil işleme, yapay zekanın bilgisayar ve insan dilleri arasında etkileşimiyle uğraşan dalıdır. İnsan dilini analiz etmek, anlamak ve üretmek için kullanılır. **Label(Etiket):** Etiketler belirli metnin sınıflandırılırken olan olasılıklardır. Örneğin elimizde "Seni seviyorum" gibi bir cümle varsa bu cümlenin etiketi "pozitif", "negatif" ve "nötr" olabilir. Bu model hangi etiketin verilen metne göre en iyi olacağını tahmin etmeye çalışır. **Label Space(Etiket alanı):** Verilen metne göre olabilecek etiketlerin tümüdür. Örneğin "Seni seviyorum" cümlesinin etiket alanı "pozitif", "negatif" ve "nötr" gibi şeylerdir. **Label Distribution(Etiket Dağılımı):** Etiket alanında bulunan etiketlerin olma olasılığıdır. "Seni seviyorum" cümlemizde etiket dağılımı \[0.8, 0.1, 0.1\] olabilir. Yani yüzde 80 olasılıkla metin pozitif yüzde 10 olasılıkla metin negatif ve yüzde 10 olasılıkla da nötr olabilir. **Sentiment Analysis(Duygu Analizi):** Duygu analizi, kelime gruplarının duygusal tonuna karar verme, tutumunu, ifade ettiği duyguyu ve fikrini anlama sürecidir. Opinion mining(fikir madenciliği) olarak da bilinen duygu analizinin amacı konuşmacının düşüncesi ve tutumu hakkında fikir edinmektir. **Verbalizer:** Bir dil modelinin söz daracığında olan kelimelerin etiketlerle eşleştirilmesidir. Örneğin aşağıdaki prompt'a bakalım: **Prompt:** "Kebap severim." Cümlesinin duygusu nedir? "Pos" ya da "neg" olarak söyle. Burada verbalizer pozitif ve negatif etiketlerini direktif doğrultusunda "pos" ve "neg" sözcükleriyle eşliyor. **Reinforcement Learning from Human Feedback (RLHF)(İnsandan alınan geri bildirimlerle öğrenme):** İnsanlardan alınan geri bildirimle bir görevi yerine getirerek modeli eğitmeyi amaçlayan bir tekniktir. Model insanlardan gelen pozitif dönüşleri artırıp, negatif dönüşleri en aza indirmek için eğitilir. **PM-B2 LLM'lere Giriş** ![metin, çıkış cihazı, bilgisayar monitörü, ofis ekipmanı içeren bir resim Açıklama otomatik olarak oluşturuldu](media/image4.jpeg) LLM(Large Language Models) Türkçe'ye geniş dil modelleri olarak çevrilebilir. LLM'ler insanlar gibi anlamak ve konuşmak için tasarlanmış, genellikle metin tabanlı gelişmiş AI sistemleridir. Bu modeller büyük miktarlarda yazılı veriyle eğitilir ve bu sayede soruları cevaplamak, diyaloglarda bulunmak, metin özetlemek, çeviri yapmak gibi pek çok dilsel görevi yerine getirebilir. **LLM Nedir?** LLM'ler insan dilini anlamak ve yazmak için tasarlanmış gelişmiş yapay zeka modelleridir. Bu modeller çoğunlukla transformer gibi derin öğrenme mimarisini kullanır. Çeşitli kaynaklardan aldığı çok çeşitli veriler sayesinde dilin nüanslarını ve karmaşık yapılarını anlayabilme yeteneğini elde eder. LLM'ler makine çevirisi, duygu analizi, özetleme gibi pek doğal dil işleme görevini başarıyla yerine getirebilir. Ayrıca verilen komutlara göre tutarlı ve bağlantılı metinler üretebilirler. Bu onları chatbot'lar, soru cevaplayan sistemler ve içerik üreten sistemler için son derece elverişli hale getirir. Örneğin günümüzün en popüler LLM'i, OpenAI'ın GPT-3.5\'i, başarılı şekilde ürettiği metinler ve çeşitli dilsel görevlerde gösterdiği performansla dikkatleri çekmişti. **LLM Türleri** Basitçe bakmak gerekirse LLM'ler iki ana başlık altında değerlendirilebilir: Base(temel) LLM'ler ve instruction tuned(talimatlara ayarlanmış?) LLM'ler **Base LLM** Base LLM'ler eğitim verilerine dayalı olarak sonraki kelimeleri tahmin etmek için tasarlanmış LLM'lerdir. Soruları cevaplamak, diyaloglarda bulunmak ya da bir problemi çözmeye yardımcı olmak için tasarlanmamışlardır. Örneğin bir base LLM'e "LLM'lerle alakalı olan bu kitapta, biz............. tartışacağız." gibi bir cümle verirsek, base LLM bu boşluğu şu şekilde tamamlayabilir: "LLM Nedir?, LLM nasıl çalışır?". Başka bir örnek vermek gerekirse, "En popüler sosyal medyalar hangileridir?" gibi bir cümle verirsek, cevap vermek yerine "İnsanlar neden sosyal medya kullanır?" ya da "Sosyal medyanın faydaları nelerdir?" gibi bağlantılı metinler döndürebilir ancak sorulara cevap veremez. Instruction tuned LLM'ler burada devreye girer ve soruları cevaplama işini üstlenir. **Instruction tuned LLM** Bu LLM'ler cümle tamamlamak yerine kendisine verilen eğitim verisini kullanarak verilen talimatlara uymaya çalışır. Örneğin "LLM nedir?" gibi bir cümle verirsek, eğitim verisini kullanır ve soruyu cevaplamaya çalışır. Benzer şekilde "En popüler sosyal medyalar hangileridir?" gibi bir cümle verirsek de rastgele tahminlerde bulunmak yerine cevap vermeye çalışır. Instruction tuned LLM'ler base LLM'lerin geliştirilmesiyle elde edilir: *Instruction Tuned LLM = Base LLM + bazı ayarlama ve geliştirmeler + RLHF* Instruction tuned LLM oluştumak için öncelikle bir base LLM alınır ve talimatlar sonucu modelin nasıl davranması gerektiğini örneklendiren geniş bir talimatlar dizisiyle eğitilir. Bu model daha sonrasında "Reinforcement Learning with Human Feedback" (RLHF)(İnsan geri bildirimiyle takviyeli öğrenme) adı verilen bir teknikle eğitilir. Bu model insanlardan gelen geri bildirimlerden öğrenmeye ve zamanla performansı geliştirmeye imkan tanır. **LLM'ler Nasıl Yapılıyor?** Başlıca LLM eğitme yöntemleri 3 başlık altında değerlendirilebilir: Veri toplama, eğitme ve değerlendirme. **Veri Toplama:** Bir LLM oluşturmanın ilk aşaması modeli eğitmek için kullanılacak verileri toplamaktır. Bu veriler Wikipedia, haberler, kitaplar, web siteleri gibi pek çok kaynaktan yararlanarak toplanabilir. **Eğitme:** Sonrasında veriler eğitim için kullanılmadan önce temizlendiği ve ön işlemlere tabi tutulduğu bir süreçten geçer. Bu süreç genellikle çok uzun sürer ve fazlaca hesaplama gücü gerektirir. **Değerlendirme:** Son aşama ise soru cevaplama, özetleme, çeviri gibi çeşitli görevlerde ne kadar iyi performans gösterdiğini gözlemlemek ve modelin performansını değerlendirmektir. Eğitim sonunda elimizde bu süreçte öğrenilen bilgiyi yakalayan parametreleri veya ağırlıkları olan bir LLM modelimiz oluyor. Bu parametreler ve ağırlıklar listelenir ve bir dosyada saklanır. Daha sonrasında metin oluşturma, soru yanıtlama, özetleme vb. gibi dil işleme yetenekleri gerektiren herhangi bir uygulamaya yüklenebilir. **PM-B3 Prompting'e Giriş** metin, ofis malzemesi, bilgisayar monitörü, ofis ekipmanı içeren bir resim Açıklama otomatik olarak oluşturuldu **Prompting Nedir?** Prompting, bir modele "istek" veya direktifler vererek istenilen görevin yaptırılması sürecidir. Örneğin, Türkçe bir cümleyi İngilizce'ye çevirmek için aşağıdaki gibi bir prompt kullanabiliriz: *Aşağıda üç adet tırnaklarla belirtilen cümleyi Türkçe'den İngilizce'ye çevir.* *"""Merhaba, nasılsın?"""* Modelden gelecek cevap: *Hello, how are you?* Bu örnekte, modele görevi yerine getirmesi için talimatlarla prompt verdik. Farkettiyseniz, prompt yazmak için spesifik bir kullanım yaptık. Basitçe aşağıdaki prompt'u da versek, yine de doğru şekilde çalışabilirdi: *Aşağıdakini İngilizce'ye çevir:* *Merhaba, nasılsın?* Ancak ilk örnekteki gibi açık olmak ve içerik ile talimatı ayıracak belirteçler kullanmak modellerden aldığımız verimi son derece artıracaktır. İlerleyen bölümlerde daha detaylı şekilde bu tarz incelikleri öğreneceğiz. **Temel Prompting** Görevleri yerine getirmek için modele basit metinler vermektir. Örneğin bir makaleyi özetlemek için aşağıdaki gibi basit düzeyde bir prompt yazılabilir: *Uzun bir makale.............................................* *......................................................................* *..............................................* *Yukarıdaki makaleyi özetle.* Ya da yeni bir metin yazdırmak için aşağıdaki gibi sadece içeriğin konusunu belirtmek yeterlidir. *Benim için prompt engineering hakkında giriş rehberi yaz.* Ancak bu örneklerdeki gibi spesifikasyonlar ve belirteçler olmadan sadece basit metinlerle isteklerde bulunmak LLM'lerden tam olarak faydalanmamızı engeller. Bu nedenle "prompt engineering" ya da prompting bilmek ve daha iyi promptlar yazmak LLM'lerden tam verim almak için büyük önem arz ediyor. **PM-B4 Neden Prompt Mühendisliği?** ![bilgisayar, metin, çizgi film, kişi, şahıs içeren bir resim Açıklama otomatik olarak oluşturuldu](media/image6.jpeg) ***Model Davranışlarını Yönlendirmek*** ***Metin Kalitesini Ve Bağlamı Güçlendirme*** ***Net Sonuçlar Elde Etmek*** ***Yapay Zekanın İnsanın Amacına Göre Ayarlanması*** ***Yanlışlıkların ve Belirsizliklerin Azaltılması*** Prompt, AI modellerinin faydalı ve isabetli sonuçlar çıkarmalarında büyük öneme sahip. Aşağıdaki başlıklarda "Neden daha iyi prompt'lar yazmayı öğrenmeliyiz?" sorusuna yanıt arayacağız. **Model Davranışlarını Yönlendirmek** Dil modelleri , soru cevaplarken, görevlere yardım ederken, metin üretirken spesifik bir komut veya sorgu olduğunda en iyi performanslarını gösterirler. Net yazılmış prompt'lar olmadan modeller mantıklı bir bağlamı ve anlamı olan içerikler üretemezler. İyi yazılmış prompt'lar sayesinde ise model faydalı ve bağlantılı sonuçlar üretebilir. **Metin Kalitesini Ve Bağlamı Güçlendirme** Yazılan her prompt dil modellerinin çıktılarını optimize eder. Anlaşılır yazılmış bir prompt modelin beklenen kalite ve uygunluk standartlarına uygun sonuçlar vermesine katkı sağlar. Bu nedenle, yapay zeka tarafından üretilen içeriğin kaliteli olmasını ve kullanıcının niyetiyle yakından eşleşmesini sağlamak için net şekilde yönlendirmeye ihtiyaç vardır. **Net Sonuçlar Elde Etmek** Promptlar, bir metni özetlemek, alternatif ifadeler önermek, ilgi çekici bir hikaye oluşturmak, bazı duyguları analiz etmek veya bir metinden veri çıkarmak gibi yapay zeka dil modelinden belirli bir çıktı türünü ortaya çıkarmak için yazılabilir. İstenen sonuca uygun yazılmış promptlarla, kullanıcılar modellerin gücünden ve ensekliğinden en iyi şekilde faydalanabilir. **Yapay Zekanın İnsanın Amacına Göre Ayarlanması** Prompt yazmanın önemli amaçlarından biri de yazay zeka üretimi ürünleri insanların niyetlerine uygun hale getirmektir. Etkili yazılmış promptlar, yapay zekanın anlama kabiliyetini artıracak ve kullanıcıların tercih ve ihtiyaçlarını uygun sonuçlar almalarına yardımcı olacaktır. **Yanlışlıkların Ve Belirsizliklerin Azaltılması** Doğru promptu yazmak hataların ve eksikliklerin azaltılmasına yardım edebilir. Yapay zekaya açık, net ve ne istediği tam olarak belli promptlar vermek, yapay zekanın kendince tahminlerde bulunmasını ve yanlış bilgiler vermesini önleyecektir. Sonuç olarak, iyi yapılmış prompting'e duyulan ihtiyaç, yapay zeka modelinin davranışını yönlendirme, metin kalitesini ve alaka düzeyini artırma, belirli bir çıktı ortaya çıkarma ve oluşturulan içerikteki yanlışlıkları ve belirsizliği azaltmasından kaynaklanmaktadır. Bizler ancak prompting'de ustalaşırsak yapay zeka dil modellerinin tüm potansiyelini ortaya çıkarabiliriz. **PM-B5 Prompt'un Kısımları** Prompt yazarken prompt'un kısımlarını ve neler sağladıklarını anlamak son derece önemlidir. İyi hazırlanmış bir prompt genellikle üç parçadan oluşur: İçerik talimat ve örnek. Bu parçaları anlamak, daha iyi ve daha kesin yanıtlar ortaya çıkaran prompt'lar tasarlamanıza olanak tanıyacaktır. bilgisayar, metin, elektronik cihaz, bilgisayar klavyesi içeren bir resim Açıklama otomatik olarak oluşturuldu **İçerik** İçerik, takip eden bilgiler için zemin hazırlar. Bu, anahtar terimleri tanımlamayı, ilgili durumları açıklamayı veya sadece arka plan bilgisi sağlamayı içerebilir. İçerik, yapay zekanın prompt'da ele alınan genel temayı veya konuyu anlamasına yardımcı olur. **Örnek:** Bir e-posta oluşturma hakkındaki bir prompt'da, e-postanın amacını veya arka planını açıklayarak içerik sağlayabilirsiniz, örneğin bir toplantının katılımcılarına davet için mail yazmak gibi. **Talimatlar** Talimat, prompting'in temel bileşenidir. Yapay zekanın gerçekleştirmesi veya yanıtlaması beklenen görevi veya soruyu açıkça belirttiğiniz yerdir. Talimatlarınızda açık ve doğrudan olmanız, yanıt için herhangi bir yönerge veya kriter belirtmeniz önemlidir. **Örnek:** E-posta senaryosunu devam edersek, yapay zekaya "Alıcıya zaman ayırdığı için teşekkür eden ve toplantının ana tartışma noktalarını özetleyen bir takip e-postası yaz" talimatını verebilirsiniz. **Örnekler** Bazı durumlarda, istenen çıktıyı yönlendirmek veya netleştirmek için bir veya daha fazla örnek sağlamak yararlı olabilir. Örnekler, yapay zeka için bir model görevi görebilir ve başarılı bir yanıtın nasıl görünmesi gerektiğine dair bir fikir verebilir. Bu, özellikle görev karmaşık olduğunda veya belirli biçimlendirme gereksinimleri olduğunda yararlıdır. **Örnek:** E-posta yazma görevini daha da netleştirmek için, istediğiniz ton veya yapının kısa bir örneğini verebilirsiniz, örneğin "Sayın \[Alıcı\], Dün benimle görüşmek için zaman ayırdığınız için teşekkür ederim. \[Konu 1\], \[Konu 2\] ve \[Konu 3\] hakkında konuştuk. Gelecekteki işbirliğimizi dört gözle bekliyorum." Bir prompt'un bu üç bölümünü (içerik, talimat ve örnek) dikkate alarak, yapay zekadan hedefe yönelik ve doğru yanıtlar üreten etkili ve iyi biçimlendirilmiş prompt'lar oluşturabilirsiniz. **PM-B6 Prompt Yazma** Önceki bölümlerde prompt'un ne olduğunu ve iyi prompt yazmanın önemini öğrenmiş olduk. Bu kısımdan itibaren de nasıl iyi prompt yazılır, sık kullanılan prompt yazma teknikleri nelerdir onları anlamaya çalışacağız. ***Bu dokümanda:*** *Sınırlayıcılar Kullanmak* *Yapılandırılmış Çıktı* *Stil Bilgisi* *Koşullar Vermek* *Örnekler Vermek* *Adımları Belirtmek* *Çözüm Yollarını da İstemek* *Promptların Yinelenmesi ve Geliştirilmesi* ![bilgisayar, giyim, dizüstü, kişi, şahıs içeren bir resim Açıklama otomatik olarak oluşturuldu](media/image8.jpeg) **1- Sınırlayıcılar Kullanmak** Dil modelleri için prompt yazarken, veriler ile talimatların net şekilde ayrıldığından emin olmak hayati öneme sahiptir. Bu ayrım özellikle de modelden özel bir girdi bilgisine dayanarak cevap üretmesini istediğimiz veri odaklı prompt'larda daha önemlidir. Bu ayrımı sağlamak için direktifler ve veri arasındaki sınırları işaretlemek için sınırlayıcılar kullanabiliriz. Sınırlayıcılar, modelin verilerin nerede başlayıp nerede bittiğini anlayabilmesini sağlar ve yanıtları daha doğru bir şekilde oluşturmasına yardımcı olur. Şimdi de sınırlayıcılardan tam olarak faydalanabilmek için birkaç ipucuna bakacağız. **Uygun sınırlayıcı seçimi:** Kullanacağımız sınırlayıcıyı seçerken metinlerde genellikle daha az bulunan işaretlerden seçmeliyiz. Yaygın olarak kullanılan belirteç seçenekleri, verilecek metinde nadiren geçen veya hiç geçmeyen özel karakterleri veya belirteç kombinasyonlarıdır. Örneğin, sınırlayıcı olarak üçlü küme parantezleri ({{{ }}}) veya \ gibi özel bir belirteç kullanabiliriz. **Sınırlayıcının konumu:** Sınırlayıcılar veri kısmının başına ve sonuna yerleştirilmeli ve talimat kısmından açık şekilde ayrıldığından emin olmalıyız. Talimatlardan oluşan kısım sınırlayıcılarla ayrılmış veri kısmından daha önce gelmelidir ki model içeriği talimatlara göre doğru şekilde işleyebilsin. **Baştan sona tutarlı sınırlayıcılar kullanımı:** Tüm prompt'larımızda seçtiğimiz sınırlayıcıları kullanırken tutarlılığı korumalıyız. Bu, veri formatında tekdüzelik sağlayarak modelin bilgileri tutarlı bir şekilde anlamasını ve işlemesini kolaylaştırır. **Bu kısma kadar olanlarla ilgili örnekler:** *Üçlü küme parantezleriyle sınırlandırılmış metni tek bir cümle halinde özetle.* *{{{Uzun bir metin.....}}}* *Üç tırnak işaretiyle sınırlandırılmış metni Arapçaya çevir.* *"""Nasılsın?"""* **2- Yapılandırılmış Çıktı** Dil modelleri için prompt'lar yazarken, çıktıyı JSON, XML, HTML gibi formatlarda istemek zaman zaman faydalı olabilir. Yapılandırılmış şekilde çıktılar istemek, özellikle veri işlemeyi içeren, web madenciliği gibi görevlerde modelden spesifik ve iyi organize edilmiş çıktılar elde etmemize olanak sağlar. Dil modellerinden yapılandırılmış çıktılar elde etmek için aşağıdaki noktalara dikkat etmeliyiz. **Çıktı formatını belirlemek:** Modele açık şekilde hangi formatta çıktı istediğimizi belirtmeliyiz. Örneğin, modelden JSON objesi, HTML sayfası veya bir XML dosyası oluşturmasını isteyebiliriz. **Yapıyı ve alanları tanımlamak:** İstenen çıktının yapısını ana hatlarıyla belirlenmeli ve gerekli alanları belirtilmelidir. Bu, modelin istenen yapıya uygun yanıtlar oluşturmasına yardımcı olur. Beklenen biçimi göstermek için örnekler veya şablonlar da sağlayabiliriz. **Girdi içeriğini sağlamak:** Modelin yapılandırılmış çıktıyı üretirken yararlanacağı bilgi veya veri alakalı olmalıdır. Bu, modelin görevi anlamasına ve ve daha isabetli sonuçlar üretmesine yardımcı olur. **İşte bu kullanıma bir örnek:** *\ etiketi içine alınmış metinden \`urun\` (ürünün adı), \`durum\` (boolean), \`ozet\` (incelemenin bir cümlelik özeti) anahtarlarını içeren bir JSON nesnesi oluşturmama yardımcı ol.* *\Ne yazık ki, "XYZ ProTech 2000" ürünü en temel beklentileri bile karşılayamadı. Düşük yapı kalitesi ve kafa karıştırıcı kullanıcı ara yüzünden berbat performansına ve hayal kırıklığı yaratan müşteri desteğine kadar, bu ürün beni son derece memnuniyetsiz bıraktı. "XYZ ProTech 2000" satın almayı düşünüyorsanız, daha üstün kalite ve güvenilirlik sunan alternatif seçenekleri araştırmanızı şiddetle tavsiye ederim.\ \* **Muhtemel çıktı:** *{\ "urun": "XYZ ProTech 2000",\ "durum": false,\ "ozet": "Düşük yapı kalitesi, kafa karıştırıcı kullanıcı ara yüzü, berbat performans ve hayal kırıklığı yaratan müşteri desteği nedeniyle beklentileri karşılayamadı."\ }* **3- Stil Bilgisi** İstenilen tonda komutlar vererek dil modellerinin yazma stilini ve özel gereklilikleri karşılamasını sağlayabiliriz. İstenilen ton, stil veya mod gibi şeyler prompt içerisinde açık şekilde belirtilmelidir. Resmi mi, günlük dilde mi, esprili mi, profesyonel mi, veya başka bir tarzda mı olacağını belirtmek, cevap üretirken modele rehberlik eder. Ayrıca istenen stili yansıtan anahtar kelimeleri veya sözcük gruplarını eklemek de faydalı olabilir. Yani, resmi tonda yazılmış bir metin istiyorsak "profesyonel bir şekilde" veya "resmi bir dil kullanarak" gibi ifadeler eklenebilir. Bu, beklediğimiz tonda sonuçlar elde etmemizi sağlar. **Örnek prompt:** *Bir iş teklifini reddetmek için **resmi **bir e-posta yaz.* Bu prompt örneğinde, istediğimiz üslubu açıkça "resmi" olarak belirttik. Bu şekilde model, yanıtın bir iş teklifini reddetmek için uygun profesyonel ve resmi bir yazı stilini yansıtması gerektiğini anlamış oldu. **4- Koşullar Vermek** Modele koşullar vermek ve ardından bu koşulları izlemesini istemek, modelin özel davranışlar ve sonuçlar üretmesine yardımcı olur. Örneğin, modele uzun bir tarif metni vermiş olalım ve eğer metin tarif içeriyorsa bunu adımlara ayırmasını, eğer yoksa başka bir cevap döndürmesini isteyelim. Bu şekilde, modele ek bir bağlam sağlayarak çıktıyı koşullu hale getirebiliriz. **Örnek prompt:** *Size üçlü tırnak işaretleriyle sınırlandırılmış bir metin sunulacaktır.\ Eğer bir dizi talimat içeriyorsa, \\\ bu talimatları aşağıdaki formatta yeniden yazın:* *Adım 1 ---...\ Adım 2 ---...\...\ Adım N ---...* *Metin bir talimat dizisi içermiyorsa, \\\ o zaman sadece \\"Hiçbir adım sağlanmadı.* *""".................................Tarif metni..............................."""* **5- Örnekler Vermek** Modele doğru bir davranışın örneğini verip daha sonra bunu devam ettirmesini isteyebiliriz. Örneğin, modele bir satranç oyununun birkaç hamlesini yapılmış halde verip, oyuna devam etmesini isteyebiliriz. **Prompt örneği:** *Örnekleri dikkatlice okuyun ve yanıtlarınız için temel olarak kullanın.* *Girdi: Muz\ Çıktı: Meyve* *Girdi: Elma\ Çıktı: Meyve* *Girdi: Havuç\ Çıktı: Sebze* *Verilen örnekleri göz önünde bulundurarak, aşağıdaki girdiler için uygun yanıtı oluşturun:* *- Şalgam\ - Turuncu\ - Armut\ - Patates\ - Salatalık\ - Kereviz\ - Brokoli\ - Karnabahar* **Sonuç:** *- Şalgam: Sebze\ - Portakal: Meyve\ - Armut: Meyve\ - Patates: Sebze\ - Salatalık: Sebze\ - Kereviz: Sebze\ - Brokoli: Sebze\ - Karnabahar: Sebze* **6- Adımları Belirtmek** Bazı zamanlar modele bir şeyi direkt olarak sorduğumuzda en iyi cevabı alamayabiliriz. Bu gibi durumlarda eylemi basit adımlara ayırabiliriz. Örneğin, elimizde Türkçe yazılmış ancak yabancı kelimeler de içeren uzun bir hikaye olsun. Biz de bu hikayede geçen isimleri, kaç defa geçtiklerini ve bu isimlerin İngilizcelerini yazmasını isteyelim. Bunun için prompt yazmanın iki yolu var: Ya doğrudan sorarız, ya da görevi bölerek. **Doğrudan sorulmuş bir prompt:** *Bana aşağıdaki değişkenleri içeren bir JSON nesnesi ver: \`isim\_sayisi\` hikayede geçen isimlerin sayısı ve \`ingilizce\_isimler\` İngilizce isimlerin bir dizisi. Hikaye """ ile sınırlandırılmıştır.* *"""Sevimli bir köyde, Jack ve Jill kardeşler tepedeki bir kuyudan su almak için yola çıkarlar. Neşe içinde şarkılar söyleyerek tırmanırlarken talihsizlik başlarına gelir: Jack'in ayağı bir taşa takılır ve tepeden aşağı yuvarlanır, Jill de onu takip eder. Biraz hırpalanmış olsalar da, çift rahatlatıcı kucaklaşmalarla eve döndü. Yaşadıkları talihsizliğe rağmen maceracı ruhları hiç azalmadı ve keyifle keşfe devam ettiler."""* **Bu prompt'un çıktısı:** *{\ "isim\_sayisi": 10,\ "ingilizce\_isimler": \[\ "Köy",\ "kardeşler",\ "Jack",\ "Jill",\ "Şarkı",\ "ruh",\ "keşif",\ "neşe",\ "Taş",\ "Tepe"\ \]\ }* Gördüğünüz gibi isimler İngilizce olmadı. Ama prompt'u aşağıdaki gibi düzenlersek bu sorunu düzeltebiliriz. **Adımlara ayrılmış prompt:** *"""" ile sınırlandırılmış hikaye üzerinde aşağıdaki adımları uygulayın.* *Adım 1. İngilizceye çevir.\ Adım 2. Çevirideki her bir ismi listele.\ Adım 3. İngilizce hikayedeki isimlerin sayısını \`isim\_sayisi\` değişkenine ve \`ingilizce\_isimler\` yani çeviride görünen isimlerin dizisi ile JSON nesnesini yazın.* *Sadece JSON çıktısını alın, diğer adımlarla ilgilenmiyorum.* *"""Sevimli bir köyde, Jack ve Jill kardeşler tepedeki bir kuyudan su almak için yola çıkarlar. Neşe içinde şarkılar söyleyerek tırmanırlarken talihsizlik başlarına gelir: Jack'in ayağı bir taşa takılır ve tepeden aşağı yuvarlanır, Jill de onu takip eder. Biraz hırpalanmış olsalar da, çift rahatlatıcı kucaklaşmalarla eve döndü. Yaşadıkları talihsizliğe rağmen maceracı ruhları hiç azalmadı ve keyifle keşfe devam ettiler."""* **Doğru çıktı:** *{\ "isim\_sayisi": 10,\ "ingilizce\_isimler": \[\ "village",\ "brothers",\ "Jack",\ "Jill",\ "mission",\ "water"\ "tophill",\ "beauty",\ "Rock",\ "hill"\ \]\ }* **7- Çözüm Yollarını da İstemek** Cevap vermeden önce modele kendi çözümünü bulmasını söylemek gerekebilir. Çünkü LLM modelleri mümkün olan en kısa sürede çözüme ulaşmaya çalışır. Bir sorunu çözme süreciyle ilgilenmezler. Bazen katı talimatlar vermek daha iyi sonuçlar alınmasına yardımcı olur. **8- Promptların Yinelenmesi ve Geliştirilmesi** Prompt'lar tek seferlik bir süreç olarak düşünülmemelidir. Prompt'ları tekrarlamak ve düzenlemek iyi prompt yazmanın önemli bir parçasıdır. Bu süreç, sürekli olarak doğru, ilgili ve ilgi çekici yanıtlar üretene kadar bir prompt'un sürekli olarak iyileştirilmesini içerir. Süreci şu şekilde uygulayabiliriz: **1- İlk prompt'un taslağı:** AI'la tartışmak istediğimiz konuyu kapsayan bir prompt yazalım. Bu aşamada prompt'un açık, kısa ve öz şekilde yazıldığından emin olmak önemlidir. **2- Prompt'un test edilmesi:** İkinci aşamada yazdığımız prompt'u AI'a gönderiyoruz ve gelen sonucu değerlendiriyoruz. Cevaptaki herhangi bir hatayı veya tutarsızlığı not alabiliriz. **3- Prompt'un güncellenmesi:** Gözlemlediğimiz hatalara dayanarak prompt üzerinde ayarlamalar yapmalıyız. Bu aşama, sorunun düzenlenmesi, daha fazla içerik ve detay eklenmesi ya da cevap formatının özelleştirilmesi gibi şeyleri içerebilir. **4- Sürecin Tekrarı:** Test etmeye ve prompt'u iyileştirmeye sürekli olarak iyi sonuçlar alasıya kadar devam edelim. Bazen iyi çalışan bir prompt'a ulaşmadan önce birkaç yineleme yapmanız gerekebileceğini unutmayın. Ancak istemleri sürekli olarak iyileştirerek ve farklı stratejiler deneyerek, yapay zekadan doğru ve ilgi çekici yanıtlar veren prompt'lar oluşturmada daha etkili olunabilir. **PM-B7 Prompt Yazma Teknikleri** *Rol Prompting* *Few Shot Prompting* *Chain Of Thought Prompting* *Zero Shot Chain of Thought* *Least to Most Prompting(En azdan en çoğa)* *Dual Prompting* *Tekniklerin Beraber Kullanılması* metin, kişi, şahıs, giyim, kişisel bilgisayar içeren bir resim Açıklama otomatik olarak oluşturuldu **1- Rol Prompting** Bu yöntem yapay zekanın bir probleme özel bir rolde, karakterde veya bakış açısında varsayarak yaklaşması için kullanılır. Bu strateji yapay zekanın verilen role göre daha odaklanmış, yaratıcı yada daha empatik cevaplar vermesini sağlar. **Nasıl Kullanılır?** - **Bir rol veya karakter tanımlama: **Ortaya koyduğunuz sorun veya soruyla ilgili ve zorlayıcı olacak bir karakter veya rol belirleyin. Bu, gerçek bir kişi, kurgusal bir karakter ya da herhangi bir işte profesyonel biri olabilir. - **İçerik sağlama:** Yapay zekanın rolünü tam olarak anlayabilmesi için bir senaryo kurun veya rolünü tarif edin. Bu yapay zekayı rolün karakter özelliklerine yada mesleğine uygun cevaplar üretmeye teşvik eder. - **Soruyu veya görevi oluşturma**: Son olarak, bağlam ve rol mevcutken, yapay zekanın yanıt vermesini istediğiniz soruyu sorun veya görevi belirleyin. Seçilen rolle açıkça ilgili olduğundan emin olun. **Prompt örneği:** Çevresel problemlere çözüm bulmak istediğinizi düşünün. Farklı bakış açıları ve ön görüleri ortaya çıkarmak için bu yöntemi kullanabilirsiniz. İşte bunun bir örneği: *Bir iklim bilimci olarak, çevre üzerindeki etkisini en aza indirmek için ormansızlaşma sorununa nasıl yaklaşırsınız?* **2- Few Shot Prompting** Az sayıda ipucuyla yönlendirme, bir makine öğrenimi modelinin yeni, ilgili bir girdi sunulmadan önce istenen davranışı, çıktıyı veya görevi gösteren az sayıda örnekle (veya "atışlarla") hazırlandığı bir tekniktir. Bu yaklaşım, modelin sınırlı bir bağlamda bile kendisinden ne beklendiğini anlamasını sağlar. OpenAI'nin GPT-3\'ü gibi önceden eğitilmiş büyük modellerin ince ayarının yapılması ve genelleştirilmesi için özellikle değerlidir. **Önemli noktalar:** Bu tekniği kullanırken: - **Örnek sayısı**: Few-shot prompting genellikle 2 ile 10 örnekten oluşur, görevin açıklığına veya karmaşıklığına göre bu sayı değişebilir. - **İçeriğin alakalı olması: **Dil modeline verdiğimiz örnekler ile istenen görev alakalı olmalıdır, ancak bu şekilde modelin çıktısını şekillendirmek için yeterli bir temel sağlanır. - **Denge: **Çok az sayıda örnek (eksik tanımlama) ile çok fazla örnek (tekrarlama ve aşırı tanımlama) arasında bir denge kurmak önemlidir. noktalarına dikkat edilmelidir. **Örnekler&İpuçları** Modele, beklentilerimizi anlamasına yardımcı olacak bazı etiketli girdi/çıktı çiftleri sağlıyoruz: *Film harikaydı! --- Pozitif\ Yemeklerden hiç keyif almadım. --- Olumsuz\ İnanılmaz tatil, harika zaman geçirdim! --- Pozitif\ Üzgün ve kızgın görünüyor. --- Negatif.* Bu örnekleri verdikten sonra, modelin analiz etmesini istediğiniz sorguyu giriyoruz: *Kitabı elimden bırakmak zordu. --- {duygu\_etiketi}* Bu prompt yapısı, modelin duygu analizi görevini kavramasına yardımcı olur ve doğru çıktıyı (yani "Olumlu") alma olasılığını artırır. Görev için en uygun dengeyi bulmakta örneklerin sayısını ve içeriğini değiştirmeyi denemek önemlidir. Ayrıca, modeli daha fazla yönlendirmek için satır içi talimatları kullanabiliriz, örneğin belirli bir cümlenin duygu durumunu sınıflandırmasını isteyebiliriz. **3- Chain Of Thought Prompting (Düşünce zinciri)** Prompt mühendisliği dünyasının düşünceli ve anlamlı sonuçlar üretmeyi amaçlayan tekniğidir. Düşünme sürecini adım adım modele göstererek modelin anlayış biçimlerini, fikirleri ya da problem çözme stratejilerini sıralı bir şeklide keşfetmesine yardımcı olur. **Nasıl Çalışır?** Bu yöntem, karmaşık bir konuyu veya sorunu, modeldeki düşüncenin mantıksal ilerlemesini teşvik eden, tutarlı ve iyi yapılandırılmış bir yanıta yol açan daha küçük, yönetilebilir bölümlere ayırmayı amaçlar. Modeli, fikirlerin ve kavramların mantıklı ve anlamlı bir düzende birbirine bağlandığı bilişsel bir yolculuğa çıkarmaya benzer. **Örnek:** Chain Of Thought tekniğinin uygulanmasını daha iyi anlamak için, modelin evden çalışmanın avantaj ve dezavantajlarını analiz etmesini istediğimizi varsayalım. Şöyle geniş sonuçlara yol açabilecek bir soru sormak yerine: *"Evden çalışmanın avantajları ve dezavantajları nelerdir?"* Konuya bir dizi bağlantılı yönerge aracılığıyla yaklaşabiliriz: *"İnsanların evden çalışmayı tercih etmelerinin üç nedenini sıralayın."\ "Bahsettiğiniz her bir nedenin birey ve/veya kurum üzerindeki faydalarını ve olumlu etkilerini açıklayın."\ "Şimdi, evden çalışmanın zorluklarını düşünün. Üç potansiyel dezavantaj veya olumsuz etki belirleyin."\ "Bu zorlukların her biri için, bireylerin ve kuruluşların bunları nasıl azaltabileceğini veya ele alabileceğini tartışın."* Chain Of Thought tekniğini kullanarak, modeli söz konusu konunun kapsamlı ve sistematik bir analizini yapmaya yönlendirdik ve sonuçta daha anlamlı, daha detaylı ve daha doğru bir yanıt elde ettik. **4- Zero Shot Chain of Thought** Zero shot chain of thought, modelleri belirli bir sorunun üstesinden gelmek için çok adımlı akıl yürütme sağlamaya veya bir dizi birbirine bağlı düşünceyi takip etmeye teşvik eden bir yönlendirme tekniğidir. Bu teknik özellikle cevabın bir muhakeme süreci gerektirdiği veya birkaç ara fikrin bir araya getirilmesine bağlı olduğu görevlerde etkilidir. **Bir zeroshot chain of thought prompt nasıl yazılır?** - Zincirin başlangıç noktası olarak hizmet edecek net bir başlangıç sorusu veya problemi tanımlayarak başlayın. - Modelden sadece başlangıç sorusuna bir yanıt vermesini değil, aynı zamanda modelin muhakemesini adım adım açıklamasını da isteyen prompt adımları oluşturun. - Modeli, yanıtında ara adımları, olası alternatifleri veya fikirler arasındaki bağlantıları açıkça dikkate almasını sağlayın. **Örnek:** Modelden güneş panellerinin nasıl çalıştığını açıklamasını istediğimizi düşünelim. A zeroshot chain of thought tekniğiyle şu şekilde yazılabilir: *Lütfen bir güneş panelinin nasıl çalıştığını, güneş ışığının panelin yüzeyine çarpmasıyla başlayıp elektrik üretilmesiyle biten süreci açıkla. Yanıtını adım adım ilerleyen bir düşünce zinciri olarak yapılandır ve her adımın bir sonrakine nasıl yol açtığını açıklığa kavuşturmaya özen göster.* Zeroshot düşünce zinciri tekniği, adım adım akıl yürütmeyi açıkça talep eden sorular tasarlayarak, basit olgusal ifadelerin ötesine geçen daha kapsamlı ve anlayışlı cevaplar almayı sağlar. **5- Least to Most Prompting(En azdan en çoğa)** Chain of thought tekniğinin bir adım daha öteye taşıyan bu yöntem, ilk olarak bir problemi parçalayarak her birini ayrı ayrı çözmeyi amaçlar. Bu teknik oluşturulurken halihazırda gerçek dünyada çocuk eğitiminde kullanılan bir metottan esinlenilmiştir. Chain of thought tekniğinde olduğu gibi, çözülecek problem birbiri üzerine inşa edilen bir dizi alt probleme ayrıştırılır. İkinci adımda, bu alt problemler teker teker çözülür. Chain of thought tekniğinin aksine, önceki alt problemlerin çözümü bir sonraki problemi çözmeye çalışan ipucuna beslenir. **Örnek:** Biraz karmaşık bir müşteri hizmetleri sorusu soralım: *MÜŞTERİ SORUSU:\ Arnold koleksiyonunuzdan 1 Mart'ta bir gömlek satın aldım. İndirimde olduğunu gördüm, bu yüzden orijinali 30 dolar olan gömleği %40 indirimle aldım. Gömlekler için %50\'lik yeni bir indiriminiz olduğunu gördüm. Acaba gömleği iade edebilir miyim ve iki gömleğinizi almak için yeterli mağaza kredisine sahip olabilir miyim?* *TALİMATLAR:\*\ Müşteri sorularını nazikçe yanıtlamakla görevli bir müşteri hizmetleri temsilcisisiniz. İadelere 30 gün içinde izin verilir. Bugünün tarihi 29 Mart. Şu anda tüm gömleklerde %50 indirim var. Mağazanızda gömlek fiyatları 18 ila 100 dolar arasında değişiyor. İndirim politikaları hakkında herhangi bir bilgi uydurmayın.* \*Bu örnekte, kendimizi bir müşteri değil, müşteri sorularını yapay zekaya soran bir kişiymiş gibi varsayıyoruz. Bu yüzden talimatlara da müdahale edebileceğiz. Bu sayede süreci daha net gözlemleyip anlayabileceğiz. Modelden elde edilen çıktı şöyle olacaktır: *Sorunuz için teşekkür ederiz. Maalesef, gömleği 1 Mart'ta satın aldığınız için 30 günlük iade politikamızın dışında kalıyor. Bununla birlikte, şu anda tüm gömleklerde %50 indirimimiz var, bu nedenle aynı miktarda mağaza kredisi ile iki gömlek satın alabilirsiniz. Gömleklerimizin fiyatları 18 ila 100 dolar arasında değişmektedir. Başka sorularınız varsa lütfen bize bildirin.* Görüldüğü gibi ilk prompt'umuz başarısız oldu (iade süresi içindeyiz), bu yüzden bunu alt problemlere ayırmaya çalışalım: *MÜŞTERİ SORUSU:\ Arnold koleksiyonunuzdan 1 Mart'ta bir gömlek satın aldım. İndirimde olduğunu gördüm, bu yüzden orijinali 30 dolar olan gömleği %40 indirimle aldım. Gömlekler için %50\'lik yeni bir indiriminiz olduğunu gördüm. Acaba gömleği iade edebilir miyim ve iki gömleğinizi almak için yeterli mağaza kredisine sahip olabilir miyim?* *TALİMATLAR:sistemi tasarlayan\ Müşteri sorularını nazikçe yanıtlamakla görevli bir müşteri hizmetleri temsilcisisiniz. İadelere 30 gün içinde izin verilir. Bugünün tarihi 29 Mart. Şu anda tüm gömleklerde %50 indirim var. Mağazanızda gömlek fiyatları 18 ila 100 dolar arasında değişiyor. İndirim politikaları hakkında herhangi bir bilgi uydurmayın.\ **Soruyu yanıtlamadan önce hangi alt problemler çözülmelidir?*** Modelden elde edilen çıktılar şunlar olacaktır: *1. Müşterinin 30 günlük iade süresi içinde olup olmadığını belirleyin.\ 2. Müşterinin gömleği iade etmesi halinde alacağı mağaza kredisi miktarını hesaplayın.\ 3. Mevcut %50 indirimle iki gömleğin maliyetini hesaplayın.\ 4. Müşterinin iki gömlek satın almak için yeterli mağaza kredisine sahip olup olmadığını belirleyin.* İlk alt problemi çözmeye çalışalım: *MÜŞTERİ SORUSU:\ Arnold koleksiyonunuzdan 1 Mart'ta bir gömlek satın aldım. İndirimde olduğunu gördüm, bu yüzden orijinali 30 dolar olan gömleği %40 indirimle aldım. Gömlekler için %50\'lik yeni bir indiriminiz olduğunu gördüm. Acaba gömleği iade edebilir miyim ve iki gömleğinizi almak için yeterli mağaza kredisine sahip olabilir miyim?* *TALİMATLAR:\ Müşteri sorularını nazikçe yanıtlamakla görevli bir müşteri hizmetleri temsilcisisiniz. İadelere 30 gün içinde izin verilir. Bugünün tarihi 29 Mart. Şu anda tüm gömleklerde %50 indirim var. Mağazanızda gömlek fiyatları 18 ila 100 dolar arasında değişiyor. İndirim politikaları hakkında herhangi bir bilgi uydurmayın.\ Müşterinin 30 günlük iade süresi içinde olup olmadığını belirleyin. Adım adım ilerle.* Modelden elde edilen çıktı şu şekilde olacaktır: *Evet, müşteri 30 günlük iade süresi içinde. Müşteri gömleği 1 Mart'ta satın aldı ve bugünün tarihi 29 Mart, yani 30 günlük iade süresi içinde.* *Bu nedenle, müşteri gömleği iade etmeye ve satın alma işlemi için mağaza kredisi almaya uygundur. Müşteri, mağaza kredisini mevcut %50 indirimle iki gömlek satın almak için kullanabilir.* Sadece ilk alt problemi çözerek tüm problemi çözebildik. GPT-3.5 gibi modeller hemen bir yanıt döndürmezse, bir sonraki alt problemi çözebilirdik ve bir yanıt döndürene kadar bu şekilde devam edebilirdik. Adım adım gidelim ifadesini kullandığımıza dikkat edin. Bu ifadenin eklenmesi her zaman gerekli değildir, ancak bu örnek için bizlere yardımcı oldu. **6- Dual Prompting(İkili Prompting)** Dual prompting, iki veya daha fazla prompt'u daha spesifik ve anlamlı sonuçlar elde etmek için birleştirme tekniğidir. Bu yaklaşım daha detaylı çıktılar elde etmek veya çıktının odak noktasını kısıtlamak için kullanılabilir. **Örnek:** SEO hakkında bir rehber yazdığınızı varsayalım. Aşağıdaki prompt ile yapay zekadan bunu sizin için yazmasını isteyebiliriz: *Bana SEO hakkında bir rehber yaz.* Ancak bu istem, ihtiyacınız olabilecek şeyleri size vermeden genel bir kılavuzla sonuçlanır. Dual prompting tekniğiyle, ihtiyaçlarımıza göre uyarlanmış daha spesifik bir yanıt alabiliriz. Yukarıdaki örnek için, prompt'umuzu aşağıdaki gibi iki prompt halinde yazabiliriz: *SEO hakkında bir rehber yazıyorum. Bana bu rehberde ele almam gereken 10 temel konu verin.* Şimdi ikinci prompt'umuzu verebiliriz: *Yukarıda verdiğiniz noktaların her biri hakkında bana ayrıntılı bir rehber yazın.* Ya da bu istemleri aşağıdaki gibi tek bir istemde birleştirebilirsiniz: *SEO hakkında bir rehber yazıyorum. SEO ile ilgili 10 temel konuyu ele alın ve her biri için ayrıntılı bir giriş yazın.* **Tekniklerin Beraber Kullanılması** Şimdiye kadar 6 tane prompt yazma yöntemine bakış attık. Tüm bu yöntemler kendi başlarına yeterince faydalı olsa da, birlikte kullanıldıklarında çok daha güçlü olurlar. Örneğin rol prompting tekniği ile dual prompting tekniğini birlikte kullanmak gibi. Bu sayede daha spesifik ve daha anlamlı sonuçlar elde edebiliriz. Kendi Örneklerim Tabii, bu teknikleri bir öğretmenin derslerini daha verimli ve etkileşimli hale getirmek için yazabileceği promptlar şeklinde senaryolaştıralım: **1. Rol Prompting (Rol Verme)** **Senaryo:** Bir öğretmen, öğrencilerine tarih dersinde önemli bir tarihi kişiliği anlamaları için rehberlik etmek istiyor. **Prompt:** \"Sen bir tarih öğretmenisin ve öğrencilerine Mustafa Kemal Atatürk\'ün Kurtuluş Savaşı\'ndaki liderlik rolünü anlatıyorsun. Bu dönemdeki liderlik stratejilerini ve bu stratejilerin savaşın sonucuna olan etkilerini açıklayarak dersini planla.\" **Beklenen Yanıt:** Model, bir tarih öğretmeni perspektifinden, Atatürk\'ün liderlik stratejilerini ve bu stratejilerin savaşın sonucuna etkilerini detaylı bir şekilde açıklar, öğrencilere bu bilgileri aktarmak için bir ders planı önerir. **2. Few Shot Prompting (Az Sayıda Örnek Verme)** **Senaryo:** Bir öğretmen, fen bilimleri dersinde öğrencilerden bilimsel deney raporu yazmalarını istiyor ve onlara örnekler sunmak istiyor. **Prompt:** \"Fen bilimleri dersinde deney raporu yazmaları için öğrencilere rehberlik etmek istiyorum. Aşağıda iki farklı deney raporu örneği verdim. Benim için de bir deney raporu yazma yönergesi oluştur.\" - Örnek 1: \"Deneyin amacı,...\" - Örnek 2: \"Malzemeler:...\" **Beklenen Yanıt:** Model, verilen örnekleri dikkate alarak, öğrencilere deney raporu yazma konusunda yol gösterecek bir yönerge hazırlar. **3. Chain of Thought Prompting (Düşünce Zinciri Kurma)** **Senaryo:** Bir matematik öğretmeni, öğrencilerin problem çözme becerilerini geliştirmek için bir ders hazırlamak istiyor. **Prompt:** \"Öğrencilerime bir matematik problemini adım adım nasıl çözebileceklerini öğretmek istiyorum. Bir denklemi çözme sürecini adım adım açıklayan bir ders planı hazırlar mısın?\" **Beklenen Yanıt:** Model, önce problemin nasıl anlaşılması gerektiğini, ardından çözüm adımlarını sistematik bir şekilde nasıl ele alacaklarını anlatan bir ders planı sunar. **4. Dual Prompting (Çiftli Prompt Kullanımı)** **Senaryo:** Bir edebiyat öğretmeni, öğrencilerin bir romanın karakter analizini yapmalarını istiyor. **Prompt 1:** \"Bir roman karakterinin gelişimini analiz etmek için öğrencilere rehberlik etmek istiyorum. Karakter analizi yapmanın temel ilkelerini açıkla.\" **Prompt 2:** \"Bu karakterin hikaye boyunca nasıl değiştiğini ve geliştiğini anlamaları için öğrencilere verebileceğim örnek analizleri oluştur.\" **Beklenen Yanıt:** Model, önce karakter analizi yapmanın temel ilkelerini açıklar, ardından bu ilkeleri kullanarak öğrencilerin anlayabileceği örnek analizler oluşturur. **5. Sınırlayıcılar Kullanmak (Constraints Setting)** **Senaryo:** Bir öğretmen, öğrencilere verilen bir konuda kısa bir kompozisyon yazdırmak istiyor ve belirli bir kelime sınırı koymak istiyor. **Prompt:** \"Öğrencilerimden 200 kelimeyi geçmeyecek şekilde çevre sorunları hakkında bir kompozisyon yazmalarını istiyorum. Onlara bu konuda rehberlik edecek bir ders planı oluştur.\" **Beklenen Yanıt:** Model, belirlenen kelime sınırı içinde kalınarak etkili bir kompozisyon yazmayı öğretecek bir ders planı sunar, öğrencilerin düşüncelerini kısa ve öz bir şekilde ifade etmelerine yardımcı olacak stratejiler önerir. Bu senaryolar, öğretmenlerin derslerini daha verimli ve etkileşimli hale getirmeleri için etkili promptlar oluşturmasına yardımcı olabilir.

Use Quizgecko on...
Browser
Browser