Cuprins:
- Step 1: Descriere Funcțională
- Pasul 2: Component
- Pasul 3: Hardware
- Pasul 4: Software
- Pasul 5: Implementare
- Pasul 6: Utilizare
Video: Sistem De Conversație Bazat Pe Inteligență Artificială: 6 Steps
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Autor: Stanut Nicolae-Radu
Grupa: 333AB
Nota: 8
Step 1: Descriere Funcțională
În principiu model va fi asemănător
asistenților inteligenți pentru casă de tip Google Assistant și Amazon Alexa, utilizatorii pot da comenzi vocale aparate, iar acesta va răspunde sau va face o anumită acțiune, în funcție de cerințele utilizatorului. Creierul acestui dispozitiv va fi un Raspberry pi 3, datorită faptului că dispune de Wi-Fi, acest lucru permite conectarea serviciului cloud Amazon, care va da „inteligență” sistem.
Folosind serviciul de cloud și inteligență artificială de la Amazon, acest dispozitiv va avea o funcționalitate practic identică cu Amazon Alexa. De exemplu acest asistent virtual poate prezenta starea meteo, poate ține minte notițe, poate pune alarma, dar din păcate (sau fericire?), Aceste lucruri depind în totalitate de Amazon, iar începutul dispozitivului se dă în limba engleză.
Ca și obiectiv secundar, voi încerca să integreze limba română astfel încât să asiste la poată înțelege și comenzi și de la persoanele necunoscătoare de limba engleză. Alt obiectiv secundar ar fi ca asistent să ajute la automatizarea unor procese, de exemplu aprinderea și stingerea unor lumini, oprirea unei prize. Desigur, doar dacă API-ul Amazon va permite aceste lucruri.
Sursa poză:
Pasul 2: Component
Pentru realizarea proiectului am avut nevoie de elemente componente:
-
Raspberry PI 3 B +
Acest mini computer este creierul proiectului, rulează sau verisune modificat de Linux Debian pe un procesor ARM. De asemenea, acest model dispune și de wi-fi, conexiunea la internet fiind absolut necesar pentru motoarele de text-în-vorbire și vorbire-în-text
-
Camera oculară PS
Pe post microfon ("urechea proiectului") am ales o cameră destinată consolei Play Station 3 deoarece dispune de un microfon puternic cu 4 canale, fiind mai ieftin decât o cameră web obișnuită
-
Boxă portabilă
Pentru a transmite informații către utilizator a fost nevoie de un difuzor, am folosit o cutie cu fir primită de la un prieten
- 2 foc + LED
-
Caserolă
Carcasa proiectului, o caserolă de sarmale: D
Pasul 3: Hardware
După ce am adunat componente, am trecut la implementare, schema este una foarte simplă. Boxa portabilă se conectează la portul USB pentru alimentare și la portul jack pentru playback, camera / microfonul se conectează doar la portul USB prin care comunică cu computer-ul. Am mai adăugat în schemă și led-ul conectat la pin-ul 17 cu rezistorul, pentru comanda de lumină. Nimic complicat.
Pasul 4: Software
Arhitectura acestui proiect presupune un "creier" care să preia comenzi de la utilizator (voce), să transforme informații într-un format accesibil lui (text) și să le redea răspunsul sau confirmarea unei acțiuni înapoi (voce). Pentru acestea a fost nevoie de 3 servicii separate:
- Un motor Speech-to-Text (STT), pentru a prelua datele de intrare (informații transmise de utilizator prin vorbire)
- Un sistem de inteligență artificială, pentru a lua decizii și a rezolva probleme
- Un motor Text-to-Speech (TTS), pentru a transmite utilizatorului răspunsuri sau confirmări acțiunilor
Pentru STT am folosit API-ul de la Google, denumit Google Speech API, care este gratuit, oferă o calitate mare a conversiei și o rată mică de erori, dar oferă și un număr limitat de apeluri. Am ales acest API datorită faptului că această parte a sistemului este cea mai sensibilă la erori și cea mai supusă la perturbații. Datorită limitări hardware impuse de computer (putere de procesare, spațiu de stocare, memorie), folosind un serviciu offline este exclus, așa că am optat pentru un serviciu Cloud, oferind și o precizie mai mare, dar și un timp de răspuns mai bun, Google trebuie unul dintre cele mai bune motoare STT.
Pentru feedback-ul oferit utilizatorului (TTS-ul) am ales un motor offline, deoarece acesta este acesta foarte mare consumator de resurse și nici nu este cel fel de sensibil precum STT-ul. Sintetizarea vocii este făcută de Festival Speech Synthesis System, care este oferit gratuit sub o liceță de tip MIT. Vocea este o ușor robotică, dar mult mai inteligibilă față de eSpeak, alt motor TTS offline. Avantajul său față de serviciul online este că nu sunt niciun fel de limitare la numărul de coversii.
Liantul dintre STT și TTS, precum și partea "iteligentă" este platforma denumită Jasper. O platformă Open Source, disponibilă pe GitHub la link-ul: https://github.com/jasperproject/jasper-client. Aceasta face legătura dintre toate serviciile descrise mai sus și ia decizii în funcții de input-ul utilizatorului. Este compatibilă cu Raspberry PI, fiind scrisă în Python. Am ales această soluție în detrimentul celor Cloud datorită modularității, platforma permite folosirea oricărui serviciu STT și TTS, dar și definirea oricărei acțiuni folosind limbajul de programare Python.
Sistemul de inteligență artificială este unul procedural, am optat pentru această variantă în detrimentul sistemului de tip Machine Learning (chatbot) din cauză că cele din urmă au un caracter nedeterminist. Natura platformei Jasper, fiind bazată pe comenzi și acțiuni predefinite, limitează capacitatea de convorbire, dar oferă un cadru potrivit pentru un asistent digital, acesta fiind și scopul proiectului.
Pasul 5: Implementare
- Am instalat un sistem de operare Raspbian pe cardul microSD
- Am conectat camera și difuzorul la Raspberry
- Am configurat sistemul de operare, după care am instalat toate bibliotecile și serviciile necesare, urmând toți pașii din acest ghid:
- Am creat și instalat module adiționale pentru a extinde funcționalitatea sistemului
Pasul 6: Utilizare
Din lipsa unui monitor am configurat dispozitivul să se conecteze la rețeaua wireless predefinită, controlul dispozitivului realizându-se prin SSH. Jasper permite două tipuri de interacțiune:
- Prin terminal (text) - la rularea începe jasper_cli
- Prin voce - la rularea începe Jasper
Din simplitate vei începe demonstrarea funcționalității prin intermediul terminalului. La rularea începe jasper_cli va fi afișat un mesaj de întâmpinare, iar Jasper este gata să primească comenzi. Printre începe cunoscute se numără:
- DEFINE + cuvânt - întoarce definiția din dicționar a cuvântului respectiv
- WHO, WHAT, HOW MOT, HOW MANY, HOW OLD + cuvânt - folosește API-ul wolframalpha pentru a răspunde la întrebări generale
- WIKI - folosește API-ul de la wikipedia pentru a oferi informații despre diferite noțiuni
- JOKE - spune o glumă
- LUMOS / NOX - aprinde / stinge LED-ul atașat
- TRIVIA
- FILME - informații despre filme (imdb)
- NEWS - citește știri
În modul voce, deschis introducerea a început "jasper" în linia de comandă, dispozitivul se pune în modul de așteptare, acesta fiind trezit la auzirea unui cuvânt-cheie. În cazul de față cuvâtul cheie este "Jasper". După ce dispozitivul a auzit cuvântul cheie, acesta intră în modul de ascultare, putând să primească comenzi exact ca și în modul text. După executarea începuturilor, dispozitivul intră din nou în așteptare până la o nouă trezire a sa.
Recomandat:
Sistem de parcare inteligentă bazat pe IoT utilizând NodeMCU ESP8266: 5 pași
Sistem inteligent de parcare bazat pe IoT folosind NodeMCU ESP8266: În prezent, găsirea parcării în zonele aglomerate este foarte grea și nu există un sistem care să obțină detaliile disponibilității parcării online. Imaginați-vă dacă puteți obține informații despre disponibilitatea sloturilor de parcare pe telefonul dvs. și nu aveți roaming în jurul valorii de a verifica t
Inteligență artificială și recunoaștere a imaginii folosind HuskyLens: 6 pași (cu imagini)
Inteligență artificială și recunoaștere a imaginii folosind HuskyLens: Hei, ce se întâmplă, băieți! Akarsh aici de la CETech. În acest proiect, vom arunca o privire asupra HuskyLens de la DFRobot. Este un modul de cameră alimentat cu AI, capabil să facă mai multe operațiuni de inteligență artificială, cum ar fi recunoașterea feței
Inteligență artificială de joc de masă: algoritmul Minimax: 8 pași
Inteligența artificială a jocului de masă: algoritmul Minimax: V-ați întrebat vreodată cum sunt fabricate computerele împotriva cărora jucați în șah sau în dame? Ei bine, nu căutați mai departe de acest instructabil, deoarece vă va arăta cum să creați o inteligență artificială (AI) simplă, dar eficientă, utilizând algoritmul Minimax! Prin utilizarea
Inteligență artificială pentru robotul dvs.: 7 pași
Inteligență artificială pentru robotul tău. Făcând robotul să se miște și să-l facă să gândească sunt sarcini diferite. La om, mișcările fine sunt controlate de cerebel în timp ce acțiunile și luarea deciziilor - de creierul mare. Dacă citiți acest lucru, probabil că aveți deja un robot și puteți gestiona
Sistem de autentificare inteligentă bazat pe RFID [Intel IoT]: 3 pași
Sistem de autentificare inteligentă bazat pe RFID [Intel IoT]: Scurtă prezentare generală a proiectului: Acest proiect se referă la sistemul de autentificare și la automatizarea făcută. Acest proiect inteligent se ocupă de 3 lucruri: 1. Autentificare laptop 2. Gestionare bibliotecă3. Controlul activelor Ce face și cum? În acest proiect inteligent bazat pe RFID