Turinys:

Asmeninis anglų kalbos treneris - AI balso asistentas: 15 žingsnių
Asmeninis anglų kalbos treneris - AI balso asistentas: 15 žingsnių

Video: Asmeninis anglų kalbos treneris - AI balso asistentas: 15 žingsnių

Video: Asmeninis anglų kalbos treneris - AI balso asistentas: 15 žingsnių
Video: 5 susitikimas-2022-04-29 | ETF komandos susitikimas ir dialogas 2024, Liepa
Anonim
Asmeninis anglų treneris - AI balso asistentas
Asmeninis anglų treneris - AI balso asistentas

Šis projektas padės studentams, besiruošiantiems bet kokiam lingvistiniam egzaminui, kur juos galima apmokyti bendraujant su „Snips AI“.

1 žingsnis: istorija

Istorija
Istorija
Istorija
Istorija

Kodėl mes tai sukūrėme?

Iš savo asmeninės patirties mačiau daug žmonių, besiruošiančių įvairiems kalbiniams testams, tokiems kaip GRE, TOEFL, IELTS. Jiems reikia asmens, kuris padėtų jiems įsiminti ir suprasti žodžius. Paprastai, kai asmuo ruošiasi tokiems egzaminams, jiems reikia asmens, kuris patikrintų ir ištaisytų, jei suklydo. Naudodami šį sprendimą, mes galime sumažinti darbo jėgą įdarbinę balso asistentą.

2 žingsnis: Aparatūros kūrimas

Aparatinės įrangos kūrimas
Aparatinės įrangos kūrimas
Aparatinės įrangos kūrimas
Aparatinės įrangos kūrimas

Visų pirma, norėčiau padėkoti SNIPS ir SEEED už paramą šiam projektui su nuostabiu „Snips Voice Interaction Development Kit“(baziniu rinkiniu), aš tikrai jaučiausi informatyvus naudodamasis šia lenta ir galėdamas įgyvendinti kai kuriuos sudėtingus projektus, integruotus į PCB.

Galite nusipirkti „Snips Voice Interaction Base Kit“rinkinį už 115 USD ir „Snips Voice Interaction Satellite Kit“už 85 USD

3 žingsnis: Darbo su SNIPS pradžia

Darbo su SNIPS pradžia
Darbo su SNIPS pradžia
Darbo su SNIPS pradžia
Darbo su SNIPS pradžia
Darbo su SNIPS pradžia
Darbo su SNIPS pradžia

Prieš pradėdami, peržiūrėkime, ko jums reikia.

  • „Raspberry Pi 3B/B+“(rekomenduojama) arba „Pi 2“modelis B (palaikoma).
  • „Micro-USB“kabelis ir „Micro-USB“maitinimo adapteris, skirtas „Raspberry Pi“.
  • „Micro SD“kortelė (mažiausiai 8 GB) - norint pradėti, reikalinga operacinė sistema. Raspberry Pi svetainėje galite atsisiųsti „Raspbian Stretch“ir naudoti „Mac OS“, „Linux“ir „Windows“vadovus.
  • USB klaviatūra ir pelė bei išorinis HDMI monitorius - taip pat rekomenduojame turėti po ranka USB klaviatūrą ir pelę bei HDMI monitorių.
  • Interneto ryšys („Ethernet“arba „WiFi“)

„Snips Voice Interaction Base“rinkinys

„Snips“balso sąveikos kūrimo rinkiniai suteikia vartotojams galimybę pradėti kurti balso sąsajas ir lengvai integruoti „Snips AI Voice Platform“su aparatine įranga. Įrenginyje veikia fragmentai, o tai reiškia, kad visos jūsų balso komandos ir duomenys apdorojami vietoje, o ne siunčiami į debesį. Dėl šio įrenginio apdorojimo gaunamas visiškai saugus balso asistentas neprisijungus, kuris saugo jūsų asmeninius duomenis, kaip turėtų būti.

Balso sąveikos bazės rinkinys leidžia paleisti visą „Snips AI Voice Platform“. Jį maitina „Raspberry Pi 3 Model B+“ir „ReSpeaker 2-Mics Pi HAT“, jis gali veikti kaip jūsų namų išmanusis garsiakalbis. Kartu su rinkiniu pateikiamas garsiakalbis, „Grove“temperatūros ir drėgmės jutiklis (SHT31), „Grove“relė ir lentelė, skirta pakabinti ant sienos arba sukurti puikų stovą.

Bet tai dar ne viskas! Balso sąveikos palydovinis rinkinys išplės jūsų bazinę stotį, kad pasiektų kiekvieną jūsų namo kambarį, ir leis jums bendrauti su aparatūra, atsižvelgiant į tai, kur jūs duodate komandas!

Šiame rinkinyje yra „Raspberry Pi3 B+“plokštė, „ReSpeaker 2 -Mics Pi HAT“, „Grove“- relė, „Grove“- temperatūros ir drėgmės jutiklis (SHT31), 6 omų 2 W garsiakalbis, „MicroSD“kortelė, maitinimo adapteris su „Micro USB“jungtimi, „Grove“kabelis x 2, akrilo pagrindas skydelis.

Surinkimo žingsniai: (SNIPS turinys) Toliau pateiktame paveikslėlyje pateikiama surinkimo dalių apžvalga.

Čia surinkimo dalys yra sumontuotos ant pagrindo plokštės.

Tada visos elektroninės dalys yra sumontuotos ant plokštės.

Po to uždėkite apsauginį akrilo dangtelį ant „Grove“relės.

Šios dvi dalys naudojamos, kad komplektas taptų stalo stendu.

Galiausiai esate pasiruošę žaisti su „Snips“.

Komplekte yra du išdėstymo būdai. Jį galima pastatyti ant horizontalaus paviršiaus, pavyzdžiui, stovo, arba pakabinti ant sienos, naudojant laidus ar sriegius. Būkite atsargūs naudodami relę, kai komplektas įjungtas, nes darbinė įtampa bus didelė.

PASTABA: Mes taip pat turime „Snips Voice Interaction Satellite“rinkinį, kurio vietoje „Raspberry Pi 3B+“yra „Raspberry Pi“nulis.

4 žingsnis: sąsaja su „Snips AI“(pagrindinis projektas)

Image
Image
Sąsaja su „Snips AI“(„Project AI“)
Sąsaja su „Snips AI“(„Project AI“)
  • Maitinkite rinkinį naudodami numatytąjį komplekto maitinimo adapterį arba naudokite 5V-2A nuolatinės srovės adapterį su „Micro USB“jungtimi.
  • Kitas žingsnis yra „Snips“asistento įdiegimas į „Raspberry Pi“. Siekiant sutaupyti sąrankos laiko, komplekte esanti „MicroSD“kortelė buvo sumirkyta su visu funkciniu sistemos įvaizdžiu, o tai reiškia, kad „Snips“asistentas yra paruoštas jūsų įjungimo žodžiams.
  • Mes primygtinai rekomenduojame jums išstudijuoti žingsnis po žingsnio diegimo vadovą, apsilankę: https://docs.snips.ai/getting-started/quick-start… ir išmokti tą patį įrankį komandinėje eilutėje.
  • Suaktyvinkite padėjėją sakydami „Hey-snips“ir vykdykite komandą:

Vaizdo įrašą su pavyzdžiu, iš anksto įdiegtu „Snips Voice Interaction“baziniame rinkinyje, rasite žemiau.

5 žingsnis: sąsaja su „Snips AI“(„Project AI“)

Taigi tai veikia taip. Pirma, mes naudojame greitąjį žodį, kad inicijuotume „Snips“atpažinimą. Jis supranta sakinį naudodamas „Snips NLU“ir nustato ketinimą. Tada, naudodami ketinimą, atitinkamai ištraukite lizdus. Naudodami veiksmo kodą, mes užprogramuojame AI atsaką pagal lizdus.

6 veiksmas: sukurkite programą ir ketinimus

Programos kūrimas ir ketinimai
Programos kūrimas ir ketinimai
Programos kūrimas ir ketinimai
Programos kūrimas ir ketinimai
Programos kūrimas ir ketinimai
Programos kūrimas ir ketinimai
  • Sukurkite padėjėją. Mano atveju buvau sukūręs asistentą vardu JARVIS ir su karštu žodžiu JARVIS.
  • Sukurkite pasirinktinę programą arba pradedantiesiems naudokite programą iš bibliotekos.
  • Aš sukūriau programą, pavadintą „Žodžiai“
  • Sukurkite ketinimą ir pradėkite mokyti AI. Tai vaidina svarbų vaidmenį, kad jūsų AI būtų patvarus. Treniruokitės su visais įmanomais įėjimais.
  • Sukurkite lizdą žodžiams atpažinti. Įdėkite lizdą į laukiamą sakinio frazę. Mano pavyzdyje duotas žodis yra lizdo pavadinimas ir jis paryškintas mėlyna spalva.
  • Kai tai bus padaryta, jūsų pasirinktinis ASR bus paruoštas. Pabandykite su įėjimais. Atsakymą galime rasti dešinėje, žemiau asistento. Tai leidžia išgauti neapdorotą vertę, ketinimo pavadinimą ir lizdą.
  • Apibrėžkite laiko tarpsnius naudodami daugiau pavyzdžių, kaip nurodyta toliau
  • Galiausiai, įdiekite savo padėjėją, kad patirtumėte suasmenintą AI.

7 veiksmas: įrašykite „Raspbian“į SD kortelę

Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę
Įrašykite Raspbian į SD kortelę

„Raspbian“yra pasirinktas „Linux“platinimas, veikiantis „Raspberry Pi“. Šiame vadove naudosime „Lite“versiją, tačiau taip pat galima naudoti darbalaukio versiją (su grafine aplinka).

  • Atsisiųskite „Etcher“ir įdiekite.
  • Prijunkite SD kortelių skaitytuvą su SD kortele viduje.
  • Atidarykite „Etcher“ir iš standžiojo disko pasirinkite Raspberry Pi.img arba.zip failą, kurį norite įrašyti į SD kortelę
  • Pasirinkite SD kortelę, į kurią norite įrašyti vaizdą.
  • Peržiūrėkite savo pasirinkimus ir spustelėkite „Flash“! pradėti rašyti duomenis į SD kortelę

Prijunkite įrenginį prie tinklo

  • Įgalinkite SSH prieigą pridėdami tuščią failą ssh, vėl įdėtą į SD kortelės įkrovos apimties šaknį.
  • Įdėkite SD kortelę į „Raspberry Pi“. Jis bus paleistas maždaug per 20 sekundžių. Dabar turėtumėte turėti SSH prieigą prie „Raspberry Pi“. Pagal numatytuosius nustatymus jo prieglobos serverio pavadinimas bus raspberrypi.local. Kompiuteryje atidarykite terminalo langą ir įveskite:

ssh [email protected]

Numatytasis slaptažodis yra avietė

8 veiksmas: įdiekite „Snips“platformą

Įdiekite „Snips“platformą
Įdiekite „Snips“platformą
Įdiekite „Snips“platformą
Įdiekite „Snips“platformą
Įdiekite „Snips“platformą
Įdiekite „Snips“platformą

Jei to dar nepadarėte, savo kompiuteryje įdiekite „Sam Command Line Interface“. Atidarykite terminalo langą ir įveskite:

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

Raskite „Raspberry Pi“tinkle paleisdami:

„Sam“įrenginiai

Tada užmegzkite ryšį su įrenginiu. Būsite paraginti įvesti įrenginio naudotojo vardą ir slaptažodį (numatytasis yra atitinkamai pi ir avietė):

prisijungti

Dabar esame pasirengę įdiegti „Snips“platformą „Raspberry Pi“. Įveskite komandą:

sam iniciatyva

9 veiksmas: sukonfigūruokite aparatūrą

Konfigūruokite aparatūrą
Konfigūruokite aparatūrą
Konfigūruokite aparatūrą
Konfigūruokite aparatūrą

Semas pateikia keletą komandų, skirtų lengvai nustatyti ir konfigūruoti aparatūros komponentus. Šiame skyriuje nustatysime garsiakalbį ir mikrofoną. Priklausomai nuo jūsų nustatymų, reikia atlikti tam tikrą pasirinktinę konfigūraciją.

garso sąranka

Išbandykite garsiakalbį

Norėdami patikrinti, ar garsiakalbis veikia, paleiskite

bandomasis garsiakalbis

Jei viskas gerai, turėtumėte išgirsti garsiakalbį balsu, sakančiu keletą žodžių. Mikrofono konfigūravimas Galite patikrinti, ar jūsų mikrofonas veikia:

bandomasis mikrofonas

Darant prielaidą, kad turite garsiakalbį, jei aiškiai girdite tai, ką ką tik pasakėte, galite tęsti toliau be mikrofono konfigūracijos.

Kai būsite patenkinti, kad jūsų aparatūros sąranka veikia, esate pasiruošę pereiti prie kito žingsnio, kuriame įdiegsite savo pirmąjį asistentą.

10 veiksmas: AI modelio importavimas iš konsolės

AI modelio importavimas iš konsolės
AI modelio importavimas iš konsolės

Sukūrę savo padėjėją iš ankstesnių veiksmų, prisijunkite prie konsolės iš terminalo lango vykdydami:

sam prisijungimas

Jūsų bus paprašyta įvesti „Snips Console“prisijungimo duomenis.

Tada įdiekite asistentą:

„Sam“diegimo asistentas

Jei konsolėje sukūrėte kelis padėjėjus, jūsų bus paprašyta iš sąrašo pasirinkti, kurį iš jų įdiegti.

11 veiksmas: tvarkytojas ir veiksmų kodas

Kad „Raspberry Pi“reaguotų, turėsime parašyti tam tikrą tvarkyklės kodą. Tai kodas, kuris vykdomas, kai „Snips“platformoje įvyksta tam tikras įvykis, pvz., Kai aptinkamas ketinimas.

Priklausomai nuo veikimo, turite įvairių metodų, kaip sukurti tvarkyklę.

Kompiuteryje sukurkite aplanką, kuriame norite išsaugoti tvarkyklės kodą. Terminalo lange pakeiskite tą katalogą ir įveskite:

npm init

Tai sukurs failą pavadinimu package.json, kuriame bus jūsų projekto aprašymas, priklausomybės ir dar daugiau. Tada pridėkite „mqtt“paketo priklausomybę:

npm įdiegti mqtt --save

Dabar sukurkite failą pavadinimu index.js ir įklijuokite šį kodą, pakeisdami pagrindinio kompiuterio kintamąjį savo „Raspberry Pi“pagrindinio kompiuterio pavadinimu (jei jis skiriasi nuo numatytojo raspberrypi):

var mqtt = reikalauti ('mqtt');

var hostname = "mqtt: //raspberrypi.local"; var klientas = mqtt.connect (pagrindinio kompiuterio pavadinimas); client.on ('connect', function () {console.log ("[Snips Log] Prisijungta prie MQTT brokerio" + pagrindinio kompiuterio pavadinimas); client.subscribe ('hermes/#');}); client.on ('pranešimas', funkcija (tema, pranešimas) {if (topic === "hermes/asr/startListening") {onListeningStateChanged (true);} else if (topic === "hermes/asr/stopListening") {onListeningStateChanged (false);} else if (topic.match (/hermes \/hotword / /.+ \/detect/g)! == null) {onHotwordDetected ()} else if (topic.match (/hermes) /intent\/.+/g)! == null) {onIntentDetected (JSON.parse (pranešimas));}}); function onIntentDetected (ketinimas) {console.log ("[Snips Log] Aptiktas ketinimas:" + JSON.stringify (ketinimas)); } funkcija onHotwordDetected () {console.log ("[Snips Log] Aptiktas karštas žodis"); } funkcija onListeningStateChanged (klausytis) {console.log ("[Snips Log]" + (klausytis? "Start": "Stop") + "klausytis"); }

Paleiskite šį kodą naudodami „Node“:

mazgas index.js

Turėtumėte pamatyti pranešimą apie sėkmingą ryšį su „Snips MQTT“tarpininku. Kaip ir anksčiau, atlikite balso sąveiką su „Raspberry Pi“:

Ei, Snipsai, koks oras Čenajuje

Turėtumėte matyti atnaujinamus žurnalus:

[Snips Log] Prisijungta prie MQTT brokerio mqtt: //raspberrypi.local

[Snips žurnalas] Aptiktas karštas žodis [Snips Log] Pradėkite klausytis [Snips Log] Nustokite klausytis [Snips Log] Aptiktas ketinimas: {"sessionId": "c84b5aa5-3f14-4218-975e-8872b9217933", "customData": null, "siteId ":" numatytasis "," įvestis ":" koks oras Čenajuje "," ketinimas ": {" ketinimo pavadinimas ":" searchWeatherForecast "," tikimybė ": 0.73845243}," slots ": [{" rawValue ":" chennai "," value ": {" kind ":" Custom "," value ":" Chennai "}," range ": {" start ": 44," end ": 53}," entity ":" locality ", "slotName": "prognozės_vietos"}]}

12 veiksmas: trikčių šalinimas

Ištrinkite ankstesnį asistentą, jei jis yra

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

Norėdami pakeisti katalogą į Padėjėją

cd/var/lib/snips/įgūdžiai/

Klonuoti atpirkimo turinį į vietinį

git klonas

Norėdami paleisti setup.sh scenarijų

./setup.sh

Suaktyvinkite virtualią aplinką

šaltinis venv/bin/aktyvuoti

Paleiskite veiksmo kodą

./action-.py

Suteikti leidimą „Python“scenarijui

chmod +x action-.py

13 žingsnis: gaubtas

Korpusas
Korpusas
Korpusas
Korpusas
Korpusas
Korpusas
  • Šiam projektui naudojau IP įvertintą korpusą
  • Pirmiausia padariau reikiamas skyles, kad prijungčiau maitinimo laido ir HDMI kabelio grandines ir lizdus.
  • Tada aš įdėjau visą Raspberry Pi į korpusą ir tvirtai užsukau.
  • Aš padariau nedidelę angą garsiakalbiui ir mikrofonui ir uždengiau ją nedideliu akrilo lakšto gabalu.
  • Tvirtai prijunkite garsiakalbį prie „ReSpeaker“skrybėlės.
  • Galiausiai visi varžtai yra tvirtai pritvirtinti, o maitinimo kabelis įkišamas per angą.
  • Galiausiai taip atrodo AI: D

14 žingsnis: AI darbas

Image
Image
PG veikimas
PG veikimas
PG veikimas
PG veikimas

Galite rasti duomenis, kurie stebimi naudojant „Snips-watch“

Dabar rodomas laikas. Pradėjau kurti nuo paprastų sveikinimų AI. Pažiūrėkite, ar jis veikia.

Trenerio AI buvo užprogramuotas ribotiems žodžiams. Tai galima išplėsti su nedideliais pakeitimais. Tai padeda mokiniams greičiau įsiminti prasmę nei tradicinis metodas.

Dėmesio: Šis projektas parengtas maždaug 25 žodžiais. Jį galima dar labiau išplėsti atlikus nedidelius veiksmų kodo pakeitimus.

Veiksmų scenarijus galite rasti mano „Github“saugykloje.

„Project Repo for Greetings AI“-https://github.com/Rahul24-06/Greetings_Assistant-TTS

„Project Repo for Trainer AI“-https://github.com/Rahul24-06/Personal-English-Trainer---TTS

Nuoroda į mano programą:

Visa sąranka kainuoja apie 115 USD, kurią galima įsigyti iš SNIPS, ir šis sprendimas yra labai pigus ir efektyvus, palyginti su tradiciniais metodais. Indijoje buvo atlikta daugiau nei 100 000 testų ir šis produktas bus geriausias papildas GRE vartotojams.

Nukelkite nykštį, jei tai jums tikrai padėjo, ir sekite mano kanalą įdomiems projektams.:) Jei patinka, pasidalinkite šiuo vaizdo įrašu. Džiaugiamės, kad užsiprenumeravote: https://console.snips.ai/store/en/skill_xBKlxnE5K… Ačiū, kad skaitote!

Rekomenduojamas: