mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-08 22:21:35 +00:00
fix(model_prices): registry audit - add groq qwen3.8-27b, gemini live native audio (from #38573), anthropic sources
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
parent
2ef77f30e3
commit
9df3a4fc1c
3 changed files with 143 additions and 8 deletions
|
|
@ -12569,7 +12569,8 @@
|
|||
"us": 1.1
|
||||
},
|
||||
"supports_output_config": true,
|
||||
"prompt_cache_min_tokens": 1024
|
||||
"prompt_cache_min_tokens": 1024,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-sonnet-4-6": {
|
||||
"deprecation_date": "2027-02-17",
|
||||
|
|
@ -12971,7 +12972,8 @@
|
|||
},
|
||||
"supports_output_config": true,
|
||||
"prompt_cache_min_tokens": 512,
|
||||
"supports_native_structured_output": true
|
||||
"supports_native_structured_output": true,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-opus-5": {
|
||||
"deprecation_date": "2027-07-24",
|
||||
|
|
@ -13011,7 +13013,8 @@
|
|||
},
|
||||
"supports_output_config": true,
|
||||
"supports_speed": true,
|
||||
"prompt_cache_min_tokens": 512
|
||||
"prompt_cache_min_tokens": 512,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-opus-4-8": {
|
||||
"deprecation_date": "2027-05-28",
|
||||
|
|
@ -20536,7 +20539,51 @@
|
|||
"output_cost_per_token": 2e-06,
|
||||
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
|
||||
"supported_endpoints": [
|
||||
"/vertex_ai/live"
|
||||
"/vertex_ai/live",
|
||||
"/v1/realtime"
|
||||
],
|
||||
"supported_modalities": [
|
||||
"text",
|
||||
"image",
|
||||
"audio",
|
||||
"video"
|
||||
],
|
||||
"supported_output_modalities": [
|
||||
"text",
|
||||
"audio"
|
||||
],
|
||||
"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
|
||||
},
|
||||
"gemini_native_audio": true
|
||||
},
|
||||
"gemini/gemini-live-2.5-flash-native-audio": {
|
||||
"input_cost_per_audio_token": 3e-06,
|
||||
"input_cost_per_token": 5e-07,
|
||||
"litellm_provider": "gemini",
|
||||
"max_input_tokens": 1048576,
|
||||
"max_output_tokens": 65535,
|
||||
"max_tokens": 65535,
|
||||
"mode": "realtime",
|
||||
"output_cost_per_audio_token": 1.2e-05,
|
||||
"output_cost_per_token": 2e-06,
|
||||
"source": "https://ai.google.dev/gemini-api/docs/pricing",
|
||||
"supported_endpoints": [
|
||||
"/v1/realtime"
|
||||
],
|
||||
"supported_modalities": [
|
||||
"text",
|
||||
|
|
@ -54559,5 +54606,17 @@
|
|||
"output_cost_per_token_above_200k_tokens": 5e-06,
|
||||
"cache_read_input_token_cost_above_200k_tokens": 4e-07,
|
||||
"supports_response_schema": true
|
||||
},
|
||||
"groq/qwen/qwen3.8-27b": {
|
||||
"input_cost_per_token": 8e-07,
|
||||
"litellm_provider": "groq",
|
||||
"max_input_tokens": 131042,
|
||||
"max_output_tokens": 16384,
|
||||
"max_tokens": 16384,
|
||||
"mode": "chat",
|
||||
"output_cost_per_token": 4e-06,
|
||||
"source": "https://console.groq.com/docs/model/qwen/qwen3.8-27b",
|
||||
"supports_reasoning": true,
|
||||
"supports_vision": true
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12569,7 +12569,8 @@
|
|||
"us": 1.1
|
||||
},
|
||||
"supports_output_config": true,
|
||||
"prompt_cache_min_tokens": 1024
|
||||
"prompt_cache_min_tokens": 1024,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-sonnet-4-6": {
|
||||
"deprecation_date": "2027-02-17",
|
||||
|
|
@ -12971,7 +12972,8 @@
|
|||
},
|
||||
"supports_output_config": true,
|
||||
"prompt_cache_min_tokens": 512,
|
||||
"supports_native_structured_output": true
|
||||
"supports_native_structured_output": true,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-opus-5": {
|
||||
"deprecation_date": "2027-07-24",
|
||||
|
|
@ -13011,7 +13013,8 @@
|
|||
},
|
||||
"supports_output_config": true,
|
||||
"supports_speed": true,
|
||||
"prompt_cache_min_tokens": 512
|
||||
"prompt_cache_min_tokens": 512,
|
||||
"source": "https://docs.anthropic.com/en/docs/about-claude/models/overview"
|
||||
},
|
||||
"claude-opus-4-8": {
|
||||
"deprecation_date": "2027-05-28",
|
||||
|
|
@ -20536,7 +20539,51 @@
|
|||
"output_cost_per_token": 2e-06,
|
||||
"source": "https://cloud.google.com/vertex-ai/generative-ai/pricing",
|
||||
"supported_endpoints": [
|
||||
"/vertex_ai/live"
|
||||
"/vertex_ai/live",
|
||||
"/v1/realtime"
|
||||
],
|
||||
"supported_modalities": [
|
||||
"text",
|
||||
"image",
|
||||
"audio",
|
||||
"video"
|
||||
],
|
||||
"supported_output_modalities": [
|
||||
"text",
|
||||
"audio"
|
||||
],
|
||||
"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
|
||||
},
|
||||
"gemini_native_audio": true
|
||||
},
|
||||
"gemini/gemini-live-2.5-flash-native-audio": {
|
||||
"input_cost_per_audio_token": 3e-06,
|
||||
"input_cost_per_token": 5e-07,
|
||||
"litellm_provider": "gemini",
|
||||
"max_input_tokens": 1048576,
|
||||
"max_output_tokens": 65535,
|
||||
"max_tokens": 65535,
|
||||
"mode": "realtime",
|
||||
"output_cost_per_audio_token": 1.2e-05,
|
||||
"output_cost_per_token": 2e-06,
|
||||
"source": "https://ai.google.dev/gemini-api/docs/pricing",
|
||||
"supported_endpoints": [
|
||||
"/v1/realtime"
|
||||
],
|
||||
"supported_modalities": [
|
||||
"text",
|
||||
|
|
@ -54559,5 +54606,17 @@
|
|||
"output_cost_per_token_above_200k_tokens": 5e-06,
|
||||
"cache_read_input_token_cost_above_200k_tokens": 4e-07,
|
||||
"supports_response_schema": true
|
||||
},
|
||||
"groq/qwen/qwen3.8-27b": {
|
||||
"input_cost_per_token": 8e-07,
|
||||
"litellm_provider": "groq",
|
||||
"max_input_tokens": 131042,
|
||||
"max_output_tokens": 16384,
|
||||
"max_tokens": 16384,
|
||||
"mode": "chat",
|
||||
"output_cost_per_token": 4e-06,
|
||||
"source": "https://console.groq.com/docs/model/qwen/qwen3.8-27b",
|
||||
"supports_reasoning": true,
|
||||
"supports_vision": true
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1812,6 +1812,8 @@ def patch_gemini_audio_cost_map_entries(monkeypatch):
|
|||
"gemini-2.5-flash-native-audio",
|
||||
"gemini-2.5-flash-native-audio-latest",
|
||||
"gemini/gemini-2.5-flash-native-audio-latest",
|
||||
"gemini-live-2.5-flash-native-audio",
|
||||
"gemini/gemini-live-2.5-flash-native-audio",
|
||||
]
|
||||
flash_live_models = [
|
||||
"gemini-3.1-flash-live-preview",
|
||||
|
|
@ -1834,6 +1836,9 @@ def patch_gemini_audio_cost_map_entries(monkeypatch):
|
|||
("gemini/gemini-3.1-flash-live-preview", True),
|
||||
("gemini-2.5-flash-native-audio-latest", True),
|
||||
("gemini/gemini-2.5-flash-native-audio-latest", True),
|
||||
("gemini-live-2.5-flash-native-audio", True),
|
||||
("gemini/gemini-live-2.5-flash-native-audio", True),
|
||||
("vertex_ai/gemini-live-2.5-flash-native-audio", True),
|
||||
("gemini-2.0-flash", False),
|
||||
("gemini-2.5-flash", False),
|
||||
],
|
||||
|
|
@ -1842,6 +1847,18 @@ def test_is_audio_only_live_model_uses_cost_map(model, expected, patch_gemini_au
|
|||
assert GeminiRealtimeConfig._is_audio_only_live_model(model) == expected
|
||||
|
||||
|
||||
def test_gemini_live_native_audio_entries_in_catalog():
|
||||
import json
|
||||
from pathlib import Path
|
||||
from typing import Final
|
||||
|
||||
catalog_path: Final = Path(__file__).parents[5] / "model_prices_and_context_window.json"
|
||||
catalog: Final = json.loads(catalog_path.read_text())
|
||||
for key in ("gemini-live-2.5-flash-native-audio", "gemini/gemini-live-2.5-flash-native-audio"):
|
||||
assert key in catalog, f"{key} missing from model_prices_and_context_window.json"
|
||||
assert catalog[key].get("gemini_native_audio") is True, f"{key}: gemini_native_audio must be true"
|
||||
|
||||
|
||||
def test_is_setup_message_and_is_content_message():
|
||||
config = GeminiRealtimeConfig()
|
||||
assert config.is_setup_message({"setup": {}}) is True
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue