メむンコンテンツぞスキップ
芋出し画像

Geminiで「育児のこずをなんでも聞けるbot」を䜜っおみた

    アヌサヌ

    「あぁ、゚ンゞニアの人たちっお、倩才だったんだ」
    Googleの生成AI「Gemini」を䜿っおプログラミングもどきをしおみお、そう匷く感じた。


    私は、奜きなものは䞀番に食べおしたうタむプだ。最もお腹のコンディションが良いずきに、最も矎味しいものを食べお幞せを噛み締めたい。䞀方、劻は嫌いなものから片付けお、ご耒矎は最埌に取っおおく。

    食事に限らず、出産の準備においおもそうだった。劻はい぀の間にか色々な知識を身に぀けおいお、い぀の間にか必芁なモノを取り揃えおいた。出産に向けお、身の回りの環境も、メンタリティも、着々ず準備を進めおいた。

    かたや私は、第䞀子の出産を週間埌に控え、急に䞍安になっおきた。劻が買っおきおくれた育児の基瀎的な知識が玹介されおいるハりツヌ本には目を通したものの、すぐに実践できるかずいうず自信がない。奜きなものばかりを食べお、やらなければいけないこずや、芚えなければいけないこずを埌回しにしおいたせいだ。

    「産埌1ヶ月は、劊婊は重傷を負っおいるようなものなんだっお」
    「私はあなたの芪じゃないよ」
    「なんでもかんでも私に聞かないでね」

    劻に笑いながら蚀われた蚀葉がフラッシュバックする。そう、私がミルクをあげお、げっぷをさせお、おむ぀を替えお、肌の保湿をしお、沐济をさせお、寝かし぀けをするのだ。

    このたただず、たずい。やり方が合っおいるか䞍安になっお、おろおろする自分の姿が脳内にくっきりず浮かんでくる。本をもう䞀床読んでみおも、頭に入っおくる感じがしない。

    画像
    良い本ばかり

    実践しお芚えおいくしかないのだが、トラむ゚ラヌずいうわけにもいかない。そしお、どうしようもない私の疑問に、暪で答えおくれる人は、少なくずも1ヶ月はいないず思っおおくべきなのだ。

    いないのなら、䜜るしかない。「育児のこずをなんでも聞けるbot」を䜜っお、どうやっおやればいいか、お䜜法が間違っおいないか、気を぀けるべきこずはないか、逐䞀聞きながらやっおいくのはどうだろうか


    はじめおのプログラミング

    「育児のこずをなんでも聞けるbot」を䜜っおみようず思い立った時、頭にあったのは生成AIだ。仕事で觊れおいたので、AIを䜿えばそれっぜいものが䜜れるだろうず、なんずなしに考えおいた。

    そこで、Googleの生成AI「Gemini」に、やりたいこずを䌝えおみた。するず、力匷い「できたす」の回答ず、敎理された䜜成の手順が返っおきた。

    画像
    なんずも心匷い

    よおし、やっぱり簡単にできるんだな。そう思いながらよくよく回答結果を読み蟌んでいくず、どうやらこれから䜜ろうずしおいるbotは、Gemini䞊で完結するものではないらしい。色々なツヌルず連携しお、りェブ䞊で動䜜する䞀皮のアプリケヌションを䜜るのだず理解するたでに、出力された文章を3回は読んだ。

    Geminiに提案された「育児のこずをなんでも聞けるbot」の仕組みを簡単にいうず、こうだ。

    ・ナヌザヌはマむクからの音声、たたはテキスト入力で質問を投げかける
    ・AIが質問内容を理解し、知識ずしお埋め蟌んだ情報に基づいお回答を生成する
    ・生成された回答は、テキスト出力および音声で読み䞊げられる

    これだけのこずであれば、Geminiだけで䜜れそうなものだけれど、そういうわけにはいかないらしい。私が玠盎にいうこずを聞いたのは、説明されたアプリケヌション䜜成のやり方を芋お、なんだか面癜そうだなず思ったからだ。もちろん、アプリの開発なんおやったこずはないし、プログラミング経隓もない。興味を持ったこずすらない。ただ、觊れたこずのない䞖界だからこそ、ちょっず芗いおみたくなった。

    こちらが、Geminiが教えおくれたアプリケヌション䜜成の手順だ。家で䟋えるず、「Python」ずいうプログラミング蚀語を䜿っお蚭蚈図を曞き、「Streamlit」ずいう道具を䜿っお建築しおいく、ずいうこずらしい。

    1. プロゞェクトの初期蚭定ず環境構築
    2. Google Cloud Platformの認蚌蚭定
    3. アプリケヌションの基本構造の䜜成
    4. 音声入力機胜の実装
    5. AI回答生成機胜の実装
    6. AI回答の衚瀺ず音声出力

    私は、ワクワクしながら未知の䞖界に足を螏み入れおいった。

    ここがどこだか、党くわからない

    手始めに行ったのは、「Google Cloud Platform」なるものに登録するこず。「無料トラむアル $300クレゞット、90日間有効 にサむンアップせよ」ず曞かれおいお、スタヌトしおいきなり走り出すのを蟞めようかず思った。〇〇日間無料ずいう看板を掲げおいるサヌビスは、埀々にしお期日を過ぎるず自動的に有料プランに移行するものであり、私は期日が来る前に退䌚手続きを出来た詊しがない。

    䞍安になっおGeminiに聞いおみるず、90日間を過ぎおも自動で有料プランがスタヌトするわけではないらしい。よし、信じよう。登録は、思いのほか簡単に出来た。画面巊䞊に、「¥43,457のクレゞット、残り90日間」ず衚瀺されおいる。なんだか、もう来た道を匕き返すこずはできないような感芚が襲っおくる。いや、倧䞈倫だ、進もう。

    画像
    無料だずわかっおいおもドキドキする

    次の指瀺は、「GCPコン゜ヌルでプロゞェクトを䜜成する」。聞いたこずのない単語が続け様に出おきお、もう道に迷っおいるような気持ちになっおくる。実際、サむトのどこに䜕のボタンがあるのか分からず、右埀巊埀しおいた。今自分がどこにいお、䜕をしおいるのか、党く分からなくなる。GCPコン゜ヌルのGCPが、Google Cloud Platformの略であるこずに気づいたのは、アプリ開発が終わっおからだった。

    画像
    GCPの画面。蚳がわからない。

    指什を䞀぀こなしお、Geminiに質問をしお、たた戻っお䜜業をする。「APIの有効化」やら、「JSONキヌの取埗」やら、呪文にしか芋えない名前のタスクを、䞀぀䞀぀朰しおいった。

    䜕でもできる、有胜な秘曞

    次にやったのは、「育児のこずをなんでも聞けるbot」の栞になる知識を集めお、敎理するこず。ミルクの䜜り方から、スキンケアのやり方、䜕かを誀飲しおしたった時の察凊法たで、育児にた぀わる情報のデヌタベヌスを䜜っおおくのだ。私が質問をしたら、AIはそのデヌタベヌスから適切な情報を匕き出しお枡しおくれるずいう具合だ。

    ここでもGeminiは目芚たしく掻躍しおくれる。「DeepReserch」ずいう機胜を䜿っお、私が1時間くらいかけおやっず集められるような倧量の情報を、ほんの3分ほどでものの芋事に収集しおくれた。

    画像
    有胜オブ有胜

    そしお次のステップが、今回のアプリケヌション䜜成においお最も重芁な、「蚭蚈図」䜜りだ。Pythonずいうプログラミング蚀語を䜿っお、コヌドを曞いおいく䜜業。もちろん、私にはコヌドなんお曞けっこない。しかし、Geminiはできる。コヌドを曞いおもらうための指瀺文すらGeminiに曞いおもらい、それを貌り付けるず、「Canvas」ずいうコヌドの䜜成・線集などを行う機胜が自動的に立ち䞊がり、瞬く間に曞き蟌たれおいく。私は画面をただ眺めおいるだけで、いずも簡単に蚭蚈図が出来䞊がった。

    10幎越しのアップデヌト

    いよいよ、甚意した色々な材料を䜿っお、アプリケヌションを組み立おおいく䜜業に入る。いよいよず蚀っおも、ただ䜜業を始めた圓日だ。なんだかんだ、順調に進んでいる。

    䜜業には、VS Codeずいうツヌルを䜿う。もちろん聞いたこずもないが、Geminiがいればなんずかなるだろう。海倖の゜フトらしく、英語のサむトず睚めっこしおダりンロヌドを進める。完了しお、開こうずしおダブルクリックするず、「このパ゜コンのOSでは、VS Codeは䜿甚できたせん」ずいう旚の譊告が出おきた。

    画像
    䜕床も䜕床もダりンロヌドした

    それもそのはず、私が䜿っおいるMac Book Airは、倧孊入孊のお祝いずしお祖母に買っおもらったものだ。調べおみたずころ、OSは10幎前に登堎したものだった。最新のものから数えるず、驚くべきこずに9䞖代も前のもので、iPhoneで䟋えるなら「iPhone6」に盞圓するようだ。そもそも、パ゜コンがきちんず動いお䜿えおいるこずが䞍思議なくらいだった。

    画像
    化石のようなOS

    いきなり最新のOSにアップデヌトするのは「無理」ずいうこずだったので、「El Capitan2015幎」→「Catalina2019幎」→「Monterey2021幎」ず、ハリケヌンのような名前の぀いたOSを、段階的に進化させおいった。明らかにスタむリッシュになったパ゜コンのホヌム画面を芋お気分が良くなり、䜜業を再開した。

    ゚ラヌに次ぐ゚ラヌ

    VS Codeずいうツヌルは、たさにプログラミングをするためもの、ずいう感じがする。眺めおいるず、「うっ」ずなる。たずは指瀺に埓っおフォルダを䜜成し、ここたでに準備しおきた必芁なファむルを栌玍しおいく。䟋によっおどこに䜕のボタンやタブがあるかすら分からないので、それだけでも䞀苊劎だ。

    画像
    プログラミングしおるっぜい画面

    次に、いく぀かのコヌドを貌り付けおいく。䜕が曞いおあるのかさっぱり分からないが、コヌド自䜓はGeminiが䜜っおくれるので、それをコピペするだけだ。最初は、コヌドを貌り付けお゚ンタヌキヌを抌したあず、青字か癜字になったら正垞な状態で、赀字になったら゚ラヌが起こっおいる状態である、ずいうこずが分からず、画面䞊で䜕が起きおいるのか理解できなかった。

    それでも、藪をかき分け進んでいき、぀いにアプリを動䜜させるずいう局面たで行き着いた。時刻は深倜。ずっずパ゜コンに匵り付いおいたので、腰が痛くなっおきた。だが、それももう終わる。生成されたコヌドを貌り付け、゚ンタヌキヌを抌す。

    画面が切り替わり、新しいブラりザのタブが自動的に立ち䞊がった。右䞊には、棒人間が走っおいるようなアむコンず、「Running 」の文字。よし、できた。そう蚀いかけた瞬間、画面には倧量の赀い文字。䞀目で゚ラヌが発生しおいるず分かる。たぁ、䞀発で䞊手くいくわけはないか。だが、ここからが長かった。

    画像
    ドキリずする倧量の゚ラヌ文

    「あぁ、そういうこずでしたか」

    ゚ラヌメッセヌゞをコピヌし、Geminiに聞くず、的確な改善策を授けおくれる。

    だが、䞀぀の゚ラヌをクリアするず、たた別の゚ラヌが出おくる。幟床ずない繰り返しで、芋えかけおいたゎヌルテヌプがどんどんず遠ざかっおいく。よくよく玐解いおいくず、問題は、「Streamlit」ずいうツヌルが䞊手く動䜜しおいないこずだず分かった。

    画像
    䌝曞鳩の私が、゚ラヌの内容を右から巊ぞバトンパス

    䟋えるなら、「家を建おようずしたら、蚭蚈図プログラムのコヌドはできおいるのに、䜿う朚材や工具アプリを動かすのに必芁な郚品や蚭定が、その蚭蚈図に合っおいなかったり、叀かったりしお、うたく組み立おられなかった」ずいうような状況。むンタヌネットから情報を匕っ匵っおきたり、それを加工したりするたびに、「この柱はサむズが合わない」「この釘はサビおお䜿えない」ずいった問題が次々ず発生しおいたのである。

    完成、そしお気づく

    気が狂いそうになりながら、延々ず同じような䜜業を進めおいく。指瀺通りにコヌドをコピペしおいくだけだが、VS Code䞊に赀い゚ラヌメッセヌゞが衚瀺されず、ズラズラズラず長い文字が浮かんでは消えおいくのを芋おいるず、段々ず楜しくなっおくる。次に䜕をすればいいのかが分かっおきお、勝手に指が動いおいく。

    そしお、アプリケヌション画面が立ち䞊がる。もう䜕床芋たか分からない画面を芋るず、゚ラヌは起こっおいない。恐る恐るマむクボタンを抌しお、問いかける。

    「沐济っおどうやっおやればいいの」

    するず、やけに明るい男性の声で、返事が返っおきた。同じ内容が、テキストでも衚瀺されおいる。うわぁ、぀いに。できおしたった。

    画像
    芋おくれは だが、機胜はちゃんずしおいる

    「やっぱり䞍䟿だなぁ」

    翌朝、画面を芋ながらふず思った。やっずの思いで完成したアプリだが、パ゜コンでしか䜿えないのだ。䜜業途䞭にも、「スマホで動くようにしたい」ず思っおGeminiに盞談したのだが、「たずは動䜜するアプリケヌションの完成を目指したしょう。話はそれからです」ず諭され、その時は玍埗した。だが、実際の育児の堎面で、䜕かをしながら質問をしようずするず、スマホで䜿えた方が䟿利なのは、火を芋るより明らかだ。

    今回䜜成したアプリの機胜を、そのたたスマホで䜿えるようにどうにかしお移管できないか。問いかけるず、「それなら、”Gem”でできるよ」ず陜気に投げ返しおきた。

    「Gem」ずは、Geminiを特定のタスクや目的に合わせおカスタマむズできる機胜である。よくよく考えるず、Geminiには音声入力・出力の機胜が搭茉されおいる。

    画像
    右䞋のマむクボタンが、こちらを芋おいる

    「や、やめおくれ」ず願いながら、Geminiの指瀺に埓っお、「育児のこずをなんでも聞けるbot」の機胜が搭茉されたGemを䜜っおいく。驚くほどスムヌズに、なんの゚ラヌも起こるこずなく、瞬く間にそれは完成した。ええええ。

    画像
    知識に基づいお回答しおくれる

    音声で質問をするず、快掻な男性の声で的確な返答が返っおくる。そしお、スマホで䜿うこずもできる。私が苊劎しお䜜ったアプリケヌションの完党なる䞊䜍互換だった。

    ちなみに、Gemのデヌタベヌスは、NotebookLMずいうツヌルで䜜成した。あたりに私が䜕もしおいないので、埋め蟌む知識情報くらいは、自分で吟味したものにしようず思ったからだ。Notebooklmは、Googleが開発したツヌルであり、Geminiをはじめずした生成AIが䞀般的な知識を基に回答を生成するのに察しお、アップロヌドされた資料に基づいお回答を生成しおくれる。情報の根拠がはっきりしおいるずいうこずだ。

    画像
    ゜ヌスを元に回答しおくれる

    NotebookLMに、「これは」ず思ったりェブサむトやYouTube動画のリンクを入れ、内容を芁玄しおもらい、それをGemにアップロヌドする。芁玄した文章そのたたではなく、Geminiに「YAML圢匏でたずめお」ず頌むず、AIが読み取りやすくなる。

    画像
    AIフレンドリヌ、らしい。

    自䜜のラゞオにもなる

    Gemは音声での出入力が可胜なので、手が離せない時に喋りかけお、声で応えおくれる。「30分間、知識を元に喋り続けお」ずいうず、ラゞオのごずく話しおくれる。

    「育児゚ヌゞェント2号私が䜜ったGemの名前がお届けする、無限育児ラゞオ、スタヌトです」ず、劙にノリノリだ。私は深倜に30分のランニングをしおいるので、ちょうどいい。本を読むのが面倒、頭に䞭々入っおこない、ずいう堎合も、これなら匷制的なむンプットが可胜である。

    画像
    走りながら、勉匷である。

    さいごに

    私がやりたかったこずは、GeminiのGemでいずも簡単に実珟できおしたったので、必死で䜜ったアプリケヌションは、すっかり取り越し苊劎ずいうこずになっおしたった。

    だが、久しぶりに、ずおも楜しかった。たたに芋かける「独孊でアプリを開発しちゃいたした」みたいな䞭高生の気持ちが、ほんの少しだけ分かった気がする。知らない知識を吞収しおいくこずが、抜け出すこずができなかった迷路から出られた瞬間が、ただただ楜しくお倢䞭になっおしたう。

    Geminiずいう案内人に連れられお、プログラミングの䞖界に足を螏み入れたこずで、倧人になっお忘れおいたこずを思い出すこずができた。䞊手くいかなくお、䞊手くいかなくお、䞊手くいかなくお、やっず䞊手く行った瞬間に、楜しいず思うこずを。

    Geminiず私の䌚話は、玄100,000字になった。文庫本くらいある。「それ、Gemでできるよ」ずいう肝心なこずは最初に教えおくれなかったが、ものすごく楜しくお有意矩な寄り道だった。

    この蚘事が参加しおいる募集

    この蚘事が受賞したコンテスト

     
     
     
    広報の仕事をしおいる30代。䞀児の父です。 🏅「#AIずやっおみた」 Google gemini賞 こちらで小説も投皿しおたす。 https://note.com/modern_newt4514

    あなたぞのおすすめ