Spisu treści:
- Krok 1: Opis funkcjonalnościă
- Krok 2: Komponenty
- Krok 3: Sprzęt
- Krok 4: Oprogramowanie
- Krok 5: Implementacja
- Krok 6: Wykorzystaj
Wideo: Sistem De Conversație Bazat Pe Inteligență Sztucznyă: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Autor: Stanut Nicolae-Radu
Grupa: 333AB
Uwaga: 8
Krok 1: Opis funkcjonalnościă
În principiu sistemul va fi asemănător
asistenților inteligenți pentru casă de tipul Google Assistant și Amazon Alexa, utilizatorii pot da comenzi wokale aparatlui, 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 permițând conectarea la serviciul cloud Amazon, care va da „inteligență” sistemului.
Folosind serviciul de cloud și inteligență artificială de la Amazon, acest dispozitiv va avea o funcționalitate practic identică cu Amazon Alexa. De exemplu asistent virtual poate prezenta starea meteo, poate ține minte notițe, poate pune alarme, dar din păcate (sau fericire?), aceste lucruri depind w totalitate de Amazon, iar comenzile dispozitivului se dau în limba engleză
Ca și obiectiv secundar, voi încerca să integrez limba română astfel încât asistentul să poată înțelege și comenzi și de la persoane necunoscătoare de limba engleză. Alt obiectiv secundar ar fi ca asistentul să ajute la automatizarea unor process, de exemplu aprinderea și stingerea unor lumini, oprirea unei nagroda. Desigur, doar dacă API-ul Amazon, aby pozwolić sobie na życie.
Sursa poză: https://consequenceofsound.net/2018/03/amazon-alexa-devices-are-creepily-laughing-at-ich-owners-bez powodu/
Krok 2: Komponenty
Pentru realizarea proiectului am avut nevoie de următoarele componente:
-
Malina PI 3 B+
Acest mini computer este creierul proiectului, rulează o 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
-
Kamera PS Eye
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ă
-
Pudełko, przenośne,
Pentru a transmite informația către utilizator a fost nevoie de un difuzor, am folosit o boxă cu fir primită de la un prieten
- 2 ogień + LED
-
Caserolă
Carcasa proiectului, o caserolă de sarmale:D
Krok 3: Sprzęt
După ce am adunat componentele, am trecut la implementare, schema este una foarte simplă. Boxa przenośna łączy się z portem USB z portem USB i portem USB z portem do odtwarzania, aparatem/mikrofonem łączy się z portem USB z portem USB do obsługi komunikacji cu computer-ul. Am mai adăugat în schemă și led-ul conectat la pin-ul 17 cu rezistorul, pentru comanda de lumină. Nimiczna komplikacja.
Krok 4: Oprogramowanie
Arhitectura acestui proiect presupune un "creier" care să preia comenzi de la utilizator (głos), să transforme datele într-un format accesibil lui (tekst) și să le redea răspunsul sau confirmarea unei acțiuni îna). Pentru acestea a fost nevoie de 3 servicii oddzielnie:
- Un motor Speech-to-Text (STT), pentru a prelua datele de intrare (informațiile 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ăspunsurile sau confirmările acțiunilor
Pentru STT w interfejsie API Google, denumit Google Speech API, care este gratuit, oferuje o calitate mare a conversiei „i or rată mic” de erori, dar ofer i un număr limitat de apeluri. Am ales acest API datorită faptului că această parte a system este cea mai sensibilă la erori și cea mai supusă la perturbații. Datorită limitărilor hardware impuse de computer (putere de processare, spațiu de stocare, memorie), folosirea unui 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ăsp, Google oferuje najnowsze celebracje STT.
Pentru feedback-ul oferit utilizatorului (TTS-ul) am ales un motor offline, deoarece acesta nu este foarte mare consumator de resurse și nici nu este la fel de sensibil precum STT-ul. Sintetizarea vocii este făcuta de Festival Speech Synthesis System, care este oferit gratuit sub o liceță de tipul MIT. Vocea este una ușor robotică, dar mult mai inteligibilă față de eSpeak, alt motor TTS offline. Avantajul său față de serviciile online este cu nu are niciun fel de limitare la numărul de coverii.
Liantul dintre STT i TTS, precum și partea „iteligentă” este platforma denumită Jasper. O platforma, Open Source, dostępna na 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ție 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 allowe 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 proceduralny, am optat pentru această wariantă în detrimentul sistemelor de tip Uczenie maszynowe (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.
Krok 5: Implementacja
- Am instalat sistemul de operare Raspbian pe cardul microSD
- Am conectat camera și difuzorul la Raspberry
- Am configurat sistemul de operare, după care am installat 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
Krok 6: Wykorzystaj
Din lipsa unui monitor am configurat dispozitivul se se conecteze la lub rețea wireless predefinită, controlul dispozitivului realizându-se prin SSH. Jasper allowe două tipuri de interacțiune:
- Terminal Prin (tekst) - la rularea comenzii jasper_cli
- Prin voce - la rularea comenzii jaspis
Din uproszczenie voi începe demonstrarea funcționalității prin intermediul terminalului. La rularea comenzii jasper_cli va fi afișat un mesaj de întâmpinare, iar Jasper este gata să primească comenzi. Printre comenzile cunoscute se numără:
- DEFINE + cuvânt - întoarce definiția din dicționar a cuvântului relativeiv
- KTO, CO, ILE, ILE, ILE STARY + 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
- Żart - spune o glumă
- LUMOS/NOX - aprinde/stinge LED-ul atașat
- DROBNOSTKI
- FILMY - informacje o filmie (imdb)
- AKTUALNOŚCI - citește știri
n modul voce, deschis la presentre comenzii "jaspis" î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 dokładny ca și în modul text. După executarea comenzii, dispozitivul intră din nou în așteptare pană la o nouă trezire sa.
Zalecana:
Licznik kroków - Micro:Bit: 12 kroków (ze zdjęciami)
Licznik kroków - Micro:Bit: Ten projekt będzie licznikiem kroków. Do pomiaru kroków użyjemy czujnika przyspieszenia wbudowanego w Micro:Bit. Za każdym razem, gdy Micro:Bit się trzęsie, dodamy 2 do licznika i wyświetlimy go na ekranie
Sistem De Cartografiere a Retelelor LoRaWAN: 4 kroki
Sistem De Cartografiere a Retelelor LoRaWAN: W programie cadrul acestui s-realizarea realizarea unui sistem de cartografiere a Retelelor LoRaWAN.Ce este LoRa? LoRa to estetyka lub technologia opieki nad dezaktywatorami inteligentnych rozwiązań lub transmisją, która zapewnia bezpieczeństwo i ochronę danych, cu
Sistem De Cartografiere a Rețelelor WiFi: 14 kroków
Sistem De Cartografiere a Rețelelor WiFi: Cartografierea retelelor WiFi este procedeul prin care se doreste gasirea retelelor WiFi, iar apoi lokalizarea acestora cu ajutorul GPS-ului. In urma cartografierii se pot obtine informatii despre retelele WiFi existing cum ar fi: numarul acestora
Sistem De Monitorizare a Nivelului De Poluare (Arduino Uno): 9 kroków
Sistem De Monitorizare a Nivelului De Poluare (Arduino Uno): Proiectul consta in realizarea unui dispozitiv ce afiseaza diferiti parameterii de mediu (temperatura, umiditate, nivelul de particule din atmosfera, cantitatea de compusi organici volatilio) i data i trimite słońce realizuj
Sistem De Apertura/cierre Contraseña: 4 kroki
Sistem De Apertura/cierre Contraseña: 1. Primeramente disculpen la calidad de las im'genes y los inconvenientes adicionales notengo el equipo para la calidad de las im'genes y no se preocupen por el cableado que se ve por un es. El primer debe tener el ID