メインコンテンツへスキップ
見出し画像

Gemini 1.5 Proで文字起こしを試してみた

    にょす

    Gemini 1.5 Proが音声ファイルにも対応したということで、Whisper大好きマンとして、どれほどのものなのかを簡単に調査したいと思います。

    Gemini 1.5 Pro on #VertexAI also supports processing audio inputs - including music, speech, and even the audio portion of videos. 🎵

    This means it can give high-quality transcriptions or be used to search & analyze multimodal content. → https://t.co/CLMN3wNmeP #GoogleCloudNext pic.twitter.com/kEy2vSVpK0

    — Google DeepMind (@GoogleDeepMind) April 9, 2024



    利用の仕方

    Vertex AIから利用ができました。Google AI Studioからも利用できるようです。詳細はこちら。

    画像
    Vertex AI Multimodalより、gemini-1.5-pro-preview-0409を利用

    また今回検証する音声は以下のエネルギーに関する部分を利用します。


    さっそく文字起こしを試してみる

    プロンプトによって出力結果に大きく影響がする感じがあります。まずは捻りのない感じでストレートなプロンプトで文字起こしをしてみます。

    画像
    Vertex AIでプロンプト入力してる図

    音声データの文字起こし (日本語)

    00:00 - 00:16

    対談者は、日本のエネルギー問題と持続可能な社会、産業育成について質問しています。具体的には、地熱、風力など様々なエネルギー源がある中で、どのように解決策を見出すべきか問いかけています。

    00:17 - 01:12

    もう一人の対談者は、エネルギー問題の深刻さを指摘し、過去の戦争を引き合いに出しています。また、輸入に頼らない社会の構築の重要性と、それに伴う治安悪化や戦争のリスクについて言及しています。そして、エネルギー問題に対する不安と、経済活動を維持しながらの解決の難しさを語っています。

    01:13 - 01:38

    対談者は、解決策の一つとして「蓄電力」を挙げ、日本が海洋面積で世界6位であるという特殊な国土状況を説明しています。

    01:39 - 02:52

    対談者は、風力発電の巨大な風車を例に挙げ、維持管理の難しさを指摘しています。また、オランダのアムステルダム沖に設置された巨大な風力発電施設の事例を紹介し、その規模の大きさと景観への影響について言及しています。

    02:53 - 03:01

    対談者は、風力発電のような再生可能エネルギーの重要性を強調し、次世代への資源を残すことの必要性を訴えています。

    出力結果

    内容が要約された感じですね。一般的な要約とは異なり、一定の区間ごとに意味を要約してくれています。

    ただ私のイメージしていた文字起こしは、発言内容をそのまま文字に起こすアウトプットでした。プロンプトを少し変えて期待するアウトプットに近づけてみます!


    発言内容をそのまま文字起こしさせる

    発言内容はそのままという旨&出力形式をプロンプトで指定してみました。

    画像
    発言内容はそのままという旨&出力形式を指定しました

    音声データ文字起こし結果

    00:03 - 00:15: エネルギーのところやっぱお伺いしたいなと思って。日本にもチャンスがすごくあると思ってて、まあ地熱発電とか、風力とか色々あると思うんですけど、エネルギーってどういう風に解決していけば日本はサステイナブルになってもしくはいい産業を埋めれるんですかね?エネルギーのところ。

    00:15 - 00:21: エネルギーですか?はい。 まあ、エネルギーのせいで前の戦争も起きたわけで。まあ、エネルギーの深刻さは計り知れない。 ね、この国のネックですよね。

    00:28 - 00:40: で、地球全体と言う事を1回無視して日本だけの話をするれば 輸入産品に依存しない社会になった方がいいに決まってる。 そんな事やってるから治安が悪くなると言うか戦争が起きたりするんで、 まあ、やんなきゃいいとは思うけど、まあ、でもいつ起きるかわかんない。 最大の不安でもあるわけですよね。

    00:51 - 01:00: なんちゅうか、経動脈を握られてるようなところがある我々は。 こう言う事をずっとやってくださいって言うと なんか10秒ぐらいで こうなるわけですよ。だけど

    01:01 - 01:09: これ致命的なところにある。ここを自力で操作出来ない社会は あんま正しいとは思えないですね。 そうですね。 ええ。普通に考えると。

    01:14 - 01:17: なので、えっと、ここはなんか解決すべきだと思います。 で、解決の方策っちゅうことに関して言えば あんま実は冷静に考えると難しくない気は実はしてる 本当は。 うーん。 ええ。

    01:29 - 01:38: まあ、あの 1つは、あの ま、ソーラーっちゅうよりですね えー、蓄積力 だと思います。 ええ あの、日本は、あの 地球の経済支配海洋面積で世界6位ぐらいだと思うんです。たまたま特殊な国家なんで

    01:51 - 02:07: で、えっと 風力発電 ってあるじゃないですか? はい はい。 これ回ってるやつ。 うん。 あれって 巨大ですよね。今最新モデル200とか240m とかあるんですけど、バケモンなんですよ。 エヴァンゲリオンこのぐらいですからね ああ、そうか。 これエヴァの3倍とかあるんですよ。 そう考えるとでかいっすね バケモンなんですよ。

    02:15 - 02:23: こんなもんを回さないと 維持出来ない なんか、 なんかあんま良くなくないですか?これ 良くないですね。 ええ。

    02:24 - 02:37: で、オランダって このアムステルダムのところとか大きいのにこう40kmぐらいの巨大堤防を20年ぐらいかけて引いて ここの中を全部真水の湖にして あのうなぎの養殖とかやってるんだけど、ここアムステルダムですね。 うーん。

    02:39 - 02:52: で、ここに山の様にこれ建ってんですよ。 へええ。 見るびっくりしますよ。もう 巨大な十字架が並んで みたいなの。 へええ。 全然美しくないんです。 うーん。

    02:53 - 03:01: で、なんでこんなものが建つのかっちゅうと 結局こういう流体のエネルギーっちゅうのは 次の四季で変わるから ピーピー

    ちなみに文字起こしが途中で切れているのは元データが3分で区切っているため

    そうそう!よくみる文字起こしはこんな感じですね!Whisperと違って、プロンプト指示だけでタイムスタンプも紐付けられるのは良いですね。

    安宅さんの「なんちゅうか」みたいな独特の言い回しもちゃんと再現されています笑

    ただよくよくみてみると、発言区間の中には二人の話者の発言内容が含まれていたりします。議事録として利用したいときは、誰が発言したのかを把握したいニーズもあると思うので話者分離をしたいところ。

    実際にできるのか試してみました!


    話者分離をした文字起こし

    「発言者を分離すること」という指示を加えています。

    画像
    Vertex AIにて

    文字起こし結果

    話者1(00:03 - 00:15): エネルギーのところやっぱお伺いしたいなと思って、日本にもチャンスがすごくあると思ってて、ま、地熱発電とか、風力とか色々あると思うんですけど、エネルギーってどういう風に解決してけば日本はサステナブルになってもしくはいい産業を埋めれるんですかね?エネルギーのところ

    話者2(00:15 - 01:09): エネルギーですか?はい。

    ま、エネルギーのせいで前の戦争も起きたわけで、まあ、エネルギーの深刻さは計り知れない。ね、この国のネックですよね。で、地球全体ということを1回無視して日本だけの話をすれば、輸入産品に依存しない社会になった方がいいに決まってる。うん。そんなことやってるから治安が悪くなると いうか戦争が起きたりするんで、ま、やんないとは思うけど、ま、でもいつ起きるかわかんない。最大の不安でもあるわけですよね。 なんちゅうか、経動脈を抑えられてるようなところがある我々は。こういうことをずっとやってくださいって言うと、なんか10秒ぐらいでこうなるわけ ですけど、こう、脆い的なところにある。ここを自力で操作できない社会はあんま正しいとは思えないですね。 そうですね。普通に考えると。

    話者1(01:09 - 01:14): ええ。

    話者2(01:14 - 01:52): なので、えっと、ここはなんか解決すべきだと思います。で、解決の方策っちゅうことに関して言えば、あんまり実は冷静に考えると難しくない気は実はしてる本当は。うん。ま、あの 1つは、あの、ソーラーっちゅうよりですね、えー、超蓄電力 うん。だと思います。 ええ、あの、日本は、あの、地球の経済支配海洋面積で世界6位ぐらいだと思うんです。たまたま特殊な国家なんで。 で、えっと、風力発電ってあるじゃないですか? はい。

    話者1(01:53 - 01:54): はい。

    話者2(01:54 - 02:52): これ回ってるやつ。 うん。 あれって巨大ですよね。今最新モデル200とか240mとかあるんですけど、バケモンなんですよ。エヴァンゲリオンこのぐらいですからね。 ああ。 これエヴァの3倍とかあるんですよ。そうか、あれでかいっすね。 バケモンなんですよ。こんなもんを回さないと維持できない 何か、 何かあんま良くなくないですか?これ。 良くないですね。ええ。

    で、オランダってこのアムステルダムのところとか大きいのに、こう40kmぐらいの巨大堤防を20kmに引いて、ここの中を全部真水の湖にして、 あのウナギの養殖とかやってんだけど、ここアムステルダムですね。 うん。 で、ここに山のよう にこれ建ってんですよ。 うーん。 見るとびっくりしますよ。もう巨大な十字架が並んで るみたい な。 ああ。 へええ。 全然美しくないんです。 うーん。 で、なんでこんなものが建つのかっつうと、結局こういう流体のエネルギーっちゅうのは、次の瞬間には洗い流さ れるから

    出力結果

    指示は雑だったのですが、割とちゃんと言うこと聞いてくれました笑

    最初の話者1が佐々木さんで、話者2が安宅さんと言う話者の一貫性も保たれているようです(今回の音声データは3分なので、もっと長くなったら分からないです)


    様々な出力形式を試す

    文字起こししたコンテンツを、例えば字幕で利用したいとなった場合はsrt形式が良かったりすると思います。またプログラムで処理しやすいようにjson形式ニーズもありますね!それをGemini 1.5 proでも再現できるのかについて試していきます。

    srt形式

    画像
    Vertex AIにて

    ## 音声データ文字起こし (srt形式)

    ```srt
    1
    00:00:00,000 --> 00:00:03,000
    エネルギー

    2
    00:00:03,000 --> 00:00:05,000
    エネルギーのところ、やっぱ伺いたいなと思ってるんですけど

    3
    00:00:05,000 --> 00:00:07,000
    日本にもチャンスがすごくあるなと思ってて、ま、地熱発電とか

    4
    00:00:07,000 --> 00:00:09,000
    風力とか色々あると思うんですけど、エネルギー

    5
    00:00:09,000 --> 00:00:12,000
    どういう風に解決してけば日本はサステナブルに

    6
    00:00:12,000 --> 00:00:15,000
    なって、もしくは良い産業を産めるんですかね、エネルギーのところ

    7
    00:00:15,000 --> 00:00:16,000
    エネルギーですか?

    8
    00:00:16,000 --> 00:00:17,000
    はい

    9
    00:00:17,000 --> 00:00:20,000
    ま、エネルギーのせいで前の戦争も起きたわけで

    10
    00:00:20,000 --> 00:00:21,000
    そうですね

    11
    00:00:21,000 --> 00:00:26,000
    まあ、エネルギーの深刻さは計り知れない。この国のネックですよね

    12
    00:00:26,000 --> 00:00:33,000
    で、地球全体ということを1回無視して日本だけの話をすれば、輸入産品に依存しない社会になった方がいいに決まってる

    13
    00:00:33,000 --> 00:00:44,000
    そんなことやってるから治安が悪くなると言うか戦争が起きたりするんで、ま、やんないとは思うけど、ま、でもいつ起きるか分かんない。最大の不安でもあるわけですよね

    14
    00:00:44,000 --> 00:00:54,000
    なんちゅうか、経動脈を抑えられてるようなところがある我々は。こういうことをずっとやってくださいって言うと、なんか10秒ぐらいでこうなるわけですよ

    15
    00:00:54,000 --> 00:01:08,000
    けれども、ここにジレンマがある。ここを自力で操作できない社会はあんま正しいとは思えないですね。普通に考えると

    16
    00:01:08,000 --> 00:01:16,000
    そうなんですね。えぇ。なので、えっと、ここはなんか解決すべきだと思います。で、解決の方策っちゅうことに関して言えば

    17
    00:01:16,000 --> 00:01:27,000
    あんまし、実は冷静に考えると難しくない気は実はしてる。本当は。うーん

    18
    00:01:27,000 --> 00:01:34,000
    ま、あの、1つは、あの、ソーラーっちゅうよりですね、えー、蓄電力だと思います

    19
    00:01:34,000 --> 00:01:50,000
    あの、日本は、あの、地球の経済支配海洋面積で世界6位ぐらいだと思うんです。たまたま特別な国家なんで

    20
    00:01:50,000 --> 00:01:54,000
    で、えっと、風力発電ってあるじゃないですか?はい

    21
    00:01:54,000 --> 00:01:57,000
    これ、これ回ってるやつ

    22
    00:01:57,000 --> 00:02:05,000
    あれって巨大ですよね。今、最新モデル200とか240メートルとかあるんですけど、バケモンなんですよ。エヴァンゲリオンこのぐらいですからね

    23
    00:02:05,000 --> 00:02:13,000
    ああ、そうか、これエヴァの3倍とかあるんですね。バケモンなんですよ

    24
    00:02:13,000 --> 00:02:19,000
    こんなもんを回さないと維持できない、なんか、なんかあんま良くなくないですか?これ

    25
    00:02:19,000 --> 00:02:23,000
    うん、良くないですね。えぇ

    26
    00:02:23,000 --> 00:02:37,000
    で、オランダって、このアムステルダムのところとか大きいのに、こう40キロぐらいの巨大堤防を2重に引いて、ここの中を全部真水の湖にして、あの、うなぎの養殖とかやってるんだけど、ここアムステルダムですね

    27
    00:02:37,000 --> 00:02:41,000
    ここに山のよう

    ```

    出力結果

    srt形式で出力できました!ただし実はこの出力を得るまでに何回かリトライをしており、安定性を得るためにはちゃんとしたプロンプトを書く必要がありそうです。


    json形式

    ここでは発言者、タイムスタンプ、発言内容がひとまとまりとなったjson形式での出力を試みようと思います。以下のようなイメージ。

    {
      "transcripts": [
        {
          "speaker": "Speaker 1",
          "start_time": "00:00:01.000",
          "end_time": "00:00:04.000",
          "content": "こんにちは、皆さん。"
        },
        {
          "speaker": "Speaker 2",
          "start_time": "00:00:05.000",
          "end_time": "00:00:07.000",
          "content": "音声認識技術についてお話しします。"
        },
        {
          "speaker": "Speaker 1",
          "start_time": "00:00:08.000",
          "end_time": "00:00:12.000",
          "content": "今日はその基本的な概念と応用例に焦点を当てていきます。"
        }
      ]
    }
    
    画像
    Vertex AIにて

    ```json
    {
    "transcripts": [
    {
    "speaker": "Speaker 1",
    "start_time": "00:03:00.000",
    "end_time": "00:04:00.000",
    "content": "エネルギーのところを、やっぱりお伺いしたいなと思って、日本にもチャンスがすごくあると思うんです、地熱発電とか、風力とか色々あると思うんですけど、エネルギーはどういう風に解決していけば、日本はサステイナブルになって、もしくは良い産業を埋められるんですかね、エネルギーのところ"
    },
    {
    "speaker": "Speaker 2",
    "start_time": "00:15:00.000",
    "end_time": "00:28:00.000",
    "content": "エネルギーですか。エネルギーのせいで、前の戦争も起きたわけなんで、まぁエネルギーの深刻さは計り知れない。この国のネックですよね。で、地球全体ということを1回無視して、日本だけの話をするならば、輸入産品に依存しない社会になった方がいいに決まってる。そんなことやってるから治安が悪くなると言うか、戦争が起きたりするんで、ま、やんないとは思うけど、ま、でもいつ起きるかわかんない。最大の不安でもあるわけです。なんちゅうか、経度百%を抑えられてるようなところがある、我々は。こういうことをずっとやってくださいって言うと、なんか10秒ぐらいでこうなるわけですけど、こう、致命的なところにある。ここを自力で操作できない社会は、あんま正しいとは思えないですね。普通に考えると。なので、えっと、ここは何か解決すべきだと思います。で、解決の方策っちゅうことに関して言えば、あんまり、実は冷静に考えると難しくない気は実はしてる、本当は。"
    },
    {
    "speaker": "Speaker 2",
    "start_time": "01:29:00.000",
    "end_time": "01:38:00.000",
    "content": "ま、あの、1つは、あの、ソーラーっちゅうよりですね、えー、潮汐力だと思います。あの、日本は、あの、地球の経済支配海洋面積で世界6位ぐらいだと思うんです。たまたま、特殊な国家なんで。で、えっと、風力発電ってあるじゃないですか。"
    },
    {
    "speaker": "Speaker 1",
    "start_time": "01:54:00.000",
    "end_time": "01:54:00.000",
    "content": "はい。"
    },
    {
    "speaker": "Speaker 2",
    "start_time": "01:55:00.000",
    "end_time": "02:13:00.000",
    "content": "これ、これ回ってるやつ。あれって、巨大ですよね。今、最新モデル200とか240mとかあるんですけど、化けもんなんですよ。エヴァンゲリオンがこのぐらいですからね。これ、エヴァの3倍とかあるんですよ。そうか、あれでかいですね。化けもんなんですよ。こんなもんを回さないと、維持できない、なんか、なんかあんま良くなくないですか、これ?"
    },
    {
    "speaker": "Speaker 1",
    "start_time": "02:22:00.000",
    "end_time": "02:22:00.000",
    "content": "良くないですね。"
    },
    {
    "speaker": "Speaker 2",
    "start_time": "02:23:00.000",
    "end_time": "02:52:00.000",
    "content": "ええ。で、オランダって、このアムステルダムのところとか大きいのに、こう40kmぐらいの巨大堤防を2重に引いて、ここの中を全部真水の湖にして、あのうなぎの養殖とかやってるんだけど、ここアムステルダムですね。ここに、山のようにこれ建ってんですよ。へえー。見るとびっくりしますよ。もう巨大な十字架が並んでるとか。全然美しくないんです。で、なんでこんなもんが建つのかって言うと、結局こういう流体のエネルギーっちゅうのは、次の四季で荒波が来るから。"
    }
    ]
    }
    ```

    出力結果

    いい感じにできました!


    おわりに

    個人的な感想としては、Whisperレベル(あるいはそれ以上?)の文字起こし品質と論文ではありましたが、確かにそうかも!と言う感じでした。

    またWhisperとは異なり、プロンプトレベルで様々な文字起こしタスクに柔軟に対応できる点で、結構面白さを感じてます。

    一方でWhisperと比較して、以下は気になるところです。

    • コスト感がおそらくGemini 1.5 Proを利用した場合の方が高いんじゃないか?

      • 現在はGemini 1.5 Proは無料期間っぽい?ですが、おそらくテスト期間が終わったらGemini 1.5 Proの方が高くなるんじゃないかなーと思ってます。実際はどうなのか分からないですが

    • 処理時間が割とかかる

      • Whisperと比較して処理時間が長い印象です。ちゃんと検証はできていないので、どこかで試してみようと思います(もし検証した方いたら教えてください!)

    • 出力結果の安定性が怪しい

      • 良くも悪くもプロンプトで柔軟に出力結果を操作できるので、メリットはあれど、不安定さを感じました


    とはいえ、今後の応用可能性はかなりあるんじゃないでしょうか!引き続きいろいろと模索してみたいと思います!

     
     
     
    にょすです。時間無制限で、無料で文字起こし放題なアプリ「無限もじおこし」を運営してます。

    あなたへのおすすめ