Gemini DEPRECATED MODERATE

lyria-realtime-exp — Deprecated

Deprecated
Shutdown
Status
active
Replacement

Quick fix — copy & paste

Choose your language. The "before" block matches the deprecated call; the "after" block is the drop-in replacement.

Breaks after deprecation
# Gemini: lyria-realtime-exp (active)
model = "lyria-realtime-exp"
Use this instead
# No direct replacement — see Gemini docs.
# Pick a current model from the provider's available list.

This migration was generated automatically from the model rename. If your code does more than swap a model id, double-check request/response shapes against the official Gemini migration guide.

Error messages

Seeing one of these? You're in the right place.

  • model_not_found: lyria-realtime-exp
  • The model `lyria-realtime-exp` has been deprecated
  • The model `lyria-realtime-exp` does not exist or you do not have access to it

Other Gemini deprecations

What this means for your code

lyria-realtime-exp is a realtime model used over a WebSocket or WebRTC for low-latency speech-to-speech. Realtime models maintain stateful sessions over a persistent connection. Migrating means updating session.update events, tool definitions, and any custom turn-detection logic. Pricing is per minute of input and output audio.

lyria-realtime-exp has been marked deprecated by Gemini. A specific shutdown date has not been published, but deprecated models typically receive 6-12 months of notice before retirement.

Find every call in your codebase

Before you change anything, locate every place the deprecated model id is referenced. Search source files, environment files, feature flags, and config repos. Use these commands from your project root:

Python projects

grep -rn '"lyria-realtime-exp"' --include="*.py" .

JavaScript / TypeScript projects

grep -rn '"lyria-realtime-exp"' --include="*.{js,ts,tsx,jsx}" .

Anywhere (configs, scripts, infra)

grep -rn "lyria-realtime-exp" .

Migration checklist

Steps in order. Skip any that don't apply, but read the whole list — for realtime models, the non-obvious steps are usually the ones that break in production.

  1. 1. Update the model id in your session.update event payload
  2. 2. Verify supported voices and modalities (audio, text) on the new model
  3. 3. Re-test turn detection (server VAD vs none) and interruption handling
  4. 4. Audit tool definitions — function calling schema may have changed
  5. 5. Reconnect logic should fall back to a still-supported model on session failure

Will this migration cost more?

Switching from lyria-realtime-exp to an alternative model could change your costs significantly. Calculate the exact difference for your prompts.

Open the cost calculator →