fix(pricing): add the Vertex AI Gemini Live GA models and correct the preview

Vertex serves two GA Live models and neither had a cost map entry, so every
Live session billed $0. Adds gemini-live-2.5-flash (half-cascade, global
endpoint only) and gemini-live-2.5-flash-native-audio (native audio, regional
only), each as a bare key and a vertex_ai/ key.

The existing gemini-live-2.5-flash-preview-native-audio-09-2025 entry priced
text input at $0.30 per 1M, which is gemini-2.5-flash's rate, not the Live
API's published $0.50. Corrected on that entry and its gemini/ twin.

Native-audio Live only emits audio: Vertex closes the socket when
responseModalities asks for TEXT, so supported_output_modalities on those
entries is now audio only. supported_regions comes from BidiGenerateContent
setup probes across 22 Vertex locations, ordered so a caller in an
unsupported region falls back to us-central1.

Also sets mode to realtime on the Gemini Live entries that said chat while
serving only /v1/realtime, so health checks pick the realtime probe.
This commit is contained in:
Marty Sullivan 2026-08-13 17:13:33 -04:00
parent 69b0296ca3
commit 19249242f8
2 changed files with 436 additions and 24 deletions

View file

@ -18469,10 +18469,218 @@
},
"supports_image_size": false
},
"gemini-live-2.5-flash": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"text",
"audio"
],
"supported_regions": [
"global"
]
},
"vertex_ai/gemini-live-2.5-flash": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"text",
"audio"
],
"supported_regions": [
"global"
]
},
"gemini-live-2.5-flash-native-audio": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"audio"
],
"supported_regions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west4",
"europe-central2",
"europe-north1",
"europe-west1",
"europe-west4"
],
"gemini_native_audio": true
},
"vertex_ai/gemini-live-2.5-flash-native-audio": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"audio"
],
"supported_regions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west4",
"europe-central2",
"europe-north1",
"europe-west1",
"europe-west4"
],
"gemini_native_audio": true
},
"gemini-live-2.5-flash-preview-native-audio-09-2025": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 3e-07,
"input_cost_per_token": 5e-07,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
@ -18491,7 +18699,6 @@
"video"
],
"supported_output_modalities": [
"text",
"audio"
],
"supports_audio_input": true,
@ -18516,7 +18723,7 @@
"gemini/gemini-live-2.5-flash-preview-native-audio-09-2025": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 3e-07,
"input_cost_per_token": 5e-07,
"litellm_provider": "gemini",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
@ -18536,7 +18743,6 @@
"video"
],
"supported_output_modalities": [
"text",
"audio"
],
"supports_audio_input": true,
@ -45458,7 +45664,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45483,7 +45689,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45508,7 +45714,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45535,7 +45741,7 @@
"max_input_tokens": 131072,
"max_output_tokens": 65536,
"max_tokens": 65536,
"mode": "chat",
"mode": "realtime",
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 4.5e-06,
"source": "https://ai.google.dev/gemini-api/docs/pricing",
@ -45566,7 +45772,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45593,7 +45799,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45620,7 +45826,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45649,7 +45855,7 @@
"max_input_tokens": 131072,
"max_output_tokens": 65536,
"max_tokens": 65536,
"mode": "chat",
"mode": "realtime",
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 4.5e-06,
"source": "https://ai.google.dev/gemini-api/docs/pricing",

View file

@ -18469,10 +18469,218 @@
},
"supports_image_size": false
},
"gemini-live-2.5-flash": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"text",
"audio"
],
"supported_regions": [
"global"
]
},
"vertex_ai/gemini-live-2.5-flash": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"text",
"audio"
],
"supported_regions": [
"global"
]
},
"gemini-live-2.5-flash-native-audio": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"audio"
],
"supported_regions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west4",
"europe-central2",
"europe-north1",
"europe-west1",
"europe-west4"
],
"gemini_native_audio": true
},
"vertex_ai/gemini-live-2.5-flash-native-audio": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 5e-07,
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 2e-06,
"litellm_provider": "vertex_ai",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
"max_tokens": 65535,
"mode": "realtime",
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
"supported_endpoints": [
"/v1/realtime",
"/vertex_ai/live"
],
"supported_modalities": [
"text",
"image",
"audio",
"video"
],
"supports_audio_input": true,
"supports_audio_output": true,
"supports_function_calling": true,
"supports_parallel_function_calling": true,
"supports_pdf_input": true,
"supports_prompt_caching": true,
"supports_response_schema": true,
"supports_system_messages": true,
"supports_tool_choice": true,
"supports_url_context": true,
"supports_vision": true,
"supports_web_search": true,
"search_context_cost_per_query": {
"search_context_size_low": 0.035,
"search_context_size_medium": 0.035,
"search_context_size_high": 0.035
},
"supported_output_modalities": [
"audio"
],
"supported_regions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west4",
"europe-central2",
"europe-north1",
"europe-west1",
"europe-west4"
],
"gemini_native_audio": true
},
"gemini-live-2.5-flash-preview-native-audio-09-2025": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 3e-07,
"input_cost_per_token": 5e-07,
"litellm_provider": "vertex_ai-language-models",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
@ -18491,7 +18699,6 @@
"video"
],
"supported_output_modalities": [
"text",
"audio"
],
"supports_audio_input": true,
@ -18516,7 +18723,7 @@
"gemini/gemini-live-2.5-flash-preview-native-audio-09-2025": {
"cache_read_input_token_cost": 7.5e-08,
"input_cost_per_audio_token": 3e-06,
"input_cost_per_token": 3e-07,
"input_cost_per_token": 5e-07,
"litellm_provider": "gemini",
"max_input_tokens": 1048576,
"max_output_tokens": 65535,
@ -18536,7 +18743,6 @@
"video"
],
"supported_output_modalities": [
"text",
"audio"
],
"supports_audio_input": true,
@ -45458,7 +45664,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45483,7 +45689,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45508,7 +45714,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45535,7 +45741,7 @@
"max_input_tokens": 131072,
"max_output_tokens": 65536,
"max_tokens": 65536,
"mode": "chat",
"mode": "realtime",
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 4.5e-06,
"source": "https://ai.google.dev/gemini-api/docs/pricing",
@ -45566,7 +45772,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45593,7 +45799,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45620,7 +45826,7 @@
"max_input_tokens": 1048576,
"max_output_tokens": 8192,
"max_tokens": 8192,
"mode": "chat",
"mode": "realtime",
"output_cost_per_token": 2.5e-06,
"source": "https://ai.google.dev/pricing",
"supported_endpoints": [
@ -45649,7 +45855,7 @@
"max_input_tokens": 131072,
"max_output_tokens": 65536,
"max_tokens": 65536,
"mode": "chat",
"mode": "realtime",
"output_cost_per_audio_token": 1.2e-05,
"output_cost_per_token": 4.5e-06,
"source": "https://ai.google.dev/gemini-api/docs/pricing",