Talaan ng mga Nilalaman:

Personal na English Trainer - AI Voice Assistant: 15 Hakbang
Personal na English Trainer - AI Voice Assistant: 15 Hakbang

Video: Personal na English Trainer - AI Voice Assistant: 15 Hakbang

Video: Personal na English Trainer - AI Voice Assistant: 15 Hakbang
Video: DR. VICKI BELO's TRANSFORMATION💖🤩#vickibelo #doctor #transformation #viral #trending 2024, Nobyembre
Anonim
Personal na English Trainer - Katulong sa AI Voice
Personal na English Trainer - Katulong sa AI Voice

Tutulungan ng proyektong ito ang mga mag-aaral na naghahanda para sa anumang pagsusulit sa lingguwistiko, kung saan maaari silang sanayin sa pamamagitan ng pakikipag-ugnay sa Snips AI.

Hakbang 1: Kwento

Kwento
Kwento
Kwento
Kwento

Bakit Namin Binuo Ito?

Mula sa aking personal na karanasan, nakita ko ang maraming tao na naghahanda para sa iba't ibang pagsubok sa lingguwistiko tulad ng GRE, TOEFL, IELTS. Kailangan nila ang isang tao upang matulungan sila sa pagmemorya at pag-unawa sa mga salita. Karaniwan, kapag ang isang tao ay naghahanda para sa anumang naturang pagsusulit, kailangan nila ng isang tao upang suriin at iwasto kung nagkamali sila. Sa solusyon na ito, mababawas natin ang lakas ng tao sa pamamagitan ng paggamit ng isang katulong sa boses.

Hakbang 2: Bumuo ng Hardware

Pagbuo ng Hardware
Pagbuo ng Hardware
Pagbuo ng Hardware
Pagbuo ng Hardware

Una sa lahat, nais kong pasalamatan ang SNIPS at TINGNAN para sa pagsuporta sa proyektong ito sa kamangha-manghang Snips Voice Interaction Development Kit (Base Kit), talagang naramdaman kong may kaalaman ako gamit ang board na ito at nakamit ang ilan sa mga kumplikadong proyekto na isinama sa loob ng isang PCB.

Maaari kang bumili ng Snips Voice Interaction Base Kit sa halagang $ 115 at Snips Voice Interaction Satellite Kit sa halagang $ 85

Hakbang 3: Pagsisimula Sa SNIPS

Pagsisimula Sa SNIPS
Pagsisimula Sa SNIPS
Pagsisimula Sa SNIPS
Pagsisimula Sa SNIPS
Pagsisimula Sa SNIPS
Pagsisimula Sa SNIPS

Bago magsimula, suriin natin kung ano ang kakailanganin mo.

  • Raspberry Pi 3B / B + (Inirekomenda) o Pi 2 Model B (Suportado).
  • Micro-USB Cable at Micro-USB power adapter para sa Raspberry Pi.
  • Micro SD Card (Minimum 8 GB) - Kinakailangan ang isang operating system upang makapagsimula. Maaari mong i-download ang Raspbian Stretch at gamitin ang mga gabay para sa Mac OS, Linux, at Windows Sa website ng Raspberry Pi.
  • Isang USB Keyboard & Mouse, at isang panlabas na HDMI Monitor - inirerekumenda rin namin ang pagkakaroon ng isang USB keyboard at mouse pati na rin isang madaling gamiting HDMI monitor.
  • Koneksyon sa Internet (Ethernet o WiFi)

Snips Voice Interaction Base Kit

Ang Snips Voice Interaction Development Kit ay binibigyan ng kapangyarihan ang mga gumagamit na patalon ang kanilang pag-unlad ng mga interface ng boses at madaling isama ang Snips AI Voice Platform sa hardware. Tumatakbo ang mga snips sa aparato, nangangahulugang lahat ng iyong mga utos ng boses at data ay lokal na naproseso sa halip na maipadala sa cloud. Ang pagproseso ng on-device na ito ay nagreresulta sa isang ganap na ligtas na offline na katulong sa boses na pinapanatili ang iyong personal na data na pribado, tulad ng nararapat.

Pinapayagan ka ng Kit ng Batayan ng Pakikipag-ugnay sa Boses na patakbuhin ang buong Snips AI Voice Platform. Pinapagana ng isang Raspberry Pi 3 Model B + at ng ReSpeaker 2-Mics Pi HAT, may kakayahang kumilos bilang iyong home smart speaker. Kasama ang kit ay dumating ang isang speaker, isang Grove - Temperature & Humidity Sensor (SHT31), isang Grove - Relay, at isang pegboard na isabit ito sa isang pader o lumikha ng isang magandang nakatayo.

Ngunit hindi lang iyon! Ang Voice Interaction Satellite Kit ay magpapalawak ng iyong base station upang maabot ang bawat silid ng iyong bahay at payagan kang makipag-ugnay sa hardware batay sa kung saan mo inilalabas ang iyong mga utos!

Naglalaman ang kit na ito ng isang board na Raspberry Pi3 B +, ReSpeaker 2-Mics Pi HAT, Grove - Relay, Grove - Temperature & Humidity Sensor (SHT31), Speaker 6 Ohm 2W, MicroSD Card, Power adapter na may Micro USB konektor, Grove cable x 2, Acrylic Base panel

Mga Hakbang sa Assembly: (Nilalaman mula sa SNIPS) Ang sumusunod na larawan ay ang pangkalahatang-ideya ng mga bahagi ng pagpupulong.

Narito ang mga bahagi ng pagpupulong ay naka-mount sa base panel.

Pagkatapos, ang lahat ng mga elektronikong bahagi ay naka-mount sa board.

Matapos i-mount ang pabalat na Acrylic Protective sa tuktok ng Grove -Relay.

Ang 2 bahagi na ito ay ginagamit upang gawin ang Kit sa isang table stand.

Sa wakas, handa ka nang maglaro sa Snips.

Nagbibigay ang kit ng dalawang paraan ng paglalagay. Maaari itong mailagay sa isang pahalang na ibabaw tulad ng isang stand o maaaring i-hang sa isang pader gamit ang mga wire o thread. Mangyaring maging maingat sa Relay kapag ang kit ay pinapagana dahil ang boltahe sa pagtatrabaho ay magiging mataas.

TANDAAN: Mayroon din kaming Snips Voice Interaction Satellite Kit na mayroong isang Raspberry Pi zero kapalit ng Raspberry Pi 3B +

Hakbang 4: Pag-interfacing Sa Snips AI (Pangunahing Proyekto)

Image
Image
Pag-interfacing Sa Snips AI (Project AI)
Pag-interfacing Sa Snips AI (Project AI)
  • Lakasin ang kit sa pamamagitan ng default power adapter sa kit o gumamit ng isang 5V-2A DC adapter na may isang konektor ng Micro USB.
  • Ang susunod na hakbang ay ang pag-install ng katulong na Snips sa Raspberry Pi. Upang mai-save ang iyong oras sa pag-set up, ang MicroSD card sa kit ay na-flash gamit ang buong imahe ng system na nagagamit, na nangangahulugang handa na ang katulong ng Snips para sa iyong mga salitang trigger.
  • Masidhi naming iminumungkahi sa iyo na pag-aralan ang sunud-sunod na gabay sa pag-install sa pamamagitan ng pagbisita sa: https://docs.snips.ai/getting-started/quick-start… at alamin ang sam tool sa linya ng utos.
  • Trigger ang katulong sa pagsasabing "Hey-snips", at sundin ang utos:

Mahahanap mo ang video ng halimbawang paunang naka-install sa base ng Snips Voice Pakikipag-ugnay sa ibaba.

Hakbang 5: Pag-interfacing Sa Snips AI (Project AI)

Kaya't ito ang gumagana. Una, ginagamit namin ang hotword upang simulan ang pagkilala sa Snips. Nauunawaan nito ang pangungusap gamit ang Snips NLU at tinutukoy ang hangarin. Susunod na gamit ang hangarin, kunin ang mga puwang ayon sa pagkakabanggit. Gamit ang code ng pagkilos, pinoproseso namin ang tugon ng AI na may kani-kanilang mga puwang.

Hakbang 6: Lumilikha ng App at Nilalayon

Lumilikha ng App at Nilalayon
Lumilikha ng App at Nilalayon
Lumilikha ng App at Nilalayon
Lumilikha ng App at Nilalayon
Lumilikha ng App at Nilalayon
Lumilikha ng App at Nilalayon
  • Lumikha ng isang Katulong. Sa aking kaso, lumikha ako ng isang katulong na may pangalang JARVIS at may isang hotword na JARVIS.
  • Lumikha ng isang Pasadyang Application o para sa mga nagsisimula, gamitin ang Application mula sa library.
  • Lumikha ako ng isang Application na may pangalang Words
  • Lumikha ng isang Intent at simulang pagsasanay ang AI. Ginampanan nito ang isang pangunahing papel sa pagpapahusay ng iyong AI. Sanayin ito sa lahat ng mga posibleng input.
  • Lumikha ng isang puwang upang makilala ang mga salita. Ilagay ang puwang sa inaasahang parirala ng pangungusap. Para sa aking halimbawa, ang ibinigay na salita ay ang pangalan ng puwang at ito ay na-highlight ng asul.
  • Kapag tapos na ito, magiging handa ang iyong pasadyang ASR. Subukan gamit ang mga input. Mahahanap namin ang tugon sa iyong kanan, sa ibaba ng katulong. Binibigyan ka nito ng pagkuha ng hilaw na halaga, pangalan ng hangarin, at ang puwang.
  • Tukuyin ang mga puwang na may higit pang mga halimbawa tulad ng ibinigay sa ibaba
  • Panghuli, I-deploy ang iyong katulong upang maranasan ang iyong isinapersonal na AI.

Hakbang 7: Sunugin ang Raspbian sa SD Card

Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card
Sunugin ang Raspbian sa SD Card

Ang Raspbian ay ang pamamahagi ng pagpipilian ng Linux na tumatakbo sa Raspberry Pi. Sa gabay na ito, gagamitin namin ang bersyon ng Lite, ngunit ang bersyon ng Desktop (na kasama ng isang grapikong kapaligiran) ay maaari ding magamit.

  • I-download ang Etcher at i-install ito.
  • Ikonekta ang isang SD card reader sa loob ng SD card.
  • Buksan ang Etcher at pumili mula sa iyong hard drive ng Raspberry Pi.img o.zip file na nais mong isulat sa SD card
  • Piliin ang SD card kung saan mo nais isulat ang iyong imahe.
  • Suriin ang iyong mga napili at i-click ang 'Flash!' upang simulang magsulat ng data sa SD card

Ikonekta ang aparato sa iyong network

  • Paganahin ang pag-access ng SSH sa pamamagitan ng pagdaragdag ng walang laman na file ssh, muling inilagay sa ugat ng dami ng boot sa iyong SD card.
  • Ipasok ang SD card sa Raspberry Pi. Mag-boot ito sa halos 20 segundo. Dapat ay mayroon ka nang access sa SSH sa iyong Raspberry Pi. Bilang default, ang hostname nito ay magiging raspberrypi.local. Sa iyong computer, buksan ang isang window ng terminal at i-type ang sumusunod:

ssh [email protected]

Ang default na password ay raspberry

Hakbang 8: I-install ang Snips Platform

I-install ang Snips Platform
I-install ang Snips Platform
I-install ang Snips Platform
I-install ang Snips Platform
I-install ang Snips Platform
I-install ang Snips Platform

Kung hindi mo pa nagagawa, i-install ang Sam Command Line Interface sa iyong computer. Magbukas ng isang window ng terminal, at ipasok ang:

sudo npm install -g snips-samor npm install -g snips-sam // Windows

Hanapin ang iyong Raspberry Pi sa network sa pamamagitan ng pagpapatakbo:

sam aparato

Susunod, magtaguyod ng isang koneksyon sa aparato. Sasabihan ka para sa username at password ng aparato (ang default ay pi at raspberry, ayon sa pagkakabanggit):

sam kumonekta

Handa na kaming i-install ang platform ng Snips sa Raspberry Pi. Ipasok ang utos:

sam init

Hakbang 9: I-configure ang Hardware

I-configure ang Hardware
I-configure ang Hardware
I-configure ang Hardware
I-configure ang Hardware

Nagbibigay ang Sam ng ilang mga utos upang madaling i-set up at i-configure ang mga bahagi ng hardware. Sa seksyong ito, magse-set up kami ng isang speaker at isang mikropono. Nakasalalay sa iyong pag-set up, kailangang gawin ang ilang pasadyang pagsasaayos.

sam setup audio

Subukan ang nagsasalita

Upang suriin ang gumagana ng speaker, patakbuhin

sam test speaker

Kung ang lahat ay gumagana nang maayos, dapat mong marinig sa iyong tagapagsalita ang isang boses na nagsasabi ng ilang mga salita. I-configure ang mikropono Maaari mong suriin kung gumagana ang iyong mikropono:

sam test microphone

Ipagpalagay na mayroon kang isang speaker, kung malinaw mong maririnig ang iyong sinabi, maaari kang magpatuloy nang walang karagdagang pagsasaayos ng mikropono.

Kapag nasiyahan ka na ang iyong pag-setup ng hardware ay gumagana, handa ka nang magpatuloy sa susunod na hakbang, kung saan mo mai-deploy ang iyong unang katulong.

Hakbang 10: Pag-import ng Modelong AI Mula sa Console

Pag-import ng Modelong AI Mula sa Console
Pag-import ng Modelong AI Mula sa Console

Kapag nilikha mo ang iyong katulong mula sa mga nakaraang hakbang, mag-log in sa console mula sa window ng terminal sa pamamagitan ng pagpapatakbo:

sam login

Hihilingin sa iyo na ipasok ang iyong mga kredensyal ng Snips Console.

Susunod, i-install ang katulong:

sam install ng katulong

Kung nakalikha ka ng maraming mga katulong sa Console, hihilingin sa iyo na pumili kung alin ang mai-install mula sa isang listahan.

Hakbang 11: Handler at Code ng Pagkilos

Upang tumugon ang Raspberry Pi, magsusulat kami ng ilang handler code. Ito ay isang code na naisakatuparan kapag nangyari ang isang tiyak na kaganapan sa platform ng Snips, tulad ng kapag nakita ang hangarin.

Mayroon kang iba't ibang mga pamamaraan upang lumikha ng Handler depende sa paggana.

Lumikha ng isang folder sa iyong computer kung saan mo nais iimbak ang iyong code ng handler. Mula sa window ng terminal, baguhin sa direktoryo na iyon, at ipasok ang:

npm init

Lilikha ito ng isang file na pinangalanang package.json na naglalaman ng paglalarawan ng iyong proyekto, mga dependency at marami pa. Susunod, idagdag ang pagtitiwala sa package ng mqtt:

npm install mqtt --save

Ngayon, lumikha ng isang file na tinatawag na index.js, at i-paste ang sumusunod na code, palitan ang variable ng hostname ng hostname ng iyong Raspberry Pi (kung naiiba ito mula sa default raspberrypi):

var mqtt = nangangailangan ('mqtt');

var hostname = "mqtt: //raspberrypi.local"; var client = mqtt.connect (hostname); client.on ('connect', function () {console.log ("[Snips Log] Nakakonekta sa MQTT broker" + hostname); client.subscribe ('hermes / #');}); client.on ('message', function (topic, message) {if (topic === "hermes / asr / startListening") {onListeningStateChanged (true);} iba pa kung (topic === "hermes / asr / stopListening") {onListeningStateChanged (false);} iba pa kung (topic.match (/ hermes / / hotword / /.+ / / napansin / g)! == null) {onHotwordDetected ()} iba pa kung (topic.match (/ hermes / /intent\/.+/g)! == null) {onIntentDetected (JSON.parse (message));}}); pagpapaandar saIntentDetected (hangarin) {console.log ("[Snips Log] Nakita ang layunin:" + JSON.stringify (hangarin)); } pagpapaandar saHotwordDetected () {console.log ("[Snips Log] Nakita ang Hotword"); } function onListeningStateChanged (nakikinig) {console.log ("[Snips Log]" + (nakikinig? "Start": "Stop") + "nakikinig"); }

Patakbuhin ang code na ito gamit ang Node:

node index.js

Dapat mong makita ang isang mensahe ng isang matagumpay na koneksyon sa Snips MQTT broker. Tulad ng dati, magsagawa ng pakikipag-ugnay sa boses sa iyong Raspberry Pi:

Hoy Snips, ano ang panahon sa Chennai

Dapat mong makita ang mga pag-update ng mga tala:

[Snips Log] Nakakonekta sa MQTT broker mqtt: //raspberrypi.local

[Snips Log] Nakita ang Hotword [Snips Log] Simulang makinig [Snips Log] Ihinto ang pakikinig [Snips Log] Nakitang intensyon: {"sessionId": "c84b5aa5-3f14-4218-975e-8872b9217933", "customData": null, "siteId ":" default "," input ":" ano ang panahon sa chennai "," intent ": {" intentName ":" searchWeatherForecast "," posibilidad ": 0.73845243}," slots ": [{" rawValue ":" chennai "," value ": {" kind ":" Custom "," value ":" Chennai "}," range ": {" start ": 44," end ": 53}," entity ":" locality ", "slotName": "forecast_locality"}]}

Hakbang 12: Pag-troubleshoot

Tanggalin ang dating katulong kung mayroon

$ sudo rm -rf / usr / share / snips / katulong /

Upang baguhin ang direktoryo sa Katulong

cd / var / lib / snips / kasanayan /

Upang I-clone ang nilalaman ng repo sa lokal

git clone

Upang patakbuhin ang setup.sh script

./setup.sh

Paganahin ang virtual na kapaligiran

pinagmulan venv / bin / buhayin

Patakbuhin ang code ng pagkilos

./action-.py

Upang magbigay ng pahintulot sa Python Script

chmod + x action-.py

Hakbang 13: Enclosure

Enclosure
Enclosure
Enclosure
Enclosure
Enclosure
Enclosure
  • Gumamit ako ng isang naka-rate na enclosure ng IP para sa proyektong ito
  • Una, gumawa ako ng mga kinakailangang butas upang mai-mount ang circuitry at mga puwang para sa Power cord at HDMI cable.
  • Pagkatapos ay inilagay ko ang lahat ng Raspberry Pi sa loob ng enclosure at igulong ito ng mahigpit.
  • Gumawa ako ng isang maliit na pambungad para sa Speaker at Mikropono at tinakpan ito gamit ang isang maliit na piraso ng acrylic sheet.
  • Mahigpit na ikonekta ang nagsasalita sa sumbrero ng ReSpeaker.
  • Sa wakas, ang lahat ng tornilyo ay matatag na nakakabit at ang power cable ay naipasok sa pamamagitan ng isang puwang.
  • Ganito ang hitsura ng AI sa wakas: D

Hakbang 14: Paggawa ng AI

Image
Image
Paggawa ng AI
Paggawa ng AI
Paggawa ng AI
Paggawa ng AI

Maaari mong makita ang data na sinusubaybayan gamit ang Snips-relo

Ngayon ay oras ng pagpapakita. Sinimulan kong gumawa gamit ang Simple pagbati AI. Tingnan ang Pagganap nito.

Ang Trainer AI ay nai-program para sa mga limitadong salita. Maaari itong mapalawak sa kaunting mga pagbabago. Tinutulungan nito ang mga Mag-aaral na kabisaduhin ang kahulugan nang mas mabilis kaysa sa tradisyunal na pamamaraan.

Mabuting Pansin: Ang proyektong ito ay sinanay para sa 25 salita na tinatayang. Maaari pa itong mapalawak sa pamamagitan ng paggawa ng mga menor de edad na pag-aayos sa code ng aksyon.

Mahahanap mo ang mga script ng Aksyon sa aking naka-attach na Github Repository.

Project Repo for Greetings AI -

Project Repo para sa Trainer AI -

Link sa Aking aplikasyon:

Ang buong pag-setup ay nagkakahalaga ng humigit-kumulang na $ 115 na mabibili mula sa SNIPS at ang solusyon na ito ay napaka-murang at epektibo kung ihahambing sa tradisyunal na pamamaraan. Halos higit sa 100, 000 na mga pagsubok ang kinuha sa India at Ang produktong ito ang magiging pinakamahusay na suplemento para sa mga tumatanggap ng GRE.

Magbigay ng isang thumbs up kung nakatulong talaga ito sa iyo at sundin ang aking channel para sa mga kagiliw-giliw na proyekto.:) Ibahagi ang video na ito kung nais mo. Maligaya na nag-subscribe ka: https://console.snips.ai/store/en/skill_xBKlxnE5K… Salamat sa pagbabasa!

Inirerekumendang: