Ketel dan asisten suara. Awal dari persahabatan yang luar biasa



Apa yang kita miliki untuk jangka waktu tertentu di dunia GA ? Fakta yang diketahui: masing-masing perusahaan IT besar memiliki alat sendiri untuk bekerja dengan rumah pintar. Dan setiap vendor menyediakan API sendiri untuk mereka yang tertarik dalam integrasi. Dan pada tahap awal, bahkan membayar pengembang untuk keterampilan baru (tindakan, keterampilan, dll. - sesuai dengan terminologi vendor).

Layanan yang paling nyaman dan praktis hingga saat ini, menurut para ahli kami, adalah Amazon Alexa. Dia memiliki lebih banyak peluang untuk pembentukan keterampilan terperinci daripada Asisten Google, Yandex "Alice", Mail.Ru "Maroussia", Tinkoff "Oleg" dan lainnya. Untuk Alexa, perangkat adalah entitas virtual parametrik, sehingga keterampilan dapat disesuaikan untuk setiap perangkat secara individual. Misalnya, selain suhu air, Anda dapat menentukan bahan habis pakai yang akan ditawarkan asisten untuk dibeli di Amazon. Tapi, sayangnya, Alexa saat ini tidak mendukung bahasa Rusia dan tidak bekerja di wilayah Federasi Rusia, jadi GA ini tidak berguna untuk pengguna Rusia. Di Google dan Yandex, asisten lebih "alami" - ia menerima dan menanggapi perintah dalam bahasa "manusia", dapat melakukan dialog dengan pengguna, yang membuat GA ini lebih menyenangkan untuk digunakan. Satu-satunya kelemahan serius Google adalah tindakannya tidak mendukung bahasa Rusia. Namun, mulai 24 Juli 2019, Google Actions telah bekerja di "ponsel" dalam bahasa Rusia, sehingga rekan kerja telah menghilangkan kekurangan ini.

Ini baik-baik saja Dan jika kita ingin mengintegrasikan satu perangkat dengan beberapa GA?

Itu mungkin. Menggunakan perangkat.

Perangkat adalah entitas dengan perilakunya dalam sistem. Ini adalah prinsip umum untuk semua vendor. Dan di sini layak untuk dihentikan, di sini semua kesenangan dimulai. Perbedaannya ada pada pendekatan. Sebagai contoh, Google dan Yandex sedang mencoba untuk membakukan manajemen teknologi. Artinya, sekarang perlu untuk menulis kode bukan untuk setiap perangkat individu, tetapi satu program untuk seluruh seri sudah cukup. Dan bahkan jika perubahan firmware, Anda harus mengubah kode sekali, yang sangat nyaman. Perusahaan kami sudah memiliki integrasi dengan Google, Yandex, Amazon. Teknik mendengarkan Alice , Alex, dan asisten Google. Sebelumnya kami menunjukkan bahwa asisten suara di dalam .

Dari mana datangnya asisten suara?


Salah satu sistem pengenalan ucapan paling canggih di dunia adalah milik Google, sejarahnya dimulai pada tahun 2002. Perusahaan merilis Penelusuran Suara, yang menjadi dasar pengembangan Asisten Google. Pada 2016, ia dipresentasikan pada presentasi Google I / O. Google Home adalah salah satu 'permukaan' untuk Google Assistant. Sekarang keakuratan pengenalan suara GA mereka diperkirakan 95% dan hampir kalah dengan orang.

Asisten suara Alexa diperkenalkan oleh Amazon pada tahun 2014. Kolom pintar Amazon Echo, yang dapat mengontrol sejumlah besar perangkat di dalam rumah pintar, juga disajikan di sana.

Yandex SpeechKit - Sistem pengenalan ucapan Yandex. Ini digunakan dalam 400+ aplikasi. Perusahaan juga menyematkan browser GA-Alice-in dan perangkat elektroniknya. Perusahaan Rusia memperkenalkan GA-nya pada 2017, dan sudah pada musim gugur 2018, Yandex meluncurkan kolom pintar Yandex.Station-nya.

Ahli kami mengatakan bahwa pada tahun seratus lima puluh enam ...


Kami bercanda, sejauh ini hanya pada tahun 2020. Sedikit tentang statistik:

  1. Pada 2017, sekitar 33 juta perangkat yang dikendalikan suara terdaftar di seluruh dunia;
  2. Pakar Barat menyebut pencarian suara sebagai salah satu dari 3 tren SEO teratas di tahun 2017 ;
  3. Untuk 2018, Google Assistant bekerja di 400 juta perangkat di seluruh dunia. Dan angka ini hanya tumbuh;
  4. Menurut Global Web Index , 25% orang berusia 16 hingga 24 tahun menggunakan pencarian suara dari perangkat seluler;
  5. Menurut perkiraan Comscore , pada tahun 2020, 50% permintaan akan dilakukan melalui suara;
  6. Menurut penelitian 2018 oleh WalkerSands , setiap pengguna kelima dari speaker pintar dari Amazon membelinya, dan yang ketiga berencana melakukannya tahun depan;
  7. Menurut penelitian PWC , 71% pengguna yang mencari di web lebih suka mengetikkan suara daripada secara manual.

Seperti yang dapat Anda pahami, kecenderungan untuk menggunakan GA meningkat, yang menunjukkan bahwa sudah waktunya untuk mengambil vendor dan meluncurkan asisten Anda sendiri. Bagi kami, kuncinya adalah kemampuan mengontrol perangkat pintar, yang akan membedakan SkyFriend dari asisten lain.

Dan mari kita integrasikan!


TETAPI juga tugas kami adalah bekerja dengan pendekatan vendor yang ada dan selanjutnya menyesuaikannya dengan protokol kontrol teknologi khusus kami. Kami mengikuti jalur standardisasi, aplikasi praktis, menganggap perangkat sebagai seperangkat keterampilan: setiap ketel tahu cara merebus air (keterampilan), ia juga tahu cara memanaskannya ke suhu (keterampilan) yang diinginkan, mempertahankan suhu ini untuk waktu tertentu, dll. Misalnya, "On / Off" perintah adalah standar untuk perangkat apa pun. Tugasnya adalah mentransfer perintah ini dari layanan ke protokol kami. Apa kekhasan protokol kami? Ini menghubungkan asisten suara yang berbeda (sekarang tiga, di masa depan - semua yang besar) dan memungkinkan mereka semua bekerja dengan perangkat, termasuk pada saat yang sama. Komunikasi adalah satu ke banyak. Satu-satunya pertanyaan adalah bagaimana tepatnya kita menyesuaikan protokol kita dengan semua pendekatan?

Ayo lihat. Proyek terpisah untuk setiap GA adalah:

  • Peningkatan staf
  • Banyak kode dan warisan di masa depan;
  • Ketidakmampuan untuk skala.

Ketika asisten baru muncul di pasar, seseorang harus secara proporsional meningkatkan staf dan volume pekerjaan. Adalah logis bahwa kami menolak opsi ini. Namun, terlepas dari pendekatan yang berbeda untuk setiap asisten suara, mereka dapat menemukan sesuatu yang sama - pada dasarnya mereka bekerja dengan keterampilan, sifat, keterampilan. Nama-nama itu berbeda, tetapi esensinya sama. Jadi, tugasnya adalah mengembangkan "keterampilan" Anda, yang akan dirasakan oleh asisten. Di masa mendatang, Anda hanya perlu menambahkan vendor baru, yang menyelesaikan masalah penskalaan. Kami juga akan mengingat bahwa sejumlah besar peralatan kami menggunakan kendaraan BLE, yang menentukan fitur arsitektur.

Kami telah mengembangkan dua layanan microser yang bekerja berpasangan.



Yang pertama adalah lapisan perintah. Tugasnya: untuk melakukan konversi (pemetaan) antara API vendor dan protokol kami. Ini berfungsi seperti ini: permintaan khusus untuk asisten memetakan keterampilan kami - memetakan untuk protokol perangkat. Dengan pendekatan ini, mudah untuk menambahkan keterampilan baru: pemetaan dilakukan untuk protokol R4S akhir - kode ditransfer ke layanan kedua. Item terakhir dapat dikecualikan saat mengirimkan perintah melalui Wi-Fi.

Lapisan layanan atau transportasi kedua digunakan untuk:

  1. Buat sesi dengan gateway klien;
  2. Meningkatkan dan memelihara koneksi Bluetooth;
  3. Penerimaan / pengiriman perintah dari layanan pertama.

Layanan ini adalah bagian dari entitas level yang lebih tinggi: BT-device plus gateway-intermediary, bekerja berdasarkan prinsip: menerima perintah melalui Internet - mengirim melalui BT. Koneksi nirkabel mungkin tidak dapat diandalkan. Mengapa Saluran radio dapat dibatasi oleh parameter lingkungan - dinding beton tebal, dll ... Akibatnya, perangkat dapat "jatuh" secara elementer, oleh karena itu menjaga koneksi yang stabil menjadi tugas penting untuk lapisan transportasi.



Kebijakan koneksi mungkin berbeda:

1. Dukungan komunikasi berkelanjutan.

Kelebihan : keterlambatan minimum dalam pelaksanaan perintah GA.
Cons : mahal untuk lalu lintas dan konsumsi daya; ada batasan jumlah perangkat yang terhubung secara bersamaan (pada generasi ini Bluetooth 4.0 / 4.2 - enam, dalam Bluetooth 5.0 hingga dua puluh). Ini juga akan membutuhkan sumber daya server tambahan.

2. Koneksi sesuai permintaan.

Pro : menghubungkan hampir tidak memerlukan lalu lintas dan biaya.
Cons : penundaan yang tinggi dalam pelaksanaan perintah ditambah eksekusi itu sendiri tidak dijamin (koneksi mungkin "jatuh" atau tidak berhasil). Dengan pendekatan ini, kami tidak cocok sambil menunggu GA menjawab. Sesi berakhir dan berakhir.

Pertanyaannya juga tetap - perintah diterima dan berhasil, TETAPI apa yang harus dilakukan dengan koneksi lebih lanjut: lepaskan atau teruskan. Perhatikan bahwa Apple HomeKit bekerja dengan cara yang persis sama ketika bekerja dengan perangkat terminal BLE (melalui Apple TV atau iPad sebagai gateway). Sepertinya ini - pertama kali Anda mencoba mengirim perintah, prosesnya memakan waktu yang cukup lama (atau lebih baik, terlihat oleh pengguna), tetapi perintah selanjutnya dijalankan hampir secara instan. Setelah pengguna bekerja dengan perangkat selesai, sistem operasi "mengatur" sesi setelah beberapa waktu yang wajar dan kemudian proses diulang seperti baru.

Namun, itu belum semuanya.


Kesulitan 1 . Routing gerbang.



Jika ada beberapa gateway di ruangan itu, muncul pertanyaan - mana yang harus dihubungkan, dan gateway mana yang terhubung perangkat. Sekarang semuanya berjalan sesuai dengan prinsip - siapa pun yang berhasil terhubung. Implementasi tidak selalu berhasil, karena gateway terdekat (dan karena itu dapat terhubung dengan lebih andal) dapat sibuk dalam slot waktu yang digunakan. Kemudian orang yang bebas dan mampu terhubung. Ini terjadi tanpa memperhatikan kualitas komunikasi. Oleh karena itu, penting untuk membangun hierarki dan skema kerja agar pengguna senyaman mungkin.

Kesulitan 2 . Banyak pengguna.

Ini adalah situasi di mana banyak pengguna dapat menggunakan satu gateway atau perangkat secara bersamaan. Tentu dengan tingkat keamanan yang tinggi. Misalnya, dari berbagai GAS atau dari GAS dan telepon pengguna. Segerombolan pertanyaan: perangkat mana yang pertama kali dihidupkan, jika perintah GA saling bertentangan, perintah mana yang menjadi prioritas dan harus dieksekusi lebih awal, dll. Sebagian masalah kita diselesaikan oleh layanan Redis - database di mana sesi pengguna, status perangkat, dan transceiver disimpan. perintah dan melayani bus data antara layanan pertama dan kedua. Tapi di sinilah solusi untuk masalah berhenti.

Apa yang telah kita lakukan Kami membuat SkyFriend. Ini adalah pengembangan kami sendiri, asisten suara untuk manajemen teknologi, yang juga akan mendukung bahasa Rusia. Fitur utama dari GA kami adalah dipertajam untuk interaksi langsung dengan teknologi Smart Ready for Sky tanpa instrumen tambahan. Perangkat dua dalam satu - asisten dikombinasikan dengan gateway, yang akan menerima informasi baik melalui perintah yang dikirim pengguna dari ponsel cerdasnya, atau langsung dengan suara. Plus SkyFriend memiliki fitur tambahan yang memungkinkannya untuk bersaing dengan yang sudah ada. Ia dapat mengaktifkan pengingat atas permintaan, ia dapat menentukan geolokasi pengguna, mencari informasi di Wikipedia, merekomendasikan film, bersulang, membaca berita, menjawab pertanyaan, memberi tahu waktu dan cuaca di kota mana pun di dunia, bermain Misteri dan Kota dengan pengguna membuat lelucon. Membeli tiket dan memesan taksi masih dalam tahap uji alfa. Dan ini hanya bagian dari fungsi.

Baru-baru ini, Google mengumumkan karya kolomnya pada arsitektur yang serupa - skrip eksekusi dimuat langsung ke kolom Beranda Google. Menang di sisi pengguna adalah mengurangi waktu yang diperlukan untuk menjalankan perintah. Anda tidak perlu mengirimnya ke server pembuat peralatan, itu langsung terbang ke kolom dari server Google melalui saluran komunikasi yang sama dan dieksekusi di sana.

Namun, Google masih tidak mendukung transportasi lain - Bluetooth, ZigBe, Z-Wave, RF, dll. langsung di kolom, dan SkyFriend mendukung Bluetooth 5.0.

Apa lagi yang tersisa? Bekerja dengan sumber daya sistem - menambah memori, daya prosesor, dll. Dan kami siap menawarkan pengguna kualitas GA baru.

Apa yang bisa kita katakan sebagai kesimpulan?


GA adalah tren, nyaman, praktis. Topiknya baru, komprehensif, masih banyak pertanyaan yang masih sulit dipecahkan. Khususnya sendirian. Karena itu, kami mengundang Anda untuk berdiskusi.

Apa yang akan terjadi selanjutnya? Dan kemudian akan ada artikel baru tentang arsitektur SkyFriend. Kami akan memberitahu dan menunjukkan segalanya. Tapi kemudian.

Saran dan ulasan PS dapat ditinggalkan di komentar.

Source: https://habr.com/ru/post/id461363/


All Articles