Άκου να δεις! Το Tomgineer απέκτησε φωνή

Άκου να δεις! Το Tomgineer απέκτησε φωνή
Published
Reading time
8.6 min

Δύο άρθρα έγιναν ήδη βίντεο, η τεχνητή νοημοσύνη πέρασε από εξετάσεις ελληνικών, το FFmpeg δοκίμασε την υπομονή μου και το Tomgineer απέκτησε κανάλι στο YouTube. Μια απλή ιδέα που εξελίχθηκε σε μικρή τεχνολογική περιπέτεια.

Εδώ και αρκετό καιρό σκεφτόμουν πόσο πρακτικό θα ήταν να μπορείς να ακούς ένα άρθρο αντί να το διαβάζεις. Να πατάς ένα κουμπί και να συνεχίζεις τη βόλτα σου, να οδηγείς, να κάνεις τις δουλειές σου ή απλώς να κάθεσαι με κλειστά μάτια και να ακούς. Το περιεχόμενο παραμένει το ίδιο, αλλά αποκτά έναν ακόμη τρόπο να φτάσει στον αναγνώστη. Ο οποίος, στην προκειμένη περίπτωση, μετατρέπεται σε ακροατή.

Με την πρόοδο που έχει σημειώσει η τεχνητή νοημοσύνη στην παραγωγή ομιλίας, σκέφτηκα ότι είχε έρθει η κατάλληλη στιγμή να πειραματιστώ. Άλλωστε, αν υπάρχει κάτι που απολαμβάνω στην τεχνολογία, είναι να παίρνω μια φαινομενικά απλή ιδέα και να ανακαλύπτω πόσο περίπλοκη μπορεί να γίνει μέχρι να λειτουργήσει σωστά.

Το σχέδιο ήταν ξεκάθαρο. Παίρνουμε ένα άρθρο από το Tomgineer, το μετατρέπουμε σε ομιλία, δημιουργούμε ένα βίντεο με τον τίτλο, την εικόνα και μια κυματομορφή που κινείται στον ρυθμό της φωνής και το δημοσιεύουμε.

Τρεις κινήσεις όλες κι όλες. Στη θεωρία.

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

Μιλάτε ελληνικά; Περίπου.

Το πρώτο και σημαντικότερο πρόβλημα ήταν η ποιότητα της φωνής. Δεν ήθελα ένα κείμενο που απλώς μετατρέπεται σε ήχο. Αυτό το κάναμε και πριν από είκοσι χρόνια, με αποτελέσματα που θύμιζαν τηλεφωνικό κέντρο σοβιετικού τύπου δημόσιας υπηρεσίας.

Ήθελα κάτι φυσικό. Μια φωνή που να διαβάζει σωστά τις λέξεις, να αναγνωρίζει τη στίξη, να κάνει παύσεις εκεί που πρέπει και, κυρίως, να μη σου δημιουργεί την επιθυμία να κλείσεις το βίντεο ύστερα από σαράντα δευτερόλεπτα.

Δεν βοηθάει ιδιαίτερα και το γεγονός ότι έχω έναν μάλλον ιδιόμορφο τρόπο γραφής, στον οποίο μπλέκω αγγλικά με ελληνικά, σοβαρό επιστημονικό λόγο με το υβρεολόγιο εμπόρου οργάνων του Βαρδάρη και τεχνική ορολογία με εκφράσεις που πιθανώς θα συναντούσες σε επιστημονικό συνέδριο.

Μπορεί να ξεκινήσω μια παράγραφο αναλύοντας τις επιπτώσεις της τεχνητής νοημοσύνης στην ανθρώπινη δημιουργικότητα και να την ολοκληρώσω με εκφράσεις σε άπταιστα γαλλικά πεζοδρομίου. Για έναν άνθρωπο, η εναλλαγή αυτή είναι μέρος του χιούμορ του. Για ένα μοντέλο TTS, είναι μάλλον λόγος να υποβάλλει την παραίτηση του και να πάει να ασχοληθεί με το ψάρεμα.

Άρχισα λοιπόν να δοκιμάζω μοντέλα Text-to-Speech (TTS), τόσο τοπικά στον υπολογιστή μου όσο και μέσω διαδικτυακών υπηρεσιών. Έψαξα διαθέσιμες υλοποιήσεις, πειραματίστηκα με διαφορετικές φωνές, εγκατέστησα εργαλεία, κατέβασα μοντέλα και άκουσα αρκετές φορές τα ίδια αποσπάσματα ώστε να αρχίσω να αμφισβητώ την επιλογή του επαγγέλματός μου. Ήρθε και λίγο αυτό το, ξέρετε, με τα life choices.

Το ενδιαφέρον είναι ότι αρκετά μοντέλα δηλώνουν υποστήριξη ελληνικών. Μόνο που υπάρχει μια μικρή διαφορά ανάμεσα στο «υποστηρίζω ελληνικά» και στο «μιλάω ελληνικά».

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

Ιδιαίτερα διασκεδαστική ήταν η συμπεριφορά απέναντι στις ξένες λέξεις και στα ονόματα. Εκεί καταλάβαινες ότι το μοντέλο δεν διάβαζε απλώς το κείμενο. Αυτοσχεδίαζε.

Φυσικά, υπάρχουν και εμπορικές υπηρεσίες με εντυπωσιακή ποιότητα. Το πρόβλημα είναι ότι η μετατροπή μεγάλου όγκου κειμένου κοστίζει. Και όταν έχεις ήδη περισσότερες από 100.000 λέξεις δημοσιευμένες, αρχίζεις να αντιμετωπίζεις διαφορετικά τις χρεώσεις ανά χαρακτήρα.

Μια συνδρομή που φαίνεται λογική για μερικά σύντομα ηχητικά αποσπάσματα μπορεί να γίνει ιδιαίτερα ακριβή όταν θέλεις να μετατρέψεις εκατοντάδες ή στο μέλλον χιλιάδες ολόκληρα άρθρα.

Επομένως, έπρεπε να βρω μια ισορροπία ανάμεσα στην ποιότητα, στο κόστος και στη δυνατότητα να ελέγχω ο ίδιος τη διαδικασία.

Κάπου εδώ μπήκε στη μέση το FFmpeg

Όταν άρχισα να παίρνω αξιοπρεπή αποτελέσματα στην παραγωγή ομιλίας, έπρεπε να λύσω το δεύτερο μέρος του προβλήματος: τη δημιουργία των βίντεο.

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

Ήθελα αυτοματοποίηση. Να δίνω τα απαραίτητα αρχεία και να παίρνω πίσω ένα έτοιμο MP4.

Έτσι γεννήθηκε το μικρό μου project με το μάλλον αναμενόμενο όνομα TTV (Text to Video). Με τη βοήθεια του FFmpeg και μερικών συναρτήσεων PowerShell, άρχισα να συνδέω τα επιμέρους στάδια της παραγωγής.

Ο τίτλος του άρθρου, η εικόνα, ο ήχος, τα γραφικά και η κυματομορφή έπρεπε να συνδυάζονται σε ένα ενιαίο αποτέλεσμα. Η κυματομορφή μάλιστα έπρεπε να είναι πραγματική, να αντιδρά στην ομιλία και όχι να αποτελεί απλώς ένα διακοσμητικό animation.

Ακολούθησε μια ωραία σειρά από δοκιμές, αποτυχίες, διορθώσεις και νέες δοκιμές. Κάποιες φορές το FFmpeg έκανε ακριβώς αυτό που του ζητούσα. Άλλες φορές έκανε ακριβώς αυτό που του είχα γράψει, το οποίο δυστυχώς δεν ήταν πάντα αυτό που ήθελα.

Είναι μια θεμελιώδης διαφορά που γνωρίζει καλά όποιος έχει γράψει έστω και δέκα γραμμές κώδικα.

Σταδιακά όμως τα κομμάτια μπήκαν στη θέση τους. Η διαδικασία έγινε πιο οργανωμένη, τα αρχεία απέκτησαν προβλέψιμη δομή και η παραγωγή ενός βίντεο άρχισε να απαιτεί πολύ λιγότερη χειροκίνητη παρέμβαση.

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

Και εγένετο YouTube!

Σήμερα, λοιπόν, έχουμε τα πρώτα δύο βίντεο δημοσιευμένα. Το Tomgineer απέκτησε το δικό του κανάλι στο YouTube, ενώ το ίδιο περιεχόμενο ανεβαίνει και στο X.

Επέλεξα δύο αρκετά διαφορετικά άρθρα για αρχή.

Το πρώτο είναι το φωτορεπορτάζ μου από την κινητοποίηση της 31ης Οκτωβρίου στο Ντίσελντορφ, όταν βγήκα στον δρόμο για να δω την πολυδιαφημισμένη επανάσταση και βρήκα, μεταξύ άλλων, πολλά κόντρα πλακέ.

Πήγα στην επανάσταση και βρήκα κόντρα πλακέ. Φωτορεπορτάζ από το Ντίσελντορφ.

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

Και τα δύο διαρκούν περίπου δεκατρία λεπτά. Είναι ουσιαστικά τα κανονικά άρθρα σε ηχητική μορφή, ώστε να μπορείς να τα παρακολουθήσεις χωρίς να χρειάζεται να έχεις συνεχώς τα μάτια σου στην οθόνη.

Δεν πρόκειται για podcast με συζητήσεις, συνεντεύξεις και μουσικές εισαγωγές. Ούτε σκοπεύω να μετατρέψω το Tomgineer σε τηλεοπτικό σταθμό. Είναι απλώς ένας επιπλέον τρόπος διάθεσης του περιεχομένου που ήδη δημοσιεύω.

Και προσωπικά βρίσκω ενδιαφέρον ότι ένα κείμενο που γράφτηκε για να διαβαστεί μπορεί να αποκτήσει μια εντελώς διαφορετική χρηστικότητα όταν μετατραπεί σε ομιλία.

Η ποιότητα προηγείται της ποσότητας

Είμαι ευχαριστημένος από το γεγονός ότι το σύστημα λειτουργεί, αλλά δεν θεωρώ ότι έχουμε φτάσει στο επιθυμητό επίπεδο ποιότητας.

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

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

Αυτό δεν λύνεται απλώς επιλέγοντας μια πιο ευχάριστη φωνή. Χρειάζεται καλύτερη κατανόηση της γλώσσας, της σύνταξης και του νοήματος.

Γι' αυτό και δεν με ενδιαφέρει να μετατρέψω βιαστικά ολόκληρο το αρχείο του Tomgineer σε βίντεο. Προτιμώ να ανεβάζω επιλεγμένα άρθρα, να αξιολογώ το αποτέλεσμα και να βελτιώνω σταδιακά τη διαδικασία.

Η τεχνολογία προχωράει με εντυπωσιακή ταχύτητα και είναι πολύ πιθανό οι σημερινές λύσεις να έχουν ξεπεραστεί σύντομα. Μέχρι τότε, όμως, δουλεύουμε με όσα υπάρχουν πραγματικά και όχι με όσα υπόσχονται οι ανακοινώσεις των Tech Bros.

Και στο βάθος, το VerdinCore

Όλη αυτή η διαδικασία συνδέεται και με μια ιδέα που έχω για το VerdinCore, το σύστημα διαχείρισης περιεχομένου που αναπτύσσω.

Θα ήθελα κάποια στιγμή να προσθέσω μια λειτουργία «Διάβασέ μου το άρθρο». Φαντάσου να επισκέπτεσαι μια σελίδα, να πατάς Play και να ακούς το περιεχόμενό της απευθείας από τον ιστότοπο.

Για μεγάλα άρθρα, για ανθρώπους που προτιμούν την ακρόαση ή για περιπτώσεις όπου η ανάγνωση δεν είναι πρακτική για λόγους υγείας, μια τέτοια δυνατότητα θα μπορούσε να έχει πραγματική αξία.

Δεν ξέρω ακόμη πότε θα την υλοποιήσω. Δεν υπάρχει χρονοδιάγραμμα, ούτε πρόκειται για κάποιο χαρακτηριστικό που είναι ήδη έτοιμο και περιμένει να ενεργοποιηθεί.

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

Τα σημερινά πειράματα αποτελούν επομένως και μια πρακτική δοκιμή για κάτι που ενδεχομένως θα βρει τη θέση του στο VerdinCore στο μέλλον. Χωρίς βιασύνη και χωρίς την ανάγκη να προσθέσω ένα ακόμη χαρακτηριστικό απλώς για να μεγαλώσει η λίστα των features.

Πού θα ακούς τα επόμενα άρθρα;

Προς το παρόν, η ηχητική έκδοση του Tomgineer βρίσκεται σε δύο πλατφόρμες:

  • YouTube: @tomgineer_com, όπου θα συγκεντρώνονται τα βίντεο των άρθρων.

  • X: @tomgineer_, όπου θα δημοσιεύονται επίσης τα βίντεο μαζί με το υπόλοιπο περιεχόμενο.

Δεν μπορώ να υποσχεθώ συγκεκριμένο αριθμό δημοσιεύσεων ανά εβδομάδα. Το πόσα άρθρα θα μετατρέπονται εξαρτάται από τον διαθέσιμο χρόνο μου, καθώς η δημιουργία και η συντήρηση όλων αυτών παραμένει προσωπική ενασχόληση στον ελεύθερο χρόνο μου.

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

Αν λοιπόν διαβάζεις το Tomgineer και σου αρέσει η ιδέα να μπορείς να ακούς κάποια από τα άρθρα του, κάνε Subscribe στο YouTube και Follow στο X. Έτσι θα ενημερώνεσαι για τις νέες δημοσιεύσεις και θα βοηθήσεις να αποκτήσει το εγχείρημα το πρώτο του κοινό.

Θα με ενδιέφερε επίσης να μάθω πώς σου φαίνεται η ποιότητα της ομιλίας. Όχι μόνο αν καταλαβαίνεις τις λέξεις, αλλά αν μπορείς να ακούσεις ευχάριστα ένα ολόκληρο άρθρο. Αν υπάρχουν σημεία που σε ενοχλούν ή σου ακούγονται αφύσικα, τα σχόλια είναι ευπρόσδεκτα.

Για μένα, το πιο ενδιαφέρον κομμάτι αυτής της ιστορίας δεν είναι ότι κατάφερα να δημιουργήσω δύο βίντεο. Είναι ότι μια τεχνολογία που μέχρι πρόσφατα θεωρούσαμε εντυπωσιακή ακόμη και σε σύντομα demos, αρχίζει πλέον να γίνεται ένα πρακτικό εργαλείο για μικρούς, ανεξάρτητους δημιουργούς περιεχομένου.

Χωρίς στούντιο, χωρίς εξοπλισμό ηχογράφησης, χωρίς εταιρεία παραγωγής. Με έναν υπολογιστή, μερικά εργαλεία, αρκετό πειραματισμό και την επιμονή να διορθώσεις αυτό που δεν λειτουργεί.

Και κάπως έτσι, ύστερα από τόσα χρόνια που σας έπρηζα τα μάτια με όσα γράφω, η τεχνολογία μού έδωσε επιτέλους τη δυνατότητα να σας πρήζω και τα αυτιά.

Το λες και πρόοδο αυτό.