2025年における最も正確な音声テキスト変換 💥 Nvidia Parakeet Pythonチュートリアル 💥

AGIに仕事を奪われたい
この記事は約5分で読めます。

2,675 文字

The MOST Accurate Speech-to-Text in 2025 💥 Nvidia Parakeet Python Tutorial 💥
parakeet-tdt-0.6b-v2 is a 600-million-parameter automatic speech recognition (ASR) model designed for high-quality Engli...

これからGoogle Colab上でNvidia Parakeetの使い方を学びます。これは最高のASR(自動音声認識)モデルの一つです。このColabをコピーして、NVIDIA GPUを持っている場合はローカルマシンで実行することもできます。GPUがない場合は、Google Colabで無料で実行できます。まず最初にすべきことは、YouTubeの説明欄(いいねボタンの下)にこのGoogle Colabノートブックのリンクを載せておきますので、クリックして使い始めるだけです。
もしコードを理解して最初から始めたい場合は、この動画の残りの部分があなたのためのものです。新しいGoogle Colabノートブックを用意して、ランタイムの設定でT4 GPUを有効にしました。ご覧のように、「nvidia-smi」を実行すると、このくらいのGPUメモリ(グラフィックスメモリとも呼ばれる)があることが確認できます。
約15ギガバイトのグラフィックスメモリがあり、これを使って特定の計算を行います。GPUのセットアップが完了したら、NvidiaのNemoツールキットとASRをインストールします。「pip install –upgrade nemo_toolkit[asr]」を実行します。インストールには数分かかります。
インストールが成功したら、Google Colabでnumpyのエラー不一致があったので、numpyを強制的に再インストールしてセッションを再起動しました。ランタイムからセッションを再起動する必要がありました。問題がなければ、これを行う必要はありません。すべての準備が整ったら、GPUが有効化され、必要なライブラリがインストールされた状態で、あとはnemo.collectionsをインポートするだけです。
asr as nemo_asrと、nemo_asr.models.model.from_pretrainedから特定のモデルをインポートします。これはNvidia Parakeet T-DT 0.6 billion parameter model、つまり6億パラメータのV2モデルです。これをasr_modelというオブジェクトにインポートします。成功すると、センテンスピーストークナイザーについての情報など、このモデルを構成するすべての要素に関する情報が表示されます。
完了したら、入力ファイルを何らかの形式でダウンロードする必要があります。私はインターネットからランダムな入力ファイルをダウンロードしています。それをしたくない場合は、ここをクリックして独自の入力ファイルをアップロードすることもできます。
アップロードするか、どこからでもダウンロードして使用することができます。ダウンロードする最も簡単な方法の一つは、wgetを使用することです。「wget -O」を実行すると、特定のファイル形式のファイル名でこの場所からダウンロードします。これは大学のウェブサイトからのランダムな会話です。理解しやすいように再生してみます。
「クリスマスと新年について教えてください。あなたは何をしましたか?」
ご覧のように、最大音量でも音声が非常に微弱です。このモデルがどれだけうまく処理できるか確認したいと思います。これは5分24秒のクリップです。それでは、文字起こしを始めましょう。
まず、タイムスタンプなしで単純に文字起こしをしたい場合は、非常に簡単で、Pythonコードたった1行です。asr.transcribeを実行し、入力ファイルをPythonリストとして与えるだけです。引数としてPythonリストを送信します。開始括弧と閉じ括弧の間に、先ほど保存した音声クリップの入力ファイル名を入れ、数秒送信します。この場合、5分のクリップで5秒かかり、これ全体をダウンロードしました。
「クリスマスと新年について教えてください。あなたは何をしましたか?」そして、そこで利用可能な会話全体が正常に文字起こしされています。5分のクリップがT4 GPUで5秒というのは本当にエキサイティングです。
次はタイムスタンプ付きです。このモデルが本当に優れていることの一つは、タイムスタンプも付けられることです。字幕のようなものを作成できます。ここに少しコードがありますが、詳細には触れませんが、タイムスタンプをtrueに設定するパラメータを有効にし、そうするとすべての詳細がこのoutputというオブジェクトに入ります。
あとは単語、セグメント、文字を個別に取得し、これらすべてを反復処理すれば最終的な出力が得られます。「あなたは何をしましたか?クリスマスと新年について教えてください」というようなものが得られます。特定の会話を見てみましょう。
「えっと、Eについてはどうですか?たくさんのEがあります」
2分は120秒くらいです。ここで見ると、120秒で「学校で何をしているか教えてください。すみません?何をしていますか?主に仕事です」とあります。これがどこかにあるはずです。
「ほとんどの時間、家にいるだけです」。確認してみましょう。「ほとんどの時間、家にいるだけでした」。ここで「ほとんどの時間、家にいただけでした」と見えます。200秒くらい、つまり180秒は3分ですから、3分35秒くらいのところです。
おおよそ正確です。ここでは検証していませんが、すべての詳細がここにあるのがわかります。声が非常に微弱な会話なので、まだいくつかの間違いがあるかもしれませんが、かなり印象的です。
多くの人が前回の動画で質問したように、話者認識(ダイアライゼーション)は行いません。話者認識ができる別のモデルもありますが、高品質の英語文字起こしやASR(自動音声認識)、つまり音声からテキストへの変換が必要なら、このモデルはあなたに適しています。
必要なのは、どんな音声クリップでもここにアップロードし、特定のコードセット(提供したコード)を実行するだけで、文字起こしをしてくれます。
ローカルの音声テキスト変換システムまたは自動音声認識を実行する方法を学ぶ機会が得られたと思います。ローカルのNVIDIA GPUがない場合は、Google Colabで直接実行するか、NVIDIA GPUがある場合は、これをノートブックまたはPythonファイルとしてダウンロードして、関連するファイルを変更して実行するだけです。これについてどう思うか教えてください。ハッピープロンプティング!

コメント

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