ラズパイでブラウザに英語を喋らせたい! – ディープマッスル AI Eigo をラズパイで動かす

先にお断りしておきます。ラズパイあるいはlinuxのchromiumでweb speech apiを使って言葉を喋らせるのは簡単なのですが、音質は少々残念な感じです。あまり期待しないでね、ってことで。

そういうわけで今回はラズパイのブラウザでweb speech apiについてお話しようと思います。なぜweb speech apiが私にとって重要なのかと言うと、先のポストで書きました「ディープマッスル AI Eigo」というふざけた名前のウェブアプリが関係しております。

名前は、まあ、ふざけましたが(笑)中身はまっとうなアプリでして、気に入った英文をコピペすると、搭載されたAIにより英語のレッスン教材が瞬時に生成され、自分の読みたい英文で本物の英語の勉強ができるという代物です。

AIは主にリーディングを鍛える方向で使われているのですが、語学のソフトなので、なんとかして、英語の読み上げ機能をつけたかったのですね。そこで利用したのがweb speech apiというブラウザの機能です。

このweb speech apiですが、読み上げ機能のエンジンはOS搭載のものを使います。windowsやmacOS, その他メジャーな携帯OSならば、今どき読み上げ機能は余裕で標準装備されています。では、ラズパイを始めとするlinuxではどうなのかという話を今回調べてみました。

Yagiful初のAI搭載アプリ、ディープマッスル AI Eigo

そんなわけの分からんアプリはどうでもいいから早くweb speech apiをやれと言われそうですが、せっかくですので(笑)。アプリ作成の経緯等について書いてみたいと思います。

アプリの紹介は前回行ったのですが、いろいろ口で説明しても分かりにくいと思いまして、新たに「ディープマッスル AI EigoでBBC NEWSを読んでみようキャンペーン」を始めました。

ディープマッスル AI EigoでBBC NEWSを読んでみよう
BBC NEWSの最新記事をディープマッスル AI Eigoで読み解きましょう。AIが生成する簡単な要約から始めて、徐々に普通の要約、そしてオリジナル記事へとステップアップ。激動の世界を英語で理解する醍醐味を、ディープマッスルで感じてくださ...

最新のBBC NEWSの短い要約を、ディープマッスルのAIアシストで聞いて、読むことができます。記事のリストは毎日定時に入れ変わります。ウクライナやガザ地区の激動の世界情勢を英語で簡単に理解できるというだけでも楽しいのですが、日本には伝わらないようなイギリスローカルの政治の話もあって面白いです。割とどうでもいいような記事もありますし、作った本人が一番ハマって毎日かかさず読んでいたりします(笑)

要約でさっと記事が理解できるのがかなり快感です。1週間も続けていただければ「BBC NEWSってこういうニュースサイトだったんだ」というのが理解できるのではないかと思います。

ディープマッスル AI Eigo 誕生の背景: AIとプログラミングの未来

言うまでもなく、近年、プログラミングの世界はAIに侵食されてきています。労働基準法など関係なく24時間稼働し続けるやつらの破壊力は凄まじく、とてつもないスピードでスクラッチからアプリを生成し続けています。これを無視して開発を続けることは、プログラマとして死を意味するなと最近思うようになり、AIの使い方に慣れる意味もあって作成してみたのが、今回のアプリです。

見る人が見たらすぐに分かると思うのですが、このアプリ、作るだけなら簡単なのです。簡単なのですが、chrome, firefox, safariなどの主要なブラウザで問題なく動くようにするにはいろいろ小技が必要で、結局プログラムが読めない人にはここまで動くようにはできないだろうと思います。

AIの生成するコードがトラブったときはなかなかに大変で、AIの作ったコードをAIで解析させて、大局的な判断を人間がして、AIにまた指示を出すというような、もはや軍拡競争かよというような作業が必要だったりします。今回の開発でこういう作業のコツが見えてきたのは私にとって収穫だったかなと思います。

いろいろやってみて思ったのですが、AI時代に入りはじめの2025年現在、一番大事な能力って、文章の早読み能力ではないかと感じました。AIに質問すれば、疲れ知らずのAIが長文の日本語を作成し、それを人間が読む。AIにプログラムを作らせれば、淡々とプログラムが生成され、問題が起こればその長文プログラムを人間が読む。AIが長文を書き、それをひたすら人間が読むという構図が出来上がっておりまして、昔より思考力(あるいは反射神経?)を酷使しているよなという実感がありました。

まあ、この感慨も数年後には変わっているかもしれませんね。今はいろんな意味で転換期なのでしょう。

ラズパイでweb speech apiを動かす

さて話を元に戻しましょう。ラズパイで作業しましたが、内容としてはlinux全般で変わらないと思います。

まず必要なアプリをインストール。

sudo apt update
sudo apt install speech-dispatcher espeak-ng

たったこれだけで準備完了です。chromiumを一度シャットダウンして、ターミナルからchromiumを以下のオプションをつけて起動し直してください。

chromium-browser --enable-speech-dispatcher

警告メッセージが出ますが、2025年現在オプションは機能しています。さっそくディープマッスル AI Eigoに英語を喋らせてみましょう。

「サポートされていないコマンドラインフラグ。–enable-speech-dispacherを使用しています。安全性とセキュリティーが損なわれます。」という警告がでますが、web speech apiの利用は可能でした。ブラウザで表示しているのはディープマッスル AI Eigoの「BBCを呼んでみようキャンペーン」ページ。「初級」か「中級」を押して、web speech apiが働くことを確認してみてください。

せっかくですので、さきほど紹介したBBCキャンペーンのページで試してみましょう。キャンペーンページ( https://www.yagiful.com/ja/deepeigo/listings.html )に移動して、リストしてあるBBCニュースから適当な記事を選んで、「初級」もしくは「中級」のボタンを押してみてください。

ラズパイのchromiumでディープマッスル AI Eigoを立ち上げ、英文を読み上げてみる。昔懐かしいロボット風英語が哀愁を誘う。
ラズパイのchromiumでディープマッスル AI Eigoを立ち上げ、英文を読み上げてみる。昔懐かしいロボット風英語が哀愁を誘う。

えーと、chromiumで聴いてみた結果、どうでしたか? 昔映画で見たロボット風のなかなか味のある英語ですね(笑) これはディープマッスルが悪いのではなく、windowsやmac、もしくはandroidやiOSでは普通に聞ける綺麗な英語を喋ってくれます。ただ、linuxのchromiumの場合では難しいものがあると言わざるを得ません。

昔espeakというのがありましたが、その開発は終了しておりまして、それを有志が引き継いだのが今回のespeak-ngです。とはいえ、やはり、読み上げアプリの開発となると資金力のようなものがものを言うということかもしれません。

ちなみにespeak-ngはコマンドラインで使えるツールで

espeak-ng -v voice_name words

などという風に利用できます。mbrolaという音源を使えば多少は改善されるようで、そのあたりの話はこちらが詳しいです。

「eSpeak NG」を試す
kun432さんのスクラップ

32bitのRPi OSではmbrolaがリポジトリになく apt install mbrola できないようでした。こちら からdebパッケージを落としてsudo dbpg -i (パッケージ) すると動かせました。

ラズパイでの文章読み上げの現実解

このまま終わると「ラズパイだめじゃん」という話になりそうですが、ラズパイでも読み上げができないわけではありません。

企業で手っ取り早くやりたいんだと言う話なら、どこかのAIにプロンプト送ってやるのが一番で、もはや人間がしゃべるより綺麗じゃないかという抑揚の聞いた英語 or 日本語を、ラズパイであろうがなかろうがに関係なくじゃんじゃん喋らせることが可能な時代です。とはいえ2025年現在、これをやるにはそこそこの出費が必要です。

無料でやる手もあるにはあります。ライセンス的にグレーなので商用サービスには利用できないと思いますが、個人利用であれば次のテクニックが使えます。日本語の場合だと

mpv "http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&tl=ja&q=url_encodeした日本語"

urlにアクセスすれば mp3ファイルがgoogleから返ってきて、それを直接mpvで再生しています。200文字くらいまでなら喋らせることが可能らしく、英語の場合ならtl=enとするだけで問題なくいけると思います。

そこそこきれいで、個人利用でシェルスクリプトに言葉を喋られたいときなどに重宝しています。この利用についてgoogleは良いとも悪いとも言ってないようで、黙認してくれてる状況のようです。将来的に使えなくなる可能性もある点には注意ください。

まだプログラマは必要ってことで

ちょっと前のCMでソフトバンクの孫正義氏が「人間がプログラムを作る時代は終わろうとしている」と語っているのを見かけましたが、今の所まだまだプログラマは必要なようです。

ただ、必要とされるエンジニア像が変わろうとしているのは確かかもしれません。知識の量はAIが肩代わりしてくれるようになったのですが、代わりの仕事がAIのトラブル案件の解決ですから、これまでとは違った筋肉が疲弊する時代に入ったと言えるでしょう。

そっから先がどうなるか私には分かりませんが、そんなことよりウクライナやガザ地区の問題が解決してくれることのほうがよほど大事だろうと思ってしまうのは、アプリの開発のせいでBBCの英文を読み続けた後遺症だと思います(笑) そういうわけで「ディープマッスル AI Eigo」は本当にお勧めです。本物の英語で本物の英筋を鍛えましょう。

コメント

タイトルとURLをコピーしました