文字起こしの外国語を直す方法(2026年版ガイド)
外国語多言語文字起こし修正

文字起こしの外国語を直す方法(2026年版ガイド)

BMMamane B. MoussaMay 26, 2026Updated July 2, 20262 min read

Summarize this article with:

TL;DR

文字起こしモデルが英語に設定されていると、外来語は英語の音として音声的に書き出されてしまいます。解決策は、その語がどれだけ予測可能かで変わります。一般的な借用語にはWhisperベースのツールで一度の処理で精度を出し、分野固有の用語にはキータームプロンプティング(Deepgram Nova-3)やプロンプトによるプライミング(OpenAI Whisper API、AssemblyAI Universal-3 Pro)、ツールがどうしても間違え続ける繰り返しフレーズには置換リストを使います。発話の10%超が別言語であるコンテンツは、外国語の借用語ではなくコードスイッチングとして扱います。

問題の診断は一文で済みます。文字起こしツールには英語を聞き取るよう指示されていたため、「schadenfreude」が「shadow in frood」、「croissant」が「crossant」と綴られていたのです。 必要な修正は、それらの外国語が予測可能かどうかによって変わります。

英語モードのツールが外国語を台無しにする理由

文字起こしモデルが単一言語向けに設定されていると、入力されるすべての音をその言語の音素インベントリの中で最も近い候補にマッピングします。外国語はそのインベントリの外側にあります。モデルは最も音の近い英語の文字列を選んで先へ進むのです。

これは、話者が文全体にわたって言語を切り替える完全なコードスイッチングとは異なります。ほぼ英語の文字起こしに現れる外国語は孤立した借用語です。フランス語のフレーズ、ドイツ語の複合名詞、日本語の料理用語など。モデルは英語に設定されているため、外国語の音素を英語の文字で書き出します。

朗報です。約68万時間、99言語に及ぶ多言語音声で学習されたWhisper Large-v3は、追加設定なしの初回パスで一般的な借用語を認識します。「Bonjour」「schadenfreude」「croissant」「anime」「karaoke」は通常、正しく出力されます。失敗が集中するのは、あまり一般的でない用語、固有名詞、地方の地名です。

修正1:多言語学習済みツールを選ぶ

最もレバレッジの高い変更は、Whisper Large-v3を基盤としたツールへの移行です。モデルは多言語の学習データの中で外国語を見てきているため、音からの当てずっぽうではなく正しい綴りを知っています。

  • Whisperベースのツール(ConvertAudioToTextの音声文字起こしツール、OpenAI Whisper API、セルフホストのWhisperなど):英語音声に含まれる一般的な外国語借用語は通常、そのまま残ります。「Düsseldorf」はウムラウト付きで出力され、「je ne sais quoi」は音声的な英語ではなくフランス語として出力されます。
  • 英語のみモードのDeepgram Nova-3:より厳格な単一言語モデリングを適用するため、追加設定なしでは外国語の借用語の結果が悪くなります(下記の修正3を参照)。
  • ブラウザのWeb Speech APIツール:設計上、セッションごとに1言語です。外国語はひどく崩れ、セッション言語を完全に切り替える以外に上書きする手段がありません。
  • 旧Google Cloud STT v1:多言語対応が限定的で、フレーズセットを持つv2に取って代わられました。

ConvertAudioToText 音声アップロードツール
ConvertAudioToText 音声アップロードツール

音声アップロードツールはWhisperベースのパイプラインで動作し、追加設定なしで英語文字起こし内の一般的な外国語借用語を処理できます。

修正2:繰り返し現れる外国語には置換リストを使う

仕事全体で繰り返し現れる外国語については、使用中のツールに関係なく、置換リストが最も確実な解決策です。

新しいトピックの最初の文字起こしを終えたら、リストを作成します:

bone jure        → bonjour
say la vee       → c'est la vie
jaw da veever    → joie de vivre
shadow in frood  → schadenfreude
doosseldorf      → Düsseldorf
moon ick         → Munich

リストの価値は複利のように積み上がります。料理系ポッドキャストを十数エピソード文字起こしすれば、繰り返し登場するフランス料理用語、イタリア料理の調理名、日本料理の料理名をカバーできます。そのシリーズの各文字起こしの最後に、一括置換のステップとしてリストを適用しましょう。

この手法が特に有効なのは:

  • 特定の外国料理、地名、表現に定期的に触れるポッドキャスト
  • 海外のオフィスやパートナーを名前で言及するビジネスミーティング
  • ラテン語(医学・法学)、ドイツ語(哲学)、イタリア語(音楽)に依拠する学術コンテンツ

修正3:キータームプロンプティングと語彙リスト

複数の文字起こしAPIでは、音声を処理する前に想定用語を渡せます。これは後処理よりも強力です。モデルがランダムな音の近似ではなく、特定の綴りを出力するよう事前に仕込めるからです。

Deepgram Nova-3のキータームプロンプティング(Deepgramのドキュメントで確認、2026年7月時点):1リクエストあたり最大500トークン(約100語)を渡せます。この機能は単一言語版・多言語版どちらのNova-3モデルでも使えます。海外ゲストの出演する英語ポッドキャストの語彙リストは、たとえば次のようになります:

bonjour, croissant, déjà vu, faux pas, je ne sais quoi,
schadenfreude, zeitgeist, wanderlust, kindergarten,
karaoke, ramen, sayonara, piñata, tortilla

Deepgramによれば、キータームプロンプティングにより、リスト登録した用語のキーワード再現率を最大90%向上できると報告されています。

OpenAI Whisper APIのpromptパラメータ:省略可能なpromptフィールドに、想定される外国語と固有名詞を渡します。モデルはプロンプトの末尾224トークンを考慮します。30〜50個程度の外国語なら十分な量です。より大きなリストの場合は、OpenAIのドキュメントが完成した文字起こしに対するGPT-4による後処理パスを推奨しています。

AssemblyAI Universal-3 Pro:このモデルはデフォルトで、音声の支配的な言語で文字起こしします。英語の音声にフランス語のフレーズが含まれていても、プロンプトを与えないと英語に翻訳してしまうことがあります。明示的な指示を渡しましょう。「話されたとおりの元の言語と文字を保持すること。コードスイッチングや混合言語のフレーズを含む。」AssemblyAIのプロンプトエンジニアリングのドキュメントによれば、具体性が重要です。指示が明示的であるほど、モデルが独自に解釈する余地は減ります。

Google Cloud STT v2:フレーズセットでは、ブーストスコアを付けた重み付きリストとして想定語を渡せます。ブースト値が高いほど、リスト内のフレーズに一致する確率が上がります。ただしドキュメントには、非常に高いブースト値は偽陽性を増やしうるとあるため、外国語の固有名詞には中程度の値が最適です。

修正4:参考文献を使った手動修正

予測できない外国語(ゲストがマニアックな地名、郷土料理、方言特有の表現に言及する場合など)には、手動での修正パスが実用的な選択肢です。

手順は次のとおりです。文脈の中でその外国語を聞き、Wikipedia、Google翻訳、またはその言語専用の辞書で正しい綴りを調べ、崩れたテキストを差し替えます。一般的なケースでは1語あたり約30秒です。予測不能な外国語の言及が多い音声では時間はかかりますが正確です。ほぼ英語の文字起こしに時折現れる誤変換であれば、これが正しい判断です。

言語族別の傾向

失敗のパターンはかなり予測可能なので、事前に対策できます。

ロマンス諸語(フランス語、スペイン語、イタリア語、ポルトガル語)

崩れ方は音声的に体系的です。「Bonjour」は「bone jure」に、「gracias」は「graceous」に、「pasta carbonara」は「pasta carbon era」になります。音自体は英語に存在するので、モデルは間違った英単語を選ぶだけです。録音をまたいで誤りが一貫しているため、置換リストでうまくカバーできます。

ドイツ語

ウムラウト(a-ウムラウト、o-ウムラウト、u-ウムラウト)が主な失敗ポイントです。「Düsseldorf」はウムラウトを失うか「doosseldorf」になります。複合名詞が別々の単語に分割されることもあります。正しいUnicodeの綴りをカスタム語彙や置換リストに追加しましょう。

日本語

英語で高頻度の借用語(sushi、ramen、anime、manga、karaoke、sayonara)はWhisperの学習データに大量に現れるため、通常は正しく出力されます。あまり一般的でない日本語の用語、具体的な地域の地名、定番以外の料理名は崩れやすくなります。この層はカスタム語彙で対応します。

中国語

複数のローマ字表記体系(拼音とウェード式)があるため、同じ語に複数の正しい綴りが存在します。「Beijing」や「Shanghai」はどこでも使われているため問題ありませんが、「Chongqing」や「Xiao long bao」などは崩れやすくなります。拼音の綴りは現代の学習データでより一般的なので、語彙リストにはウェード式より拼音を使う方が安全です。

ヒンディー語と南アジアの言語

一般的な借用語(curry、masala、naan、samosa、biryani、dharma、karma)はWhisperベースのツールで確実に処理されます。専門的なサンスクリット用語や地域特有の語にはカスタム語彙が必要です。

アラビア語

高頻度の借用語(falafel、hummus、baklava)は問題なく出力されます。ローマ字化の仕方が異なる地名(Al JazeeraとAljazeera)は、出力が不安定になることがあります。好みのローマ字綴りを語彙リストに追加すれば、出力を固定できます。

ほぼ英語のコンテンツのための実践的なワークフロー

コンテンツが主に英語で、外国語への言及が時折ある場合は次の手順です:

  1. Whisperベースのツールで文字起こしします。一般的な借用語は初回パスで正しく出力されます。
  2. 崩れた文字列がないか文字起こしを流し読みします。崩れは特定の外国語の出典の周辺に集中しがちです。
  3. 繰り返し現れる崩れた用語を置換します。
  4. 正しい綴りをそのツールのキーターム/語彙リストに追加します。リストは同じプロジェクトの今後のすべての文字起こしに引き継がれます。
  5. 予測できない一回きりの用語は、参考文献を使って手動で処理します。

私の見立て:ここで最も効果の高い投資は語彙リストです。最初の文字起こしには最も多くの修正作業が発生しますが、5本目までには、ツールがその分野の外国語を自動的に正しい綴りで出力するようになっています。

外国語が濃密だったり予測できなかったりするコンテンツの場合は、その音声が「借用語を含む英語」ではなく、実際には多言語ではないかと自問してください。発話の約10%超が別の言語であれば、コードスイッチング修正の記事にある別の手法が当てはまります。セグメントごとの言語検出、多言語モード、話者分離(diarization)を考慮した言語タグ付けです。

事態を悪化させるツール

外国語の扱いが特に苦手なツールもあります:

  • ブラウザのWeb Speech API実装:セッションごとに1言語で厳格です。外国語はひどく崩れ、セッション言語を切り替える以外に修正手段がありません。
  • 積極的な言語検出を行うツール:外国語が多すぎると検出すると、文字起こし全体を外国語側に切り替えてしまい、英語の部分が壊れることがあります。Whisperベースのパイプラインでは稀ですが、一部のクラウドSTT実装ではよく見られます。
  • 英語の流暢さに最適化されたリアルタイム字幕ツール:バッチ型ツールは発話全体を処理するのに対し、ライブ字幕ツールは断片を処理するため、外国語の借用語の扱いで不利です。

混合言語の作業では、Whisperベースのパイプラインによるバッチ文字起こしが正しい出発点です。問題の外国語が特に固有名詞である場合は、この記事を固有名詞の誤文字起こし修正と併せて参照してください。

よくある質問

なぜ文字起こしツールはフランス語の単語を正しく綴らず、音に近い英語表記にしてしまうのですか?

ツールが単一言語(英語)向けに設定されている場合、すべての音をその言語の語彙の中で最も近いものにマッピングします。フランス語の音素には直接の英語相当物がないため、モデルは最も音の近い英語の文字列を出力します。Whisper Large-v3のような多言語で学習されたモデルに切り替えるか、Deepgram Nova-3でキータームプロンプティングを使えば、モデルが出力すべき正しい綴りを与えられます。

Deepgram Nova-3は、基本が英語の音声に含まれる外国語にも対応できますか?

標準の英語モードでは、Deepgram Nova-3は外国語の借用語を自動認識しません。解決策はNova-3のキータームプロンプティング機能です。リクエストごとに最大500トークン(約100語)の想定用語を渡すと、モデルはそれらの正確な綴りの認識を強化します。英語・スペイン語・フランス語・ドイツ語・ヒンディー語・ロシア語・ポルトガル語・日本語・イタリア語・オランダ語間のリアルタイムのコードスイッチングには、代わりにNova-3 Multilingualモードを使用してください。

OpenAI Whisper APIのpromptパラメータを外国語リストに使えますか?

はい。promptパラメータには、音声に含まれると予想される外国語や固有名詞のリストを渡せます。モデルはそれらの綴りに一致させようとします。実用上の上限は1リクエストあたり224トークンで、30〜50個程度の外国語なら十分です。より大きな語彙の場合は、WhisperのドキュメントがGPT-4による後処理パスの実行を推奨しています。

散発的な外国語はどこからコードスイッチングの領域に入るのでしょうか?

目安となる閾値があります。音声の10%超が主言語以外の言語であれば、そのファイルは「借用語を含む英語」ではなく多言語として扱います。この記事の外国語修正(置換リスト、カスタム語彙、プロンプトによるプライミング)は、孤立した借用語や定型句にはうまく機能します。持続的な多言語コンテンツには別のアプローチが必要で、コードスイッチング修正の記事で扱っています。

出典

Try transcription free

Convert any audio or video to clean, unwatermarked text — speaker labels, timestamps, and AI summaries included. First 10 minutes free, no account.

Related Articles