週次ブログ01_GWに音声AIアシスタントを自作してみた話

GWに音声AIアシスタントを自作してみた話 チャレンジ

こんにちは、人コマ(じんこま)です!

今週のGW、実は新幹線が全然取れなくて、旅行の予定が完全につぶれてしまいました。まあ、仕方ない。

結論、音声AIを自作してみたら、使うだけでは絶対に気づかなかったことだらけでした。

実は、旅行がなくなってヒマになったノリで「そういえば、JARVISみたいな音声AIアシスタントって自分で作れるのかな?」と思い立って、気づいたら一日中コードをいじっていたんです。エンジニアでもなんでもない自分が。

今日は、そんな音声AI自作体験について、正直に話してみようと思います。

コンテンツ

GW、新幹線が取れなかったので家でJARVISを作ることにしました

今年のGW、もともと旅行に行こうと思っていたんですよ。どこか遠くに。

でも新幹線が全然取れなくて。

GW直前に「そういえば予約してなかった」と気づいて調べたら、もう全便ほぼ満席。残ってる席は乗り継ぎ3回みたいなやつとか、時間帯がものすごく微妙なやつとか。「これじゃ旅行というより移動の修行だな」と思って、あっさり諦めました。

結果、まるっとGWが家で過ごすことに確定したわけです。

で、手持ち無沙汰になった初日。特に何も予定もなく、ぼんやりスマホをいじっていたときに、ふと思ったんですよね。

「JARVISって、自分で作れるのかな?」

アイアンマンという映画を見たことがありますか?アイアンマンのスーツには、JARVISという音声オペレーターがいて、トニー・スタークが話しかけるとなんでも答えてくれるんです。映画の中では脇役っぽいんですが、あれがずっと羨ましかった。「自分もあんな音声アシスタントが欲しい」って、見るたびに思っていて。

で、今はAIの時代じゃないですか。まさかあのJARVISが現実に近い形で作れるようになるとは思っていなかったんですが、考えてみれば音声AIって、まさにJARVISそのものなんですよね。AI時代とアイアンマンが繋がった瞬間でした。

以前から「いつか作ってみたいな」と頭の片隅にあったんですが、いつも「そのうち」で流していた。

でも今日はヒマだ。

技術的なモチベーションとか、勉強のためとか、そういう崇高な理由は何もなくて、ただの「音声オペレーター、欲しい」という純粋な憧れでした。

調べてみたら、どうやらPythonと各種AIのAPIを組み合わせれば、それっぽいものは作れそうだということがわかって。「あ、いけるんだ」と思ったその日のうちに、着手していました。


さぁ、ここまで読んでくださった方は、「で、実際どうだったの?」って気になりますよね。

動いた!嬉しい。でも、すぐ限界を感じた

試行錯誤しながら作って、ある瞬間に「じゃあ、声かけてみよう」と思ってiPhoneに向かって話しかけたんです。

そしたら、返事が来た。

ちゃんと、音声で。そして、自分のPC内の資料を読んでくれた。

これが本当に嬉しくて。「やばい、動いた!」って声に出てしまったほどです。自分で作ったものが自分の声に反応して、応答してくる。なんか……映画みたいだな、と思いました。テンションも上がって、しばらく無駄に話しかけ続けてしまいました。


でも、使い続けると、だんだん現実が見えてきます。

精度が、正直微妙なんですよ。言葉をうまく拾えないことが多いし、答えがズレているときもある。「ちょっと何言ってるか分からないな」という感じのやりとりが続いて、「あ、これはまだまだ荒削りだな」と気づいてしまいました。

できることも、かなり限られていて。「なんでもできる万能アシスタント」からはほど遠い。思い描いていたJARVISとは、だいぶ違う。

ただ、落ち込んだというよりは「もう少し頑張ればもっとよくなりそう」という気持ちになりました。動いた事実があるから、完成度の問題だな、と前向きに思えたんだと思います。


そんなときに、ふとXを見ていたら、他の人が自作した音声アシスタントの動画が流れてきたんですよ。

……いや、クオリティが全然違う。

スムーズに会話できて、いろんなことをこなせて、インターフェースも洗練されていて。「え、これ本当に個人で作ったの?」と見入ってしまいました。

自分のと比べると、正直かなりの差がある。「すごいな」というのが素直な感想で、羨ましいとか悔しいとかよりも、まず純粋に感心してしまいました。同じ「自作」という言葉でも、この差はどこから来るんだろう、と考え始めたんです。

## 作ってみて初めて、音声AIサービスのすごさが分かった

実は、作ってみて気づいたことが3つあって。

1つ目は、リアルタイムで会話を成立させることの難しさ。

技術的な話は難しいので省きますが、「なんとなく音声でやりとりできるもの」を動かすだけでも、想像以上に壁がありました。

音を拾う、文字に変換する、AIに投げる、答えを返す、それを声で読み上げる。この一連の流れを「会話っぽく」動かすだけで、いくつもの処理が関わっていて、どこかが少しズレるとテンポが崩れる。

しかもリアルタイムで会話することだけでもこれだけ難しいのに、それをリアルタイム翻訳しながら成立させているサービスもあるわけで。そう考えると、ボイスモードを出しているサービスは全部すごいと思います。ChatGPT・Gemini・その他含めて、全員すごい。「普通に使えて当たり前」みたいな感覚でいたんですが、その裏側は全然「当たり前」じゃなかったんですよね。

2つ目は、使うだけでは絶対に分からなかった、ということ。

これが正直、一番の感想です。

ChatGPTのVoiceモードも、GeminiのVoiceモードも、これまで普通に使っていて、特別すごいと感じたことはなかったんです。「まあ便利だな」くらいの感覚で。

でも、自分で作ってみた後に触ると、印象が全然変わりました。

「こんなにスムーズに動いてる……」って、改めてびっくりした。同じ機能なのに、体験した後では見え方が違う。作ってみるまでは、この感覚には絶対たどり着けなかったと思います。

3つ目は、非エンジニアこそ一度作ってみることに意味がある、ということ。

「こういう機会でないと実感できない」というのが、本当のところです。

プログラミングの勉強のためとか、そういう動機じゃなくていいと思っていて。「動く仕組みを自分で触ったことがある」というだけで、AIツールへの解像度が変わるんです。

エンジニアの方は、普段からコードと向き合っているので、感覚的に分かっていることが多い。でも自分みたいに「使う専門」でいると、こういう感覚は手に入らないんですよね。だから、ちょっとしたチャンスがあれば、ぜひ一度試してみてほしい。完成度は二の次でいい。動いた瞬間の感覚を体験するだけで、十分意味があると思っています。

つまり、人コマが言いたいこと

つまり、何が言いたいかというと、完成度より「作ってみた体験」に価値があった、ということです。

JARVISには程遠いし、精度もまだまだだし、できることも少ない。でも、あの「動いた!」という瞬間は、使うだけでは絶対に手に入らなかったものです。不完全でも、ちゃんと動いた。それだけで、十分すぎるほど意味がありました。

次はもう少しだけ精度を上げてみようか、とか、こういう機能を足してみたらどうかな、とか

そういう続きを考えられるのも、「一度作った」からだと思っています。完璧じゃなくていい。動けばいい。そこから先は、気が向いたときにゆっくりでいい。


さぁ、ここまで読んでくださった方は、自分でなにか作ってみたくなりましたか?

難しく考えなくていいです。
GWのヒマつぶしでも、純粋な好奇心でも、理由はなんでもいい。みなさんも一度、作ってみてはいかがでしょうか?

作ってみた感想、ぜひコメントで教えてください。「動いた!」の瞬間、一緒に喜ばせてください。

良い週末を!じゃあね〜!👋

コメント

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