Google Asistan’da Türkçe Uygulama Geliştirme – OK Google!

Google Asistan nedir? Conversational Design Nedir? Bu uygulama geliştirilirken dikkat etmemiz gereken konular neler? Nereden başlamalıyım? Para kazanır mıyım?

27 Ocak 2019 günü Google’ın düzenlediği Maslak Kolektif’te gerçekleşen “Google Asistan için Kendi Türkçe Uygulamanızı Geliştirin!” katıldım. Etkinlik keyifliydi, samimiydi aynı zamanda çok bilgi vericiydi. Günün önemli mesajlarını, aldığım notları paylaşıyorum. Ücretsiz bir etkinlikti, burada yazanların çok daha detaylısını Google’ın etkinliklerini takip edip katılarak siz de edinebilirsiniz.

Günün yarısında bilgi paylaşımı yapıldı, kalan yarısında da Codelab çalışması yapıldı. (Codelab kısmında mentor eşliğinde uygulama geliştirme yapılıyor)

Ben kendilerine bu faydalı bilgileri kazandırdıkları için çok teşekkür ediyorum. Umuyorum bu bilgiler sunumdan sunuma elden ele kulaktan kulağa dolaşır ve en kısa zamanda bu teknolojiye Türkçe olarak en iyi şekilde adapte oluruz. Biraz kendi yorum ve gözlemlerimi de ekleyerek edindiğim bilgileri paylaşıyorum.

Google Asistan ile Tanış

Ok Google!

Google Asistan aslında Apple’da “Hey Siri” dediğinizde ya da Google’da “OK Google” dediğinizde size cevap veren bir bot. Yeni bir teknoloji değil dediğinizi duyar gibiyim.

Ancak 2017 itibari ile bulut bilişim ve yapay zekanın gelişmesiyle bilgiyi işleme, gerçek zamanlı asistanların oluşumu daha mümkün oldu, ya da en azından daha kullanıcıyı memnun eder bir hal aldı diyebiliriz. Artık size sadece bilgi vermek ya da sizin yerinize basit bir tweet atmak değil, sizin yerinize gidip kuaförden randevu da alabiliyor. Google I/O 2018 keynote’ta bu özelliği bizlere tanıttı.

Google I/O 2018 Keynote – Google Asistan Tanıtımı

Google Asistan’ın güzel yanı ise artık Türkçe dilde geliştiriciler tarafından da bu platformun güçlendirilecek ve daha çok soruya cevap verecek olmasıydı ve bu da Aralık ayı itibari ile mümkün oldu. Yani artık Appstore, Playstore’a uygulama yaratmak gibi Google Asistan’a da uygulama yaratmak mümkün. Üstelik Türkiye piyasasında yeni olduğu için yapılabilecek çok farklı geliştirme var, henüz hiç yapılmadılar. Uygulama geliştirenler için yeni bir fırsat!

1 milyon üzerinde cihazda çalışabilen Google Asistanı şu an Türkiye’de de cep telefonlarında kullanabiliyorsunuz.

Conversational Design

Türkçe’sini çözen yok ancak Sohbet Tasarımı diyebiliriz belki. Bu tür Asistan uygulamalarında yer alan sohbetin nasıl ilerlemesi gerektiğine ilişkin bir tasarım. Temel amaç elbette kullanıcının ihtiyaçlarını karşılamak ve uygulamadan memnun ayrılmasını sağlamak.

Bu tasarımı gerçekleştirirken uymanız gereken 3 kural var:

  • Verdiğiniz cevaplar doğru, net, bilgi verici ve konuyla ilgili olmalı,
  • Tasarladığınız bot tarafında anlaşılmayan konuları doğru yönetilmeli ve pot kırılmamalı,
  • Kişinin tarzına uygun konuşmalı

Ne hizmeti verdiğinizi net olarak tanımlayabilmeli ve kullanıcı ile paylaşabilmelisiniz. Kullanıcıyı bu alanda tutmalısınız.

Persona yaratmanın çok kritik olduğu vurgulandı. Sizin uygulamanızı kullanacak hedef kitlesini belirlemeli ve onlara özel dil ve tonlama kullanmalısınız. Ya da elinde sadece sadece sesli iletişim kurabileceği bir cihazı olan kullanıcıya görsel göstermemelisiniz.

Özellikle Google Asistan conversational design’a odaklanmayı düşünüyor. If/else’lere değil, konuşmalara odaklanın. Uygulama geliştirme platformu sizi zaten pek çok kod yükünden el geldiğince kurtarmaya çalışıyor.

Güzel bir örnek paylaştılar bizimle bu konuda. Örneğin Pizzacı sizinle daha informal bir dil kullanarak konuşurken, bir otobüs uygulaması sizinle daha resmi konuşmalı.

Conversational Design - Persona
Conversational Design – Persona Pizzacı Restoranı ve Otobüs Uygulaması

Unutulmaması gereken bir diğer konu ise Google Asistan için özellikle kullanıcı profili şu şekilde çizildi. Çoğunlukla eli dolu kalabalık bir otobüste, ya da araba kullanan kişiler. Sizinle yüksek sesle kalabalık içinde konuşmak istemiyor da olabilirler. Tasarım yaparken bunu da dikkate almalısınız. Kolay sorular sorun, kısa cümleler kurun, dikkat dağıtmayın. Yazı dili değil, konuşma dili kullanın.

Google Asistan Tasarımı

Bunu Google Asistan’da gerçekleştirmek için iki kritik platform kullanıyorsunuz.

  • “Actions on Google” – conversational design konsolu
  • Dialogflow” – NLP, NLU platformu

Dialogflow şart değil, JSON’la veri alıp iletebildiğiniz sürece kendi platformlarınızı da kullanabilirsiniz. Dialogflow’un önemli bir avantajı, hazır cevap setlerini kullanabilirsiniz. En sevdiği rengi kullanıcıya sorduğunuzda sizin tanımlamanıza gerek kalmadan bünyesindeki pek çok rengi kullanabilme şansınız var.

Bu işe başlamak isteyenler için Codelab’leri kullanarak ilerleyebilir. Biz de çalışma sırasında bu yolu izledik. Bazı önemli kısımlara değineceğim, ancak ilgilenenlerin bir sonraki etkinliğe gitmelerini çok tavsiye ederim.

Özellikle vurgulanan konulardan biri kullanıcıya anlamıyorum dememek. Aşağıdaki örnekte kullanıcı bir yandan eşine sesleniyor, bir yandan birine mesaj göndermek istiyor ama adını söylemiyor, adını söylese birden fazla kişiye göndermeye çalışıyor. Bu tür durumları yönetebilmek gerekli.

“Seni Anlamıyorum” demek yerine ne yapılabilir?

Mikrofon konusu çok kritik, kullanılmadığı sürece mikrofonun mutlaka kapalı olması gerekiyor. Buna mutlaka dikkat etmeniz gerekiyor, bir kaç kez vurgulandı.

Personadan çok bahsetmiştik, SSML vesilesi ile speak tag’ler ekleyebilirsiniz ve bir konuşmayı hızlandırabilir, yavaşlatabilir ve arkaya ses ekleyebilirsiniz. Google’ın ücretsiz verdiği sesler de var.

Bu arada Google Asistan için kullandığınız platformlarda başka uygulamalarla da entegrasyon yapabiliyorsunuz. Örneğin Messanger, Slack, Twitter gibi.

Daha çok yazmak isterdim, çok notum da var. Ancak kendim yazılımcı olmadığımdan dolayı tereciye tere satmak çok doğru olmayacaktı. Bununla beraber bu tür etkinliklere katılımı destekliyorum, her şeyi yazamam. 🙂

Nesillerin Sesli Asistanlara Yaklaşımı

Benim bulunduğum nesil Y jenerasyonu, belki de bankalardan edindiği tecrübelerden dolayı bu sesli arayüzlerden pek hoşlanmıyor. (İtiraf ediyorum, bankalarla bir kez bile sesli yanıt ile ne işimi çözebildim ne de kendimi doğru yere aktartabildim. Ve gayet güzel Türkçe konuşuyorum. Hatta X Banka’nın müşteri hizmetlerine bağlanmanın en kısa yolu nedir diye Google’da arama da yaptım. Tek muzdarip olan ben değilmişim.)

Fakat yeni nesil böyle değil, onlar bu teknolojiyi daha olumlu karşılıyor. Yani bankacılık uygulamalarında biz bu işten rahatsız olsak da, geleceğin teknolojisi olarak kabul etmek zorundayız.

Google Asistan ve Gizlilik

Bildiğiniz üzere artık GDPR ve KVKK sebebi ile hayatımıza çok giren konu Kişisel Verilerin Güvenliği. Kişisel verilerin neden alındığı, nasıl saklandığı, ne amaçla kullanıldığı ve kiminle paylaşıldığını bildirdiğiniz bir Privacy Policy yazmak zorundasınız.

Eğer daha önceden de özellikle cep telefonu uygulaması geliştirdiyseniz benzer konular gündeme geliyor, kullanıcıdan bir veri almak için iznini almak zorundasınız, örneğin konum verisi.

Para Kazanabilir Miyim?

Playstore ya da Appstore’a yazılan uygulamalarda geliştiriceler reklam gösterme yoluyla para kazanabiliyordu. Google Asistan’da mümkün değil. Bu sebepten dolayı uygulamanızı kullanana reklam göstererek para kazanmak mümkün değil. Ancak bir ürün satışı gerçekleştirmek mümkün. Ya da bu alanı kurumsal şirketin müşteri hizmetleri kanalı olarak da kullanmak mümkün.

Para kazanmayacak olsanız bile, ilginiz ve bilginiz var ise zaman ayırıp üzerinde çalışabilirsiniz. Özellikle bu teknolojiyi öğrenmek ve deneyimlemek isteyen kişilerin proje portföyüne güzel bir girdi sağlayacaktır.

Elbette Google Asistan’ın portföyüne geçmeden önce aynı Playstore’a uygulama yükler gibi bir denetim sürecine giriyorsunuz. Uygulamanızda kullanıcıdan izinsiz veri toplama, gereksiz mikrofon açma, uygulamanın isminin Google Asistan için tanımlanan kurallara uygun olması, privacy policy gibi gereksinimleri sağlamak zorundasınız. Bununla beraber kullanıcılar Google Asistan’ı kullanırken sizin ürününüze benzer diğer ürünlere de denk gelebilirler. Google’ın öne çıkardığı, kullanıcıların iyi geribildirim verdiği ürün olmak için de sürekli ürününüzü iyileştirmeniz gereklidir.

Özetle Playstore ya da Appstore’a bir mobil uygulama yazmak size daha çok para kazandırabilir. Ancak bu yeni teknolojiye adapte olmak, yeni tanıtılmış bir üründe tecrübe ve bilgi edinmek, erken giriş yapmak isteyenler için de güzel bir zaman.

Kod Yazmayı Bilmeden Olur Mu?

Bu kısımda tamamen kişisel görüşlerimi paylaştım.

Google Asistan için yaratılmış platformlar bu Conversational Design işini kolaylaştırdı, bu bilgi doğrudur. Bu platform üzerinde çok basit bir tasarım yapmak, şablonları kullanmak isterseniz, birileri de size anlatırsa belki kod yazma tecrübeniz olmasa dahi bir şeyler başarabilirsiniz.

Bir iki farklı yazılım dilinde orta düzeyde, okuduğu kodun ne işe yaradığını çözebilen ya da nasıl araştıracağını bilen araştırdığı dokümantasyonlarda bulduğu cevapları anlayabilen biri bu işe adım atabilir gibi geldi. Çünkü kod yazmaktan kaçış yok, bir sorunun cevabına göre başka soru soracaksanız, öneri verecekseniz kod yazıyorsunuz. Bu işi ben yapmak istiyorum diyenler daha temelden başlamalı, baştan yazılım dili öğrenmeli.

Örnek bir kod (node.js)

Conversational Business Dünyası’na Meraklıysanız

Google Asistan Conversational Business için sadece bir örnek. Sesli ve yazılı asistanlar gittikçe hayatımızın bir parçası oluyor ve bu konuda daha çok okumak isteyebilirsiniz. Bunun için aşağıda sizinle başka yazılar da paylaşmak isterim.

Benim yazılarım farklı konular içeriyor, ancak bu dünyaya ilişkin daha fazla yazı okumak isterseniz de aşağıdaki siteleri size öneririm:

Son Söz

Tabi gittikçe akıllanan asistanlar bir devrin sonunu getirmekte. Sora sora yol bulmak gelecekte çocuklarımız için dehşet verici olabilir, ya da onlar Cem Yılmaz’ın Faruk Eczanesi skecine bizim kadar gülmezler belki.

-Cem Yılmaz ve Faruk Eczanesi 🙂