Skip to content

Commit a503848

Browse files
google-genai-botcopybara-github
authored andcommitted
feat(cli): use gemini-3.5-transcribe as default model for transcribe command
- Switch the `transcribe` default model to `gemini-3.5-transcribe` and add `gemini-3.5-transcribe` to the `Model` enum (catalog group `Speech`). - For dedicated `*-transcribe` models, send only the audio block with `generation_config.transcription_config` (verbatim mode with `diarization_mode: "speaker"` and `timestamp_granularities: ["word"]` per `--no-speakers`/`--no-timestamps`), and render `md`, `text`, `json`, and `srt` from the returned `word_info` annotations. Segment text is cut from the response text by the annotations' byte indices, so the model's punctuation and spacing are kept (including languages written without spaces); speakers are numbered `Speaker 1`, `Speaker 2`, ... by first appearance (the API's raw labels, e.g. `spk:0`, are opaque); SRT cues are capped at 7 s / 84 bytes including the speaker prefix, without stranding a sentence's last word. md/text warn when the response has no word-level annotations. - `gemini-3.5-transcribe` accepts audio only: video inputs fall back to `gemini-3.8-flash` when `--model` is not set, and an explicit `--model gemini-3.5-transcribe` with a video input is a usage error; for audio-only WebM (`.webm` maps to `video/webm`), both point at `--mime-type audio/webm`. A request rejected while speaker labels or timestamps are on suggests `--no-speakers --no-timestamps` or `--model gemini-3.8-flash` (those features cap audio at 30 minutes). Each JSON result now reports the model that served it. - General multimodal models (for example `-m gemini-3.8-flash`) keep the prompt plus `response_format` JSON schema path. - `transcribe --help` documents the audio-only restriction and the 30-minute limit that applies with speaker labels or timestamps, and links to https://ai.google.dev/gemini-api/docs/transcribe. Fixes google-gemini/gemini-api-cli#144 FUTURE_COPYBARA_INTEGRATE_REVIEW=#3209 from googleapis:release-please--branches--main 39c95f2 PiperOrigin-RevId: 1009314715
1 parent 0dc788c commit a503848

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

  • google/genai/_gaos/types/interactions

‎google/genai/_gaos/types/interactions/model.py‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@
7878
"gemini-3.8-flash-tts",
7979
# Gemini 3.8 Flash Lite TTS - High-speed and cost-efficient, ideal for rapid dubbing, media localization, and high-throughput voice agents. Direct replacement for gemini-3.1-flash-tts-preview.
8080
"gemini-3.8-flash-lite-tts",
81+
# Gemini 3.5 Transcribe - Low-latency speech-to-text model with utterance-based language detection, speaker diarization, word-level timestamps, and custom vocabulary biasing.
82+
"gemini-3.5-transcribe",
8183
# Our low-latency, music generation model optimized for high-fidelity audio clips and precise rhythmic control.
8284
"lyria-3-clip-preview",
8385
# Our advanced, full-song generative model with deep compositional understanding, optimized for precise structural control and complex transitions across diverse musical styles.

0 commit comments

Comments
 (0)