私は毎日何千もの単語を入力します。電子メール、文書、当社のアプリケーションのメッセージ、コードコメント(それほどではありません) 私の手は時々痛みますが、実際にはありませんが、私は書き込み中に自分のスクリーンに話しかけているように、私の脳が独裁したいが、私の指はそれを許さないように、毎日自分自身を捕まえ続けます。それで私は明らかなツールを試しました。 Windows Speech Recognitionは私のドイツ語を虐殺しました。Google Docsの音声の入力は大丈夫でしたが、ブラウザを開く必要があり、私が言ったすべての言葉はGoogleのサーバーに直接行きました。商業的な独裁ソフトウェアは、私のGPUが現地で処理すべき何かのための月間サブスクリプションを望んでいました。OpenAI ボタンを押して話し、テキストがそこに表示され、私が使用しているウィンドウに表示されます. ブラウザのタブなし、アカウントなし、APIキーなし. 僕の声だけ、GPUとテキストカーソルしか見つかりませんでした。 It is called (https://github.com/TryoTrix/whisper-type), あなたのNVIDIA GPUをローカルな独裁エンジンに変換する単一のPythonファイルです。 スピーカータイプ Whisper タイプを使用するには、CTRL + ALT + D を押して話し、使用しているアプリにテキストが表示されます。 私はあまり動かないので、CTRL+ALT+Dを私のRazerマウスのハイパーシフトキー+マウススクロールクリックに設定しました。 2026年の声の独裁の問題 音声認識は信じられないほど良くなりました。 Whisper large-v3は、ほぼ人間の正確さでアクセント、バックグラウンド音楽、混合言語の入力に対処することができます。テクノロジーはそこにあります。しかし、配信モデルは2015年に閉じ込められています。ほぼすべての独裁ツールは、クラウドで実行されます(誰かのサーバーにオーディオを送信します)、特定のアプリケーションにあなたをロックします、または繰り返し料金がかかります。それと同時に、2022年からの中間レベルのGPUは、10xリアルタイムでスピーチを転写することができます。あなたのデスクに座っているハードウェアは、より多くの能力を持っています。 ソフトウェアだけは捕らえていません。 プライバシー What Whisper Type Does あなたは「CTRL+ALT+D」を押します。画面の上部に薄い赤いバーが点灯し、アニメーションされたボールが表示されますので、録画がアクティブであることがわかります。あなたは話します。あなたは再びホットキーを押します。半秒後に、転写されたテキストがあなたが作業しているウィンドウに挿入されます。 キャップの下では、5つのことが起こります: 1. Audio capture via `sounddevice` records to a NumPy array at 16kHz. No WAV file hits the disk. 16kHzでNumPyアレイに録音する。 2. Whisper large-v3 は、「float16」の精度であなたの GPU で「faster-whisper」 (CTranslate2 バックエンド) を通して実行されます。 3.VADフィルタリング(Silero Voice Activity Detection)は沈黙を省き、Whisperは実際のスピーチのセグメントのみを処理します。 Post-processing replaces spoken punctuation ("question mark" becomes `?`) and filters known hallucinations. 後処理は、話した点数を置き換える(「質問マーク」は `?`)と、知られている幻覚をフィルターする。 Clipboard paste は、アプリが焦点を当てているものにテキストを注入します。 1つのPythonファイル、約600行。 技術的決定 なぜOpenAIのオリジナルよりも速いのか OpenAIのリファレンス Whisperの実装は、独裁に遅すぎます。あなたは一文を言い、数秒待って、その結果を得ます。その遅延はワークフローを殺します。より速いwhisperはCTranslate2を使用し、モデルを最適化された推論形式に変換します。同じ重量、同じ精度ですが、同じハードウェアで4倍速です。 以下は、私のRTX 4060で測定したもの: What I Said Audio Length Transcription Time Speed A few words 2-4s ~0.5s 4-6x real time One or two sentences 4-10s ~1s 5-10x real time A full paragraph ~55s ~5s 11x real time A long monologue 73s 7.7s 9.5x real time いくつかの言葉 2~4S ~0.5s 4 x リアルタイム 1~2つの句 4~10S 1S 5~10xリアルタイム 完全な段落 【55S】 5S 11x リアルタイム 長いモノロジー 73S 7.7S 9.5x リアルタイム 典型的な命令(一文または二文)の場合、手をキーボードに戻す前にトランスクリプションが終了します。 コンピュータタイプ、 正確性、そして So Whisper does not waste cycles on silence. というわけで、Whisper is not wasting cycles on silence. `float16` `beam_size=5` `vad_filter=True` The no_speech_prob Trap(ノー・スピーチ・トラップ) こちらは午後1時間で費用がかかりました。 スピリチュアル A 各トランスクリプトセグメントの値 — セグメントに実際にスピーチが含まれているかどうかの信頼度スコア。 十分に合理的に聞こえる。 no_speech_prob 0.6 ドイツを除いて、この信頼のスコアは完全に破られた。 I had clear, loud, well-articulated sentences getting flagged as わたしは、明確で、大声で、よく結論づけられた文を持っていた。 : “no speech” with 97% confidence SKIP (no_speech=0.97): Yeah, das sieht cool aus. SKIP (no_speech=0.97): Die Animation beim Mikrofon klappt auch super. SKIP (no_speech=0.97): Ich werde nun die lange Sprachnachricht probieren. 9つのセグメントのうち8つは静かに投げ捨てられていた。 私はデバッグログを有効にし、出力が疑わしく短かったことに気付いたためだけにそれを捕らえました. 修正は `no_speech_prob` フィルタリングを完全に無効にし、沈黙検出のための Silero VAD に頼ることでした. VAD はモデルの信頼性ではなく、原始のオーディオ波形態を分析し、実際には言語に関係なく動作します。 英語以外の言語で Whisper を使用して何かを構築している場合: 代わりにVADを使います。 do not trust `no_speech_prob`. 幻覚フィルター Whisper が VAD を通り過ぎる静けさや環境の騒音を受けると、時には幻覚を起こすこともあります。 古典的なもの: "Thanks for watching!", "Subscribe to my channel", "Untertitel von..." (ドイツ語で「Subtitles by...") ) です。 これはよく知られているモデル行動であり、あなたのメール プロジェクトにファントム テキストが表示されるときにひどいです。 解決策は簡単なブロックリストです。 pythonHALLUCINATION_PHRASES = [ "Untertitel von", "Untertitelung", "Copyright", "Abonniere", # ... more patterns] すべてのトランスクリプションは、挿入する前にこのリストに対してチェックされます. エレガントではなく、効果的です. リストは、私が野生の新しい幻覚に遭遇するにつれて、時間とともに成長します。 レコーディング Overlay マイクが熱いときには間違いのないビジュアルなフィードバックが欲しかった. 緑から赤に色を変えるシステムトレーイアイコンは、見逃しがたいほど簡単ではなかった。 したがって、表面には2つの部分があります:すべての接続されたモニターのトップエッジを越えた薄い赤いバーと、電気プラズマリングを備えたアニメーションされたマイクロフォンオーバー。 リングは、2Dピクセルの移動を使用して「fe DisplacementMap」効果をシミュレートします。 内側のコアがホワイトホットに衝動し、外側のリングが独自の騒音フィールドで軌道を回るダブルリングシステムがあります。 すべての90のアニメーションフレームはスタート時に、モデルロードと並行してプレレイアウトされます。レコーディング中に、それは単にプレコンピュータされた画像をフリップします。 独裁ツールにプラズマ効果は絶対に必要だったのか? いいえ、しかし、それは私を幸せにしてくれます。 Getting Started あなたが必要: Windows 10 または 11 CUDA サポートを備えた NVIDIA GPU (RTX 4060 でテストされ、RTX 3060+ で動作する必要があります) パイソン 3.12+ - モデル用の約3GBのディスクスペース(一度のダウンロード) bashgit clone https://github.com/TryoTrix/whisper-type.gitcd whisper-typeinstall.bat インストーラはあなたのシステムをチェックし、依存性をインストールし、Whisper large-v3をダウンロードし、自動起動ショートカットを作成し、ツールを起動します。その後、それはすべてのWindowsログインで自動的に起動します。 3 私が学んだこと 「AIモデルが動作する」と「AIツールが使える」の間のギャップは巨大です。オーディオを転写するためにWhisperを取得するには1時間かかりました。全体をネイティブOS機能、即時ホットキー応答、トレーイアイコン、ビジュアルオーバーレイヤー、自動起動、エラー回復、単一インスタンスムテックスのように感じるようにするには数週間かかりました。転写はコードのたぶん10%です。残りの90%はあなたのワークフローに消えてしまいます。 ローカルAIは実際の作業のために本当に準備ができています。 2022 年から 300 ドルの GPU は Whisper large-v3 をリアルタイムよりも速く実行し、クラウド API に匹敵する精度を持っています。ローカルAI へのラウンドツアーはミリ秒で測定されます。クラウド API 呼び出しはネットワーク遅延、潜在的なダウンタイム、そしてバックグラウンドで動作するメーターを追加します。あなたが即時応答とプロセスに敏感なテキストを必要とするタスクのために、ローカルは厳しく優れています。単一ファイルツールが使用され、複数のファイルプロジェクトが放棄されます。 Whisper Type は 1 つの Python ファイルです。構成なし、プロジェクト構 制限 Windows のみ: ホットキー、クリップボードの統合、トライアイコン、およびオーバーレイはすべて Windows API を使用します. The Whisper engine is cross-platform, so a Linux port is possible but would need a new integration layer. NVIDIA GPU が必要です. AMD なし, Intel なし, Apple Silicon なし. CUDA は硬い依存症です。 リアルタイムのストリーミングはありません. You record a chunk, then it transcribes. For most diction, this feels instant (under a second for a sentence), but it's not continuous streaming. あなたは片隅を録音し、その後トランスクリップします。 Whisperにはモデルクィークがあります。 数字は時々「140」がドイツ語で「140,000」になるように、不一致にフォーマットされます。 これらはアップストリームモデルの問題であり、後処理で修正できないものです。 次は何? Whisper Type は、日常的に数週間使っていますが、慣れてから働く方法を変えるツールの1つです。 私が次に構築したいものがあります: Linux ポート (Whisper エンジンは準備ができています、作業が必要なOS 統合)、オーディオ反応型ビジュアル (インフラストラクチャはすでにそこにあり、 `audio_level` は追跡されていますが、まだアニメーションにワイヤレスではありません)、およびたぶんターミナルコマンドに直接指令をパイプする方法です。 建てられた スイスでウェブツールとAI駆動の生産性ソフトウェアを構築しています。 ダニエル・ゲッチャー