generate_speech
Generates WAV speech from text with Gemini TTS, letting you design or reuse voices by description, scene, or style for consistent narration.
Instructions
文章を、指定した声(または場面に合う声)で読み上げた音声(WAV)を生成する。
声の決め方(上ほど優先。どれも無ければ既定のプリビルトボイス):
voice_description: どんな声にしたいかを自然文で説明する(ボイスデザイン)。 初回はその説明から声を作成して保存し、2 回目以降は同じ説明なら同じ声を再利用する。 例: "明るく元気な 20 代女性。少し早口でハキハキした声"
voice: プリビルトボイス名(例: Kore, Puck, Zephyr。list_voices / list_models で確認) または design_voice で作った voice_id(voice_...)。 voice と voice_description の両方なら、voice を元に説明どおりに変えた声を作る(リミックス)。
scene: 用途・場面(例: "AWS のイベントでのプレゼン")。場面に合う声と話し方を自動で考える。 プランはキャッシュされ、同じ scene なら何度呼んでも同じ声・話し方になる(スライドごとに 分けて生成しても声が揃う)。voice / voice_description / style を指定した部分はそちらが優先。
Args: text: 読み上げる文章(言語は自動判定)。強調したい語を大文字にする、句読点や「…」で間を作る、 などのタグ(英語表記)を文中に 入れると一瞬の笑い・ため息・間を表現できる。 scene: 音声を使う場面・用途・聞き手(任意)。例: "AWS のイベントでのプレゼン。聴衆はエンジニア数百人"。 voice_description: どんな声にしたいかの説明(年齢・性別・声質・雰囲気など恒常的な特徴)。 voice: プリビルトボイス名、または voice_... の ID。 style: 話し方の指示(任意。感情・速さ・抑揚・声量など、その場の話し方)。 例: "嬉しそうに、ややゆっくり" / "whispered urgently"。本文には混ぜずにここへ書く (本文に書くと読み上げられてしまう)。短い方が効果的。scene より優先。 enhance_text: True なら本文に間・息継ぎのタグ( 等)を自動で入れてから読み上げる (言葉は変えない。変わってしまった場合は元の文章のまま読む)。 out_path: 出力先ファイルパス(.wav)。省略時は GEMINI_TTS_OUT_DIR に自動命名で保存。 gender: 話者の性別(任意。female / male / neutral。声を作るとき・scene のプランに使う)。 language_code: 主言語(任意。例: ja-JP。声を作るとき・scene のプランに使う)。 model: 使用モデル(任意)。gemini-3.8-flash-tts(既定)/ gemini-3.8-flash-lite-tts(速い・安い)。 環境変数 GEMINI_TTS_MODEL 設定時はこの引数は無視。 sample_rate: サンプルレート(24000(既定)/ 16000 / 8000)。 replan: True なら scene のプランをキャッシュせずに考え直す(声も変わる)。 project_id: プロジェクトID上書き(任意。クォータ帰属用)。
Returns: success / out_path / files / duration_sec / voice / voice_source / voice_id / style / scene_plan(scene 指定時: 声の設計・話し方・理由)/ text_used(enhance_text 時)/ model / project_id voice_id(voice_...)を次回 voice に渡すと、同じ声で読み上げられる。
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"text": "<text>"
},
"name": "generate_speech"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| model | No | ||
| scene | No | ||
| style | No | ||
| voice | No | ||
| gender | No | ||
| replan | No | ||
| out_path | No | ||
| project_id | No | ||
| sample_rate | No | ||
| enhance_text | No | ||
| language_code | No | ||
| voice_description | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||