Türkçe Anlayan Yapay Zeka (Şimdi Siri, Alexa Düşünsün)

Nuri Erginer
4 min readDec 20, 2020

--

Bu yazıda bazı web servislerini kullanarak nasıl Türkçe komutları anlayan bir yapay zeka sistemi kurabileceğimizi ve akıllı ev sistemimize bunu nasıl entegre edebileceğimizi göstermeye çalışacağım.

Birden bire bazı servisleri ve teknolojileri beraber kullanmak fikri beliriveriyor kafamda. Ondan sonrada denemeden rahat edemiyorum. İşte koca bir pazarımı alıp götüren ama sonra hoşuma giden çalışmamı sizlerle paylaşıyorum. En son Mark Zuckerberg’in evi için yaptığı çalışmayı görünce benzerini hangi teknolojilerle yapabilirim diye düşündüm. En hoşuma giden kısmı her zaman yanımızda olan cep telefonu ile akıllı evi ile konuşması oldu. Telegram Bot bu işte benim konuşmalarımı alıp akıllı ev komutlarını anlayacak olan sisteme yönlendirecekti. Telegram Bot tam bir geliştirici dostu kurcalamanızı tavsiye ederim. Bundan sonraki adım Türkçe komutları, cümleleri alıp bir yapay zeka servisine göndermek ve orada işlemek olacak. Gördüğünüz gibi aslında yoğun geliştirme ve kodlama yerine mevcut sistemleri bir biri ile entegre ediyorum. Sakın burdan kod yazmayın zaten herşey var alın kullanın anlaşılmasın. Aksine siz de başkalarına hizmet verecek güzel yazılımlar geliştirin ve hizmete sunun. Bugun malesef yabancı marka telefon, araba veya bilgisayar kullandığımız gibi yarın da yabancı yazılım servislerini kullanıyor olacağız. O nedenle şimdiden yerli servisler ve API lar yazalım hizmete açalım.

Birbirinden farklı sistemleri bir arada çalıştırırken en zor kısım, bir sistemin ürettiği datayı diğer sistemin anlayacağı data yapısına dönüştürmek oluyor. Burada da birden çok sefer data yapısını değiştiriyor ve hatta ses dosyası formatını bile on the fly mpeg den wav’a çeviriyoruz. Çevirme işlemi diyince tabiki biraz kod devreye giriyor. Onu da Wit servisinden biraz bahsettikten sonra anlatacağım.

Wit.ai

Wit.ai aslında doğal dil işleme servisi. Facebook tarafından satın alındı. Birçok programlama dilini destekliyor ve bedava. Aslında neredeyse tüm firmalar yapay zeka servislerini bedava yapıyorlar. Milyon dolarlar harcanan bu servisleri neden bedava kullandırıyorlar derseniz? Bence nedeni bizi bu yapay zekaları eğitmekte kullanıyorlar. Yapay zeka algoritmalarının çok büyük ve doğru veri setleri ile eğitlesi gerekiyor. Bu hizmetler şimdilik kullanıcılara bedava kullandırılıp algoritmalar mükemmelleştiriliyor. Bundan 10 sene önce aslında başta IBM ve diğer büyük bilişim firmaları yapay zeka algoritmalarını eğitmeye başladı. 10 yıl sonrada bu algoritmaların çok güçlü olacağını ve başta savunma ve medikal olmak üzere bir çok alanda kullanılacaklarını tahmin etmek zor değil. Biz 10 yıl sonra kendi yapay zeka yazılımlarımızı eğitmeye başlasak onlarınki bizden 20 yıl daha eğitimli olacak. Bazı önemli ve kırılım yaratacak teknolojilerden devlet büyüklerimizi haberdar etmeli ve bu alanlara milli yatırımlar yapılması gerektiğini anlatmalıyız. Wit.ai den başka herşeyden bahsettim galiba 🙂 Siz en iyisi açıp bakın. Türçe ses dosyasını Türkçe yazıya dönüştürmede oldukça iyi Wit.ai. Ses yazıya dönüştürüldükten sonra da sizin temel kurallarını koyduğunuz bir doğal dil işleme sistemi ile komut ve cümleler sistem tarafından yourumlanıyor ve belli program bloklarını çalıştırabiliyor. Yanlız sakın burada akıllı bir yapay zeka var sanmayın. Wit’in size sunduğu sadece dil işleme fonksiyonları bir akıl katacaksanız siz her bir olası komutu düşünüp verilmesi gereken cevabı sisteme tanıtmalısınız. Meraklı arkadaşlar ile belki bir Akıllı Ev için gerekli mümkün olduğunca çok komutu tespit edip Wit.ai üzerinde tanımlarız. Artık Bu servisleri birleştiren dataları çeviren ve asıl benim geliştirdiğim yazılım kısmına bakalım. Bunları yapmak için Node-Red Kullandım.

Nod-Red

IBM’de çalışan bir kaç yazılımcının ortaya çıkardığı bir geliştirme aracı node-red ve kesinlikle öğrenilmesi gerekiyor bence. Bu uygulamadaki az sayıda kodu ben bu platformda geliştirdim. Aslında Node-Red Server tüm servislerin API lerini çağırdığımız ve gerekli dönüşümleri yapan ana yazılımı içeriyor. Node-Red adından da anlaşılacağı gibi google’ın Nodejs Server tarafı javascrpit motoru üzerine geliştirilmiş. Kullanımı son derece basit ve IoT ve akıllı ev uygulamaları için tamda aradığınız şey. Aşağıdaki resim benim tüm bu işleri yapan yazılımının node-red görüntüsü. Her bir kutucuğun içerisinde yazdığım bazı kod satırları var.

Biraz karışık görünebilir ama kolay değil Türkçe komutları anlayan bir Akıllı Ev Sistemi bu.

Sonoff Wifi Röle

Sistemin bir diğer bileşeni de içerisinde hepimizin sevdiği Esp8266 wifi çipi barındıran Itead firmasının Wifi Rölesi. Bu röle 4–5 Dolar fiyatlara satılıyor. İçinde kendi firmware yazılımı olsada bu çipi iyi bildiğimden devre üzerinde belirli pinlere bağlantılar yaparak içerisine kendi firmware yazılımımı yükledim. Artık kendi ev networküme ve kendi MQTT serverıma bağlanıyor. İlginizi Çektiği ise ileriki bir yazıda bunu nasıl yaptığımı daha ayrıntılı olarak anlatabilirim. Aşağıdaki yorumlar kısmına isteklerinizi lütfen yazın. Sonoff’un yazılımıda değiştiğine göre Ses tanıma sisteminden gelen komut eğer açma isteği ise MQTT nin belirli Topiğine on mesajını yayımlıyoruz. Sonoff da bu mesaja subscribe olduğundan on mesajı gelir gelmez röleyi açıyor. Aynı şekilde kapama da benzer şekilde çalışıyor.

Sonuç

Gelecek Web servislerini bir problemi çözmek için bir araya getirmek ve eksikleri de kendi yazacağınız servislerle tamamlamak üzerine gelişecek diye düşünüyorum. API ve web tabanlı servislerin nasıl kullanıldığı ve buradaki haberleşme protokollerini ve otorizasyon sistemlerini öğrenmek gerek diye düşünüyorum. Başta amazon olmak üzere bir çok büyük bulut hizmeti sunan firmalar serverless sistemleri tanıtıyorlar. Burada büyük bir gelecek olduğunu düşünüyorum.

Sizde gelişmiş bir Akıllı Ev sistemi kurmak yada bu sistemlere dahil olabilecek cihazlar tasarlamak istiyorsanız benimle iletişim kurabilir ortak projelere dahil olabilirsiniz.

Evlerin bile Akıllı olduğu bir çağda yaşıyoruz. Yolunuza hep akıllı insanların çıkması dileği ile…

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Nuri Erginer
Nuri Erginer

Written by Nuri Erginer

Industrial Engineer, Developer, Maker

No responses yet

Write a response