mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-08 03:08:45 +00:00
feat(cost-map): add Cloudflare Workers AI whisper transcription models
This commit is contained in:
parent
7bc80994b7
commit
de33cffbf1
3 changed files with 89 additions and 0 deletions
|
|
@ -13297,6 +13297,39 @@
|
|||
"output_cost_per_token": 1e-06,
|
||||
"supports_reasoning": true
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper": {
|
||||
"input_cost_per_second": 7.5e-06,
|
||||
"litellm_provider": "cloudflare",
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper-large-v3-turbo": {
|
||||
"input_cost_per_second": 8.5e-06,
|
||||
"litellm_provider": "cloudflare",
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper-large-v3-turbo/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper-tiny-en": {
|
||||
"input_cost_per_second": 0.0,
|
||||
"litellm_provider": "cloudflare",
|
||||
"metadata": {
|
||||
"notes": "Cloudflare publishes no unit pricing for this beta model, so cost tracking reports $0 until they do"
|
||||
},
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper-tiny-en/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"codestral/codestral-2405": {
|
||||
"input_cost_per_token": 0.0,
|
||||
"litellm_provider": "codestral",
|
||||
|
|
|
|||
|
|
@ -13297,6 +13297,39 @@
|
|||
"output_cost_per_token": 1e-06,
|
||||
"supports_reasoning": true
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper": {
|
||||
"input_cost_per_second": 7.5e-06,
|
||||
"litellm_provider": "cloudflare",
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper-large-v3-turbo": {
|
||||
"input_cost_per_second": 8.5e-06,
|
||||
"litellm_provider": "cloudflare",
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper-large-v3-turbo/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"cloudflare/@cf/openai/whisper-tiny-en": {
|
||||
"input_cost_per_second": 0.0,
|
||||
"litellm_provider": "cloudflare",
|
||||
"metadata": {
|
||||
"notes": "Cloudflare publishes no unit pricing for this beta model, so cost tracking reports $0 until they do"
|
||||
},
|
||||
"mode": "audio_transcription",
|
||||
"output_cost_per_second": 0.0,
|
||||
"source": "https://developers.cloudflare.com/workers-ai/models/whisper-tiny-en/",
|
||||
"supported_endpoints": [
|
||||
"/v1/audio/transcriptions"
|
||||
]
|
||||
},
|
||||
"codestral/codestral-2405": {
|
||||
"input_cost_per_token": 0.0,
|
||||
"litellm_provider": "codestral",
|
||||
|
|
|
|||
|
|
@ -75,6 +75,29 @@ def test_additional_current_models_are_present():
|
|||
assert entry["output_cost_per_token"] > 0
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"key, published_price_per_audio_minute",
|
||||
[
|
||||
("cloudflare/@cf/openai/whisper", 0.00045),
|
||||
("cloudflare/@cf/openai/whisper-large-v3-turbo", 0.00051),
|
||||
],
|
||||
)
|
||||
def test_whisper_transcription_pricing_is_stored_per_second(key, published_price_per_audio_minute):
|
||||
entry = litellm.model_cost[key]
|
||||
assert entry["litellm_provider"] == "cloudflare"
|
||||
assert entry["mode"] == "audio_transcription"
|
||||
assert entry["supported_endpoints"] == ["/v1/audio/transcriptions"]
|
||||
assert entry["output_cost_per_second"] == 0.0
|
||||
assert entry["input_cost_per_second"] == pytest.approx(published_price_per_audio_minute / 60)
|
||||
|
||||
|
||||
def test_whisper_tiny_en_is_present_and_unpriced():
|
||||
entry = litellm.model_cost["cloudflare/@cf/openai/whisper-tiny-en"]
|
||||
assert entry["mode"] == "audio_transcription"
|
||||
assert entry["input_cost_per_second"] == 0.0
|
||||
assert entry["output_cost_per_second"] == 0.0
|
||||
|
||||
|
||||
def test_root_and_backup_have_identical_cloudflare_keys():
|
||||
if not os.path.exists(ROOT_MAP):
|
||||
pytest.skip("root cost map only ships in source checkouts")
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue