Σε αυτό το άρθρο, θα μοιραστώ τις προσπάθειες ενός προγραμματιστή να δημιουργήσει τη δική του python-powered προσωπική βοηθό. Χρησιμοποιώντας βιβλιοθήκες ανοικτού κώδικα για τη μετατροπή κειμένου σε ομιλία και την αναγνώριση ομιλίας, περιγράφει έναν τρόπο για να δημιουργήσετε μια προσωπική “Jarvis”.

Όλα ξεκίνησαν από την πρόκληση του 2016 ότι ο συνιδρυτής του Facebook και CEO Mark Zuckerberg ανακοίνωσε ότι θα φτιάξει τη δική του AI προσωπική βοηθό. Αν και δεν ήξερα την πρόοδο που έχει σημειωθεί από τον ίδιο σε αυτή την προσπάθεια, υπάρχουν πολλοί πόροι που μπορεί κανείς να χρησιμοποιήσει για να δημιουργήσει κάτι παρόμοιο για τον εαυτό του.

Η Python είναι μια από τις πιο δημοφιλείς γλώσσες προγραμματισμού που οι άνθρωποι θα πρέπει να εξετάσουν να μάθουν και έρχεται με πολλές επιλογές για να ξεκινήσετε το δικό σας Jarvis πρότζεκτ. Υπάρχουν πολλές ανοικτού κώδικα βιβλιοθήκες για την αναγνώριση και τη σύνθεση ομιλίας διαθέσιμες σε Python. Σημειώστε ότι θα πρέπει να επιλέξετε με σύνεση, καθώς πολλές από αυτές δεν είναι συμβατές πια με νεότερες εκδόσεις της Python.

Σε ένα blog post, ο προγραμματιστής, ο Gurwinder Gulati, μοιράστηκε την προσπάθειά του για μια προσωπική Python-powered βοηθό το 2016. Ο ίδιος αποκαλεί την AI βοηθό του Samwise και εξηγεί τη διαδικασία κωδικοποίησης σε τρία μέρη: Jarvis’s Mouth, Jarvis’s Ears και  Jarvis’s Brain.

Όπως υποδηλώνει και το όνομα, το Jarvis’s Mouth που ασχολείται με τη διαδικασία μετατροπής κειμένου σε ομιλία. Ενώ πολλές βιβλιοθήκες Python είναι διαθέσιμες και προσφέρουν την αναγνώριση φωνής και τη σύνθεση ομιλίας, ο κύριος Gulati επέλεξε να προχωρήσει με την pyttsx

– ένα offline, δωρεάν και ανοιχτού κώδικα πόρο. Έχει επίσης ενημερωθεί για να συνεργάζεται και με Python 3. Για να το χρησιμοποιήσετε, θα πρέπει να εγκαταστήσετε την έκδοση του pyttsx του JPercent εκτελώντας την εντολή pip install pyttsx.. Για τα Windows, θα πρέπει να εγκαταστήσετε το PyWin32 και το Microsoft Speech API.

Για την αναγνώριση ομιλίας/Jarvis’s Ears, θα πρέπει να χρησιμοποιήσετε το SpeechRecognition. Αυτή η φοβερή πηγή προσφέρει την ελευθερία να χρησιμοποιήσετε το  Sphinx project για να μετατρέψετε την είσοδο ήχου σε κείμενο. Μπορείτε επίσης να χρησιμοποιήσετε τις υπηρεσίες των Google και Wit.ai για να κάνετε το ίδιο και με τη βοήθεια του SpeechRecognition.

Τώρα που έχετε όλα όσα χρειάζεστε, ας ρίξουμε μια ματιά στο Jarvis’s Brain, το οποίο είναι ουσιαστικά ο κώδικας που γράφτηκε από τον κύριο Gulati. Μπορείτε να συγκεντρώσετε τους προαναφερθέντες πόρους και τις βιβλιοθήκες για να δημιουργήσετε τη δική σας βοηθό AI.

Ο κώδικας που μοιράζεται παρακάτω είναι αρκετά απλός και μπορείτε να πραγματοποιήσετε το ίδιο μετά από λίγες ώρες εργασίας και έρευνας. Ρίξτε μια ματιά:

[su_box title=”Jarvi’s Brain”]import speech_recognition
import pyttsx
speech_engine = pyttsx.init(‘sapi5’) # see
http://pyttsx.readthedocs.org/en/latest/engine.html#pyttsx.init
speech_engine.setProperty(‘rate’, 150)
def speak(text):
speech_engine.say(text)
speech_engine.runAndWait()
recognizer = speech_recognition.Recognizer()
def listen():
with speech_recognition.Microphone() as source:
recognizer.adjust_for_ambient_noise(source)
audio = recognizer.listen(source)
try:
return recognizer.recognize_sphinx(audio)
# or: return recognizer.recognize_google(audio)
except speech_recognition.UnknownValueError:
print(“Could not understand audio”)
except speech_recognition.RequestError as e:
print(“Recog Error; {0}”.format(e))
return “”
speak(“Say something!”)
speak(“I heard you say ” + listen())
[/su_box]

Καλή επιτυχία!!!