0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gemini 3.5 Transcribe GA開始、話者分離・タイムスタンプ対応の音声認識2モデル

0
Posted at

はじめに

2026年8月26日、Google の Gemini API に Gemini 3.5 Transcribe の一般提供(GA)が追加されました。これは Gemini の音声理解能力をベースにした、書き起こし(speech-to-text)専用のモデル群です。

これまで Gemini でも音声入力をテキスト化すること自体は可能でしたが、今回追加されたのは「書き起こし」というタスクに特化して最適化された専用モデルです。具体的には以下の2種類が提供されます。

  • gemini-3.5-transcribe: 高精度・低レイテンシの非ストリーミング書き起こしモデル
  • gemini-3.5-transcribe-live: Live API(WebSocket)上で動作する双方向ストリーミング書き起こしモデル

📌 影響を受ける人

  • 議事録・通話ログ・字幕生成などの書き起こし機能を自作している開発者
  • 既存の音声認識 API(Speech-to-Text 系サービスなど)から Gemini エコシステムへの移行を検討している人
  • リアルタイム音声UI(コールセンター、ライブキャプション、音声アシスタント)を作っている人

会議の録音を自動でテキスト化するツールや、コールセンターのリアルタイム字幕表示など、「音声→テキスト」を扱うプロダクトを持つ開発者にとって注目の更新です。

変更の全体像

2つのモデルは用途によって使い分けます。録音済み音声ファイルをまとめて処理するなら非ストリーミング版、マイク入力などをリアルタイムに処理するならライブ版、という住み分けです。

ライブ版はストリーミングの性質上、Live API 経由の WebSocket 通信としてやり取りされる点が非ストリーミング版との大きな違いです。

変更内容

項目 gemini-3.5-transcribe gemini-3.5-transcribe-live
提供状態 GA(一般提供) GA(一般提供)
処理方式 非ストリーミング(一括) 双方向ストリーミング
通信方式 通常の API リクエスト Live API(WebSocket)
言語検出 85以上の言語、発話単位で検出 -
話者ダイアライゼーション ○(話者分離) -
タイムスタンプ 単語レベル -
カスタム語彙 最大1,000語のバイアシング -
イベント種別 - interim(暫定)/ finalized(確定)
特徴モード - Smart transcriptionモード
音声区間検出(VAD) - 複数戦略に対応
主な用途 議事録、字幕バッチ生成、通話ログ解析 ライブキャプション、リアルタイム音声UI

特に注目すべき点は次の3つです。

  1. 話者ダイアライゼーション(話者分離): 複数人が話す会議録音などで「誰が」話しているかを自動で分離できます。これまで別サービスを組み合わせる必要があったケースが、単一モデルで完結する可能性があります。
  2. カスタム語彙バイアシング: 社名・製品名・専門用語など最大1,000語まで登録でき、認識精度を用途に合わせて調整できます。
  3. Smart transcriptionモード(ライブ版): ストリーミング時の暫定結果(interim)と確定結果(finalized)を分けて受け取れるため、UI 側でリアルタイムに文字を更新しつつ、最終確定時にきれいな文章へ差し替える、といった実装がしやすくなります。

影響と対応

💡 Tips
既存の音声処理パイプラインで Gemini の汎用モデル(gemini-2.x 系など)に音声ファイルを渡して文字起こしをさせていた場合、専用モデルである gemini-3.5-transcribe への切り替えを検討する価値があります。書き起こし専用にチューニングされているため、精度・レイテンシ面でメリットが期待できます。

対応が必要な開発者向けのアクションは以下の通りです。

  • バッチ処理系: 会議録音や動画字幕生成などをまとめて処理している場合は gemini-3.5-transcribe の利用を検討し、話者分離やタイムスタンプ機能で後処理コードを削減できないか確認する。
  • リアルタイム系: 既存の Live API 実装で音声認識部分を自前実装している場合、gemini-3.5-transcribe-live の interim/finalized イベントと VAD 戦略を活用することで、無音検出やUI更新ロジックを簡素化できる可能性がある。
  • 多言語対応: 85以上の言語検出に対応しているため、ユーザーの言語を明示的に指定せずに済むフローへ簡略化できないか検討する。

⚠️ Breaking Change
今回の変更自体は新モデルの追加であり、既存モデルの廃止や破壊的な API 変更ではありません。ただし、今後の書き起こし用途では専用モデルが推奨される流れになる可能性があるため、汎用モデルで音声書き起こしを行っている実装は将来的な移行を視野に入れておくとよいでしょう。

コード例

非ストリーミング書き起こし(gemini-3.5-transcribe)

# Before: 汎用モデルに音声ファイルを渡して書き起こしをプロンプトで指示
from google import genai

client = genai.Client()
audio_file = client.files.upload(file="meeting.mp3")

response = client.models.generate_content(
    model="gemini-2.5-pro",
    contents=[
        "この音声を文字起こししてください。",
        audio_file,
    ],
)
print(response.text)
# After: 専用モデルで話者分離・タイムスタンプ・カスタム語彙を活用
from google import genai

client = genai.Client()
audio_file = client.files.upload(file="meeting.mp3")

response = client.models.generate_content(
    model="gemini-3.5-transcribe",
    contents=[audio_file],
    config={
        "speaker_diarization": True,
        "word_level_timestamps": True,
        "custom_vocabulary": ["Qiita", "Gemini API", "GA"],
    },
)
print(response.text)

ストリーミング書き起こし(gemini-3.5-transcribe-live)

# Live API / WebSocket 経由でリアルタイム書き起こし
import asyncio
from google import genai

client = genai.Client()

async def transcribe_stream():
    async with client.aio.live.connect(
        model="gemini-3.5-transcribe-live",
        config={
            "vad": {"strategy": "server_side"},
            "smart_transcription": True,
        },
    ) as session:
        async for chunk in microphone_audio_stream():
            await session.send(audio=chunk)

        async for event in session.receive():
            if event.type == "interim":
                print("暫定:", event.text)
            elif event.type == "finalized":
                print("確定:", event.text)

asyncio.run(transcribe_stream())

interim イベントで即座に文字を画面に反映しつつ、finalized イベントで確定テキストに差し替えることで、体感速度の速いリアルタイム字幕UIを実現できます。

まとめ

  • Gemini API に音声書き起こし専用モデル gemini-3.5-transcribe(非ストリーミング)と gemini-3.5-transcribe-live(ストリーミング)がGAとして追加された
  • 非ストリーミング版は85以上の言語検出・話者ダイアライゼーション・単語レベルタイムスタンプ・最大1,000語のカスタム語彙バイアシングに対応
  • ストリーミング版は Live API(WebSocket)上で動作し、interim/finalized イベントと複数の VAD 戦略、Smart transcriptionモードを備える
  • 既存の汎用モデルで書き起こしを行っている実装は、精度・レイテンシ・機能面でのメリットを見込めるため専用モデルへの移行を検討する価値がある
  • 破壊的変更ではないが、今後の書き起こし用途では専用モデル利用が推奨される流れになる可能性がある

会議録音の自動要約ツールやリアルタイム字幕サービスを作っている、あるいは検討している開発者は、まずは非ストリーミング版の話者分離機能から試してみるのがおすすめです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?