From c3edfc2c92c117281dc1a4039cf5d280f98548f3 Mon Sep 17 00:00:00 2001 From: Krish Dholakia Date: Mon, 23 Dec 2024 22:02:52 -0800 Subject: [PATCH] LiteLLM Minor Fixes & Improvements (12/23/2024) - p3 (#7394) * build(model_prices_and_context_window.json): add gemini-1.5-flash context caching * fix(context_caching/transformation.py): just use last identified cache point Fixes https://github.com/BerriAI/litellm/issues/6738 * fix(context_caching/transformation.py): pick first contiguous block - handles system message error from google Fixes https://github.com/BerriAI/litellm/issues/6738 * fix(vertex_ai/gemini/): track context caching tokens * refactor(gemini/): place transformation.py inside `chat/` folder make it easy for user to know we support the equivalent endpoint * fix: fix import * refactor(vertex_ai/): move vertex_ai cost calc inside vertex_ai/ folder make it easier to see cost calculation logic * fix: fix linting errors * fix: fix circular import * feat(gemini/cost_calculator.py): support gemini context caching cost calculation generifies anthropic's cost calculation function and uses it across anthropic + gemini * build(model_prices_and_context_window.json): add cost tracking for gemini-1.5-flash-002 w/ context caching Closes https://github.com/BerriAI/litellm/issues/6891 * docs(gemini.md): add gemini context caching architecture diagram make it easier for user to understand how context caching works * docs(gemini.md): link to relevant gemini context caching code * docs(gemini/context_caching): add readme in github, make it easy for dev to know context caching is supported + where to go for code * fix(llm_cost_calc/utils.py): handle gemini 128k token diff cost calc scenario * fix(deepseek/cost_calculator.py): support deepseek context caching cost calculation * test: fix test --- docs/my-website/docs/providers/gemini.md | 360 +++++++++--------- .../my-website/img/gemini_context_caching.png | Bin 0 -> 321836 bytes litellm/__init__.py | 6 +- litellm/cost_calculator.py | 29 +- .../litellm_core_utils/llm_cost_calc/utils.py | 98 +++++ litellm/llms/anthropic/cost_calculation.py | 42 +- litellm/llms/deepseek/cost_calculator.py | 21 + litellm/llms/gemini/chat/transformation.py | 131 +++++++ litellm/llms/gemini/context_caching/README.md | 1 + litellm/llms/gemini/cost_calculator.py | 21 + .../context_caching/transformation.py | 49 ++- .../vertex_ai/cost_calculator.py} | 9 +- .../vertex_and_google_ai_studio_gemini.py | 174 ++------- ...odel_prices_and_context_window_backup.json | 9 + litellm/types/llms/vertex_ai.py | 1 + model_prices_and_context_window.json | 9 + tests/llm_translation/base_llm_unit_tests.py | 117 +++--- tests/llm_translation/test_gemini.py | 61 ++- .../test_max_completion_tokens.py | 2 +- tests/local_testing/test_completion_cost.py | 26 +- 20 files changed, 719 insertions(+), 447 deletions(-) create mode 100644 docs/my-website/img/gemini_context_caching.png create mode 100644 litellm/llms/deepseek/cost_calculator.py create mode 100644 litellm/llms/gemini/chat/transformation.py create mode 100644 litellm/llms/gemini/context_caching/README.md create mode 100644 litellm/llms/gemini/cost_calculator.py rename litellm/{litellm_core_utils/llm_cost_calc/google.py => llms/vertex_ai/cost_calculator.py} (97%) diff --git a/docs/my-website/docs/providers/gemini.md b/docs/my-website/docs/providers/gemini.md index 7331b56530d..f499d0f8292 100644 --- a/docs/my-website/docs/providers/gemini.md +++ b/docs/my-website/docs/providers/gemini.md @@ -10,7 +10,8 @@ import TabItem from '@theme/TabItem'; | Provider Route on LiteLLM | `gemini/` | | Provider Doc | [Google AI Studio ↗](https://ai.google.dev/aistudio) | | API Endpoint for Provider | https://generativelanguage.googleapis.com | -| Supported Endpoints | `/chat/completions`, `/embeddings` | +| Supported OpenAI Endpoints | `/chat/completions`, `/embeddings`, `/completions` | +| Pass-through Endpoint | [Supported](../pass_through/google_ai_studio.md) |
@@ -552,175 +553,6 @@ content = response.get('choices', [{}])[0].get('message', {}).get('content') print(content) ``` -## Context Caching - -Use Google AI Studio context caching is supported by - -```bash -{ - ..., - "cache_control": {"type": "ephemeral"} -} -``` - -in your message content block. - -:::note - -Gemini Context Caching only allows 1 block of continuous messages to be cached. - -The raw request to Gemini looks like this: -```bash -curl -X POST "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-001:generateContent?key=$GOOGLE_API_KEY" \ --H 'Content-Type: application/json' \ --d '{ - "contents": [ - { - "parts":[{ - "text": "Please summarize this transcript" - }], - "role": "user" - }, - ], - "cachedContent": "'$CACHE_NAME'" - }' - -``` - -::: - - - - -```python -from litellm import completion - -for _ in range(2): - resp = completion( - model="gemini/gemini-1.5-pro", - messages=[ - # System Message - { - "role": "system", - "content": [ - { - "type": "text", - "text": "Here is the full text of a complex legal agreement" * 4000, - "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE - } - ], - }, - # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. - { - "role": "user", - "content": [ - { - "type": "text", - "text": "What are the key terms and conditions in this agreement?", - "cache_control": {"type": "ephemeral"}, - } - ], - }] - ) - - print(resp.usage) # 👈 2nd usage block will be less, since cached tokens used -``` - - - - -1. Setup config.yaml - -```yaml -model_list: - - model_name: gemini-1.5-pro - litellm_params: - model: gemini/gemini-1.5-pro - api_key: os.environ/GEMINI_API_KEY -``` - -2. Start proxy - -```bash -litellm --config /path/to/config.yaml -``` - -3. Test it! - -[**See Langchain, OpenAI JS, Llamaindex, etc. examples**](../proxy/user_keys.md#request-format) - - - - -```bash -curl --location 'http://0.0.0.0:4000/chat/completions' \ - --header 'Content-Type: application/json' \ - --data '{ - "model": "gemini-1.5-pro", - "messages": [ - # System Message - { - "role": "system", - "content": [ - { - "type": "text", - "text": "Here is the full text of a complex legal agreement" * 4000, - "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE - } - ], - }, - # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. - { - "role": "user", - "content": [ - { - "type": "text", - "text": "What are the key terms and conditions in this agreement?", - "cache_control": {"type": "ephemeral"}, - } - ], - }], -}' -``` - - - -```python -import openai -client = openai.AsyncOpenAI( - api_key="anything", # litellm proxy api key - base_url="http://0.0.0.0:4000" # litellm proxy base url -) - - -response = await client.chat.completions.create( - model="gemini-1.5-pro", - messages=[ - { - "role": "system", - "content": [ - { - "type": "text", - "text": "Here is the full text of a complex legal agreement" * 4000, - "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE - } - ], - }, - { - "role": "user", - "content": "what are the key terms and conditions in this agreement?", - }, - ] -) - -``` - - - - - - - ## Usage - PDF / Videos / etc. Files ### Inline Data (e.g. audio stream) @@ -857,3 +689,191 @@ response = litellm.completion( | gemini-pro | `completion(model='gemini/gemini-pro', messages)` | `os.environ['GEMINI_API_KEY']` | | gemini-1.5-pro-latest | `completion(model='gemini/gemini-1.5-pro-latest', messages)` | `os.environ['GEMINI_API_KEY']` | | gemini-pro-vision | `completion(model='gemini/gemini-pro-vision', messages)` | `os.environ['GEMINI_API_KEY']` | + + + +## Context Caching + +Use Google AI Studio context caching is supported by + +```bash +{ + { + "role": "system", + "content": ..., + "cache_control": {"type": "ephemeral"} # 👈 KEY CHANGE + }, + ... +} +``` + +in your message content block. + +### Architecture Diagram + + + + + +**Notes:** + +- [Relevant code](https://github.com/BerriAI/litellm/blob/main/litellm/llms/vertex_ai/context_caching/vertex_ai_context_caching.py#L255) + +- Gemini Context Caching only allows 1 block of continuous messages to be cached. + +- If multiple non-continuous blocks contain `cache_control` - the first continuous block will be used. (sent to `/cachedContent` in the [Gemini format](https://ai.google.dev/api/caching#cache_create-SHELL)) + + +- The raw request to Gemini's `/generateContent` endpoint looks like this: + +```bash +curl -X POST "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-001:generateContent?key=$GOOGLE_API_KEY" \ +-H 'Content-Type: application/json' \ +-d '{ + "contents": [ + { + "parts":[{ + "text": "Please summarize this transcript" + }], + "role": "user" + }, + ], + "cachedContent": "'$CACHE_NAME'" + }' + +``` + + +### Example Usage + + + + +```python +from litellm import completion + +for _ in range(2): + resp = completion( + model="gemini/gemini-1.5-pro", + messages=[ + # System Message + { + "role": "system", + "content": [ + { + "type": "text", + "text": "Here is the full text of a complex legal agreement" * 4000, + "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE + } + ], + }, + # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }] + ) + + print(resp.usage) # 👈 2nd usage block will be less, since cached tokens used +``` + + + + +1. Setup config.yaml + +```yaml +model_list: + - model_name: gemini-1.5-pro + litellm_params: + model: gemini/gemini-1.5-pro + api_key: os.environ/GEMINI_API_KEY +``` + +2. Start proxy + +```bash +litellm --config /path/to/config.yaml +``` + +3. Test it! + +[**See Langchain, OpenAI JS, Llamaindex, etc. examples**](../proxy/user_keys.md#request-format) + + + + +```bash +curl --location 'http://0.0.0.0:4000/chat/completions' \ + --header 'Content-Type: application/json' \ + --data '{ + "model": "gemini-1.5-pro", + "messages": [ + # System Message + { + "role": "system", + "content": [ + { + "type": "text", + "text": "Here is the full text of a complex legal agreement" * 4000, + "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE + } + ], + }, + # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }], +}' +``` + + + +```python +import openai +client = openai.AsyncOpenAI( + api_key="anything", # litellm proxy api key + base_url="http://0.0.0.0:4000" # litellm proxy base url +) + + +response = await client.chat.completions.create( + model="gemini-1.5-pro", + messages=[ + { + "role": "system", + "content": [ + { + "type": "text", + "text": "Here is the full text of a complex legal agreement" * 4000, + "cache_control": {"type": "ephemeral"}, # 👈 KEY CHANGE + } + ], + }, + { + "role": "user", + "content": "what are the key terms and conditions in this agreement?", + }, + ] +) + +``` + + + + + + diff --git a/docs/my-website/img/gemini_context_caching.png b/docs/my-website/img/gemini_context_caching.png new file mode 100644 index 0000000000000000000000000000000000000000..a364041c10223c5327913d9fbe04f0022a36488f GIT binary patch literal 321836 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

oAQvIjGLZJ$ivCUVYyYR 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 z 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 bool: + if tokens > 128000: + return True + return False def _generic_cost_per_character( @@ -80,3 +88,93 @@ def _generic_cost_per_character( completion_cost = None return prompt_cost, completion_cost + + +def _get_prompt_token_base_cost(model_info: ModelInfo, usage: Usage) -> float: + """ + Return prompt cost for a given model and usage. + + If input_tokens > 128k and `input_cost_per_token_above_128k_tokens` is set, then we use the `input_cost_per_token_above_128k_tokens` field. + """ + input_cost_per_token_above_128k_tokens = model_info.get( + "input_cost_per_token_above_128k_tokens" + ) + if _is_above_128k(usage.prompt_tokens) and input_cost_per_token_above_128k_tokens: + return input_cost_per_token_above_128k_tokens + return model_info["input_cost_per_token"] + + +def _get_completion_token_base_cost(model_info: ModelInfo, usage: Usage) -> float: + """ + Return prompt cost for a given model and usage. + + If input_tokens > 128k and `input_cost_per_token_above_128k_tokens` is set, then we use the `input_cost_per_token_above_128k_tokens` field. + """ + output_cost_per_token_above_128k_tokens = model_info.get( + "output_cost_per_token_above_128k_tokens" + ) + if ( + _is_above_128k(usage.completion_tokens) + and output_cost_per_token_above_128k_tokens + ): + return output_cost_per_token_above_128k_tokens + return model_info["output_cost_per_token"] + + +def generic_cost_per_token( + model: str, usage: Usage, custom_llm_provider: str +) -> Tuple[float, float]: + """ + Calculates the cost per token for a given model, prompt tokens, and completion tokens. + + Handles context caching as well. + + Input: + - model: str, the model name without provider prefix + - usage: LiteLLM Usage block, containing anthropic caching information + + Returns: + Tuple[float, float] - prompt_cost_in_usd, completion_cost_in_usd + """ + ## GET MODEL INFO + model_info = get_model_info(model=model, custom_llm_provider=custom_llm_provider) + + ## CALCULATE INPUT COST + ### Cost of processing (non-cache hit + cache hit) + Cost of cache-writing (cache writing) + prompt_cost = 0.0 + ### PROCESSING COST + non_cache_hit_tokens = usage.prompt_tokens + cache_hit_tokens = 0 + if usage.prompt_tokens_details and usage.prompt_tokens_details.cached_tokens: + cache_hit_tokens = usage.prompt_tokens_details.cached_tokens + non_cache_hit_tokens = non_cache_hit_tokens - cache_hit_tokens + + prompt_base_cost = _get_prompt_token_base_cost(model_info=model_info, usage=usage) + + prompt_cost = float(non_cache_hit_tokens) * prompt_base_cost + + _cache_read_input_token_cost = model_info.get("cache_read_input_token_cost") + if ( + _cache_read_input_token_cost is not None + and usage.prompt_tokens_details + and usage.prompt_tokens_details.cached_tokens + ): + prompt_cost += ( + float(usage.prompt_tokens_details.cached_tokens) + * _cache_read_input_token_cost + ) + + ### CACHE WRITING COST + _cache_creation_input_token_cost = model_info.get("cache_creation_input_token_cost") + if _cache_creation_input_token_cost is not None: + prompt_cost += ( + float(usage._cache_creation_input_tokens) * _cache_creation_input_token_cost + ) + + ## CALCULATE OUTPUT COST + completion_base_cost = _get_completion_token_base_cost( + model_info=model_info, usage=usage + ) + completion_cost = usage["completion_tokens"] * completion_base_cost + + return prompt_cost, completion_cost diff --git a/litellm/llms/anthropic/cost_calculation.py b/litellm/llms/anthropic/cost_calculation.py index 63075b82f7c..0dbe19ca873 100644 --- a/litellm/llms/anthropic/cost_calculation.py +++ b/litellm/llms/anthropic/cost_calculation.py @@ -5,8 +5,8 @@ Helper util for handling anthropic-specific cost calculation from typing import Tuple +from litellm.litellm_core_utils.llm_cost_calc.utils import generic_cost_per_token from litellm.types.utils import Usage -from litellm.utils import get_model_info def cost_per_token(model: str, usage: Usage) -> Tuple[float, float]: @@ -20,40 +20,6 @@ def cost_per_token(model: str, usage: Usage) -> Tuple[float, float]: Returns: Tuple[float, float] - prompt_cost_in_usd, completion_cost_in_usd """ - ## GET MODEL INFO - model_info = get_model_info(model=model, custom_llm_provider="anthropic") - - ## CALCULATE INPUT COST - ### Cost of processing (non-cache hit + cache hit) + Cost of cache-writing (cache writing) - prompt_cost = 0.0 - ### PROCESSING COST - non_cache_hit_tokens = usage.prompt_tokens - cache_hit_tokens = 0 - if usage.prompt_tokens_details and usage.prompt_tokens_details.cached_tokens: - cache_hit_tokens = usage.prompt_tokens_details.cached_tokens - non_cache_hit_tokens = non_cache_hit_tokens - cache_hit_tokens - - prompt_cost = float(non_cache_hit_tokens) * model_info["input_cost_per_token"] - - _cache_read_input_token_cost = model_info.get("cache_read_input_token_cost") - if ( - _cache_read_input_token_cost is not None - and usage.prompt_tokens_details - and usage.prompt_tokens_details.cached_tokens - ): - prompt_cost += ( - float(usage.prompt_tokens_details.cached_tokens) - * _cache_read_input_token_cost - ) - - ### CACHE WRITING COST - _cache_creation_input_token_cost = model_info.get("cache_creation_input_token_cost") - if _cache_creation_input_token_cost is not None: - prompt_cost += ( - float(usage._cache_creation_input_tokens) * _cache_creation_input_token_cost - ) - - ## CALCULATE OUTPUT COST - completion_cost = usage["completion_tokens"] * model_info["output_cost_per_token"] - - return prompt_cost, completion_cost + return generic_cost_per_token( + model=model, usage=usage, custom_llm_provider="anthropic" + ) diff --git a/litellm/llms/deepseek/cost_calculator.py b/litellm/llms/deepseek/cost_calculator.py new file mode 100644 index 00000000000..0f4490cb3df --- /dev/null +++ b/litellm/llms/deepseek/cost_calculator.py @@ -0,0 +1,21 @@ +""" +Cost calculator for DeepSeek Chat models. + +Handles prompt caching scenario. +""" + +from typing import Tuple + +from litellm.litellm_core_utils.llm_cost_calc.utils import generic_cost_per_token +from litellm.types.utils import Usage + + +def cost_per_token(model: str, usage: Usage) -> Tuple[float, float]: + """ + Calculates the cost per token for a given model, prompt tokens, and completion tokens. + + Follows the same logic as Anthropic's cost per token calculation. + """ + return generic_cost_per_token( + model=model, usage=usage, custom_llm_provider="deepseek" + ) diff --git a/litellm/llms/gemini/chat/transformation.py b/litellm/llms/gemini/chat/transformation.py new file mode 100644 index 00000000000..76fdddf154e --- /dev/null +++ b/litellm/llms/gemini/chat/transformation.py @@ -0,0 +1,131 @@ +from typing import Dict, List, Optional + +from litellm.litellm_core_utils.prompt_templates.factory import ( + convert_generic_image_chunk_to_openai_image_obj, + convert_to_anthropic_image_obj, +) +from litellm.types.llms.openai import AllMessageValues +from litellm.types.llms.vertex_ai import ContentType, PartType + +from ...vertex_ai.gemini.transformation import _gemini_convert_messages_with_history +from ...vertex_ai.gemini.vertex_and_google_ai_studio_gemini import VertexGeminiConfig + + +class GoogleAIStudioGeminiConfig( + VertexGeminiConfig +): # key diff from VertexAI - 'frequency_penalty' and 'presence_penalty' not supported + """ + Reference: https://ai.google.dev/api/rest/v1beta/GenerationConfig + + The class `GoogleAIStudioGeminiConfig` provides configuration for the Google AI Studio's Gemini API interface. Below are the parameters: + + - `temperature` (float): This controls the degree of randomness in token selection. + + - `max_output_tokens` (integer): This sets the limitation for the maximum amount of token in the text output. In this case, the default value is 256. + + - `top_p` (float): The tokens are selected from the most probable to the least probable until the sum of their probabilities equals the `top_p` value. Default is 0.95. + + - `top_k` (integer): The value of `top_k` determines how many of the most probable tokens are considered in the selection. For example, a `top_k` of 1 means the selected token is the most probable among all tokens. The default value is 40. + + - `response_mime_type` (str): The MIME type of the response. The default value is 'text/plain'. Other values - `application/json`. + + - `response_schema` (dict): Optional. Output response schema of the generated candidate text when response mime type can have schema. Schema can be objects, primitives or arrays and is a subset of OpenAPI schema. If set, a compatible response_mime_type must also be set. Compatible mimetypes: application/json: Schema for JSON response. + + - `candidate_count` (int): Number of generated responses to return. + + - `stop_sequences` (List[str]): The set of character sequences (up to 5) that will stop output generation. If specified, the API will stop at the first appearance of a stop sequence. The stop sequence will not be included as part of the response. + + Note: Please make sure to modify the default parameters as required for your use case. + """ + + temperature: Optional[float] = None + max_output_tokens: Optional[int] = None + top_p: Optional[float] = None + top_k: Optional[int] = None + response_mime_type: Optional[str] = None + response_schema: Optional[dict] = None + candidate_count: Optional[int] = None + stop_sequences: Optional[list] = None + + def __init__( + self, + temperature: Optional[float] = None, + max_output_tokens: Optional[int] = None, + top_p: Optional[float] = None, + top_k: Optional[int] = None, + response_mime_type: Optional[str] = None, + response_schema: Optional[dict] = None, + candidate_count: Optional[int] = None, + stop_sequences: Optional[list] = None, + ) -> None: + locals_ = locals() + for key, value in locals_.items(): + if key != "self" and value is not None: + setattr(self.__class__, key, value) + + @classmethod + def get_config(cls): + return super().get_config() + + def get_supported_openai_params(self, model: str) -> List[str]: + return [ + "temperature", + "top_p", + "max_tokens", + "max_completion_tokens", + "stream", + "tools", + "tool_choice", + "functions", + "response_format", + "n", + "stop", + "logprobs", + ] + + def map_openai_params( + self, + non_default_params: Dict, + optional_params: Dict, + model: str, + drop_params: bool, + ) -> Dict: + + # drop frequency_penalty and presence_penalty + if "frequency_penalty" in non_default_params: + del non_default_params["frequency_penalty"] + if "presence_penalty" in non_default_params: + del non_default_params["presence_penalty"] + return super().map_openai_params( + model=model, + non_default_params=non_default_params, + optional_params=optional_params, + drop_params=drop_params, + ) + + def _transform_messages( + self, messages: List[AllMessageValues] + ) -> List[ContentType]: + """ + Google AI Studio Gemini does not support image urls in messages. + """ + for message in messages: + _message_content = message.get("content") + if _message_content is not None and isinstance(_message_content, list): + _parts: List[PartType] = [] + for element in _message_content: + if element.get("type") == "image_url": + img_element = element + _image_url: Optional[str] = None + if isinstance(img_element.get("image_url"), dict): + _image_url = img_element["image_url"].get("url") # type: ignore + else: + _image_url = img_element.get("image_url") # type: ignore + if _image_url and "https://" in _image_url: + image_obj = convert_to_anthropic_image_obj(_image_url) + img_element["image_url"] = ( # type: ignore + convert_generic_image_chunk_to_openai_image_obj( + image_obj + ) + ) + return _gemini_convert_messages_with_history(messages=messages) diff --git a/litellm/llms/gemini/context_caching/README.md b/litellm/llms/gemini/context_caching/README.md new file mode 100644 index 00000000000..fce0b9d4942 --- /dev/null +++ b/litellm/llms/gemini/context_caching/README.md @@ -0,0 +1 @@ +[Go here for the Gemini Context Caching code](../../vertex_ai/context_caching/) \ No newline at end of file diff --git a/litellm/llms/gemini/cost_calculator.py b/litellm/llms/gemini/cost_calculator.py new file mode 100644 index 00000000000..5497640d9cc --- /dev/null +++ b/litellm/llms/gemini/cost_calculator.py @@ -0,0 +1,21 @@ +""" +This file is used to calculate the cost of the Gemini API. + +Handles the context caching for Gemini API. +""" + +from typing import Tuple + +from litellm.litellm_core_utils.llm_cost_calc.utils import generic_cost_per_token +from litellm.types.utils import Usage + + +def cost_per_token(model: str, usage: Usage) -> Tuple[float, float]: + """ + Calculates the cost per token for a given model, prompt tokens, and completion tokens. + + Follows the same logic as Anthropic's cost per token calculation. + """ + return generic_cost_per_token( + model=model, usage=usage, custom_llm_provider="gemini" + ) diff --git a/litellm/llms/vertex_ai/context_caching/transformation.py b/litellm/llms/vertex_ai/context_caching/transformation.py index 55203196e01..83c15029b23 100644 --- a/litellm/llms/vertex_ai/context_caching/transformation.py +++ b/litellm/llms/vertex_ai/context_caching/transformation.py @@ -10,13 +10,43 @@ from litellm.types.llms.openai import AllMessageValues from litellm.types.llms.vertex_ai import CachedContentRequestBody from litellm.utils import is_cached_message -from ..common_utils import VertexAIError, get_supports_system_message +from ..common_utils import get_supports_system_message from ..gemini.transformation import ( _gemini_convert_messages_with_history, _transform_system_message, ) +def get_first_continuous_block_idx( + filtered_messages: List[Tuple[int, AllMessageValues]] # (idx, message) +) -> int: + """ + Find the array index that ends the first continuous sequence of message blocks. + + Args: + filtered_messages: List of tuples containing (index, message) pairs + + Returns: + int: The array index where the first continuous sequence ends + """ + if not filtered_messages: + return -1 + + if len(filtered_messages) == 1: + return 0 + + current_value = filtered_messages[0][0] + + # Search forward through the array indices + for i in range(1, len(filtered_messages)): + if filtered_messages[i][0] != current_value + 1: + return i - 1 + current_value = filtered_messages[i][0] + + # If we made it through the whole list, return the last index + return len(filtered_messages) - 1 + + def separate_cached_messages( messages: List[AllMessageValues], ) -> Tuple[List[AllMessageValues], List[AllMessageValues]]: @@ -41,22 +71,11 @@ def separate_cached_messages( filtered_messages.append((idx, message)) # Validate only one block of continuous cached messages - if len(filtered_messages) > 1: - expected_idx = filtered_messages[0][0] + 1 - for idx, _ in filtered_messages[1:]: - if idx != expected_idx: - raise VertexAIError( - status_code=422, - message="Gemini Context Caching only supports 1 message/block of continuous messages. Your idx, messages were - {}".format( - filtered_messages - ), - ) - expected_idx += 1 - + last_continuous_block_idx = get_first_continuous_block_idx(filtered_messages) # Separate messages based on the block of cached messages - if filtered_messages: + if filtered_messages and last_continuous_block_idx is not None: first_cached_idx = filtered_messages[0][0] - last_cached_idx = filtered_messages[-1][0] + last_cached_idx = filtered_messages[last_continuous_block_idx][0] cached_messages = messages[first_cached_idx : last_cached_idx + 1] non_cached_messages = ( diff --git a/litellm/litellm_core_utils/llm_cost_calc/google.py b/litellm/llms/vertex_ai/cost_calculator.py similarity index 97% rename from litellm/litellm_core_utils/llm_cost_calc/google.py rename to litellm/llms/vertex_ai/cost_calculator.py index 95c79819b7f..fd238860455 100644 --- a/litellm/litellm_core_utils/llm_cost_calc/google.py +++ b/litellm/llms/vertex_ai/cost_calculator.py @@ -4,6 +4,7 @@ from typing import Literal, Optional, Tuple, Union import litellm from litellm import verbose_logger +from litellm.litellm_core_utils.llm_cost_calc.utils import _is_above_128k """ Gemini pricing covers: @@ -22,12 +23,6 @@ Google AI Studio -> token based pricing models_without_dynamic_pricing = ["gemini-1.0-pro", "gemini-pro"] -def _is_above_128k(tokens: float) -> bool: - if tokens > 128000: - return True - return False - - def cost_router( model: str, custom_llm_provider: str, @@ -47,8 +42,6 @@ def cost_router( or "codestral" in model ): return "cost_per_token" - elif custom_llm_provider == "gemini": - return "cost_per_token" elif custom_llm_provider == "vertex_ai" and ( call_type == "embedding" or call_type == "aembedding" ): diff --git a/litellm/llms/vertex_ai/gemini/vertex_and_google_ai_studio_gemini.py b/litellm/llms/vertex_ai/gemini/vertex_and_google_ai_studio_gemini.py index 1a08de93423..c799d47a684 100644 --- a/litellm/llms/vertex_ai/gemini/vertex_and_google_ai_studio_gemini.py +++ b/litellm/llms/vertex_ai/gemini/vertex_and_google_ai_studio_gemini.py @@ -26,10 +26,6 @@ import litellm.litellm_core_utils import litellm.litellm_core_utils.litellm_logging from litellm import verbose_logger from litellm.litellm_core_utils.core_helpers import map_finish_reason -from litellm.litellm_core_utils.prompt_templates.factory import ( - convert_generic_image_chunk_to_openai_image_obj, - convert_to_anthropic_image_obj, -) from litellm.llms.base_llm.chat.transformation import BaseConfig, BaseLLMException from litellm.llms.custom_httpx.http_handler import ( AsyncHTTPHandler, @@ -52,7 +48,6 @@ from litellm.types.llms.vertex_ai import ( GenerateContentResponseBody, HttpxPartType, LogprobsResult, - PartType, ToolConfig, Tools, ) @@ -60,7 +55,9 @@ from litellm.types.utils import ( ChatCompletionTokenLogprob, ChoiceLogprobs, GenericStreamingChunk, + PromptTokensDetailsWrapper, TopLogprob, + Usage, ) from litellm.utils import CustomStreamWrapper, ModelResponse @@ -679,7 +676,7 @@ class VertexGeminiConfig(BaseConfig): model_response.choices = [choice] ## GET USAGE ## - usage = litellm.Usage( + usage = Usage( prompt_tokens=completion_response["usageMetadata"].get( "promptTokenCount", 0 ), @@ -717,7 +714,7 @@ class VertexGeminiConfig(BaseConfig): model_response.choices = [choice] ## GET USAGE ## - usage = litellm.Usage( + usage = Usage( prompt_tokens=completion_response["usageMetadata"].get( "promptTokenCount", 0 ), @@ -731,6 +728,35 @@ class VertexGeminiConfig(BaseConfig): return model_response + def _calculate_usage( + self, + completion_response: GenerateContentResponseBody, + ) -> Usage: + cached_tokens: Optional[int] = None + prompt_tokens_details: Optional[PromptTokensDetailsWrapper] = None + if "cachedContentTokenCount" in completion_response["usageMetadata"]: + cached_tokens = completion_response["usageMetadata"][ + "cachedContentTokenCount" + ] + + if cached_tokens is not None: + prompt_tokens_details = PromptTokensDetailsWrapper( + cached_tokens=cached_tokens, + ) + ## GET USAGE ## + usage = Usage( + prompt_tokens=completion_response["usageMetadata"].get( + "promptTokenCount", 0 + ), + completion_tokens=completion_response["usageMetadata"].get( + "candidatesTokenCount", 0 + ), + total_tokens=completion_response["usageMetadata"].get("totalTokenCount", 0), + prompt_tokens_details=prompt_tokens_details, + ) + + return usage + def transform_response( self, model: str, @@ -854,19 +880,7 @@ class VertexGeminiConfig(BaseConfig): model_response.choices.append(choice) - ## GET USAGE ## - usage = litellm.Usage( - prompt_tokens=completion_response["usageMetadata"].get( - "promptTokenCount", 0 - ), - completion_tokens=completion_response["usageMetadata"].get( - "candidatesTokenCount", 0 - ), - total_tokens=completion_response["usageMetadata"].get( - "totalTokenCount", 0 - ), - ) - + usage = self._calculate_usage(completion_response=completion_response) setattr(model_response, "usage", usage) ## ADD GROUNDING METADATA ## @@ -943,126 +957,6 @@ class VertexGeminiConfig(BaseConfig): return default_headers -class GoogleAIStudioGeminiConfig( - VertexGeminiConfig -): # key diff from VertexAI - 'frequency_penalty' and 'presence_penalty' not supported - """ - Reference: https://ai.google.dev/api/rest/v1beta/GenerationConfig - - The class `GoogleAIStudioGeminiConfig` provides configuration for the Google AI Studio's Gemini API interface. Below are the parameters: - - - `temperature` (float): This controls the degree of randomness in token selection. - - - `max_output_tokens` (integer): This sets the limitation for the maximum amount of token in the text output. In this case, the default value is 256. - - - `top_p` (float): The tokens are selected from the most probable to the least probable until the sum of their probabilities equals the `top_p` value. Default is 0.95. - - - `top_k` (integer): The value of `top_k` determines how many of the most probable tokens are considered in the selection. For example, a `top_k` of 1 means the selected token is the most probable among all tokens. The default value is 40. - - - `response_mime_type` (str): The MIME type of the response. The default value is 'text/plain'. Other values - `application/json`. - - - `response_schema` (dict): Optional. Output response schema of the generated candidate text when response mime type can have schema. Schema can be objects, primitives or arrays and is a subset of OpenAPI schema. If set, a compatible response_mime_type must also be set. Compatible mimetypes: application/json: Schema for JSON response. - - - `candidate_count` (int): Number of generated responses to return. - - - `stop_sequences` (List[str]): The set of character sequences (up to 5) that will stop output generation. If specified, the API will stop at the first appearance of a stop sequence. The stop sequence will not be included as part of the response. - - Note: Please make sure to modify the default parameters as required for your use case. - """ - - temperature: Optional[float] = None - max_output_tokens: Optional[int] = None - top_p: Optional[float] = None - top_k: Optional[int] = None - response_mime_type: Optional[str] = None - response_schema: Optional[dict] = None - candidate_count: Optional[int] = None - stop_sequences: Optional[list] = None - - def __init__( - self, - temperature: Optional[float] = None, - max_output_tokens: Optional[int] = None, - top_p: Optional[float] = None, - top_k: Optional[int] = None, - response_mime_type: Optional[str] = None, - response_schema: Optional[dict] = None, - candidate_count: Optional[int] = None, - stop_sequences: Optional[list] = None, - ) -> None: - locals_ = locals() - for key, value in locals_.items(): - if key != "self" and value is not None: - setattr(self.__class__, key, value) - - @classmethod - def get_config(cls): - return super().get_config() - - def get_supported_openai_params(self, model: str) -> List[str]: - return [ - "temperature", - "top_p", - "max_tokens", - "max_completion_tokens", - "stream", - "tools", - "tool_choice", - "functions", - "response_format", - "n", - "stop", - "logprobs", - ] - - def map_openai_params( - self, - non_default_params: Dict, - optional_params: Dict, - model: str, - drop_params: bool, - ) -> Dict: - - # drop frequency_penalty and presence_penalty - if "frequency_penalty" in non_default_params: - del non_default_params["frequency_penalty"] - if "presence_penalty" in non_default_params: - del non_default_params["presence_penalty"] - return super().map_openai_params( - model=model, - non_default_params=non_default_params, - optional_params=optional_params, - drop_params=drop_params, - ) - - def _transform_messages( - self, messages: List[AllMessageValues] - ) -> List[ContentType]: - """ - Google AI Studio Gemini does not support image urls in messages. - """ - for message in messages: - _message_content = message.get("content") - if _message_content is not None and isinstance(_message_content, list): - _parts: List[PartType] = [] - for element in _message_content: - if element.get("type") == "image_url": - img_element = element - _image_url: Optional[str] = None - if isinstance(img_element.get("image_url"), dict): - _image_url = img_element["image_url"].get("url") # type: ignore - else: - _image_url = img_element.get("image_url") # type: ignore - if _image_url and "https://" in _image_url: - image_obj = convert_to_anthropic_image_obj(_image_url) - img_element["image_url"] = ( # type: ignore - convert_generic_image_chunk_to_openai_image_obj( - image_obj - ) - ) - return _gemini_convert_messages_with_history(messages=messages) - - async def make_call( client: Optional[AsyncHTTPHandler], api_base: str, diff --git a/litellm/model_prices_and_context_window_backup.json b/litellm/model_prices_and_context_window_backup.json index 29604251df1..46949db5124 100644 --- a/litellm/model_prices_and_context_window_backup.json +++ b/litellm/model_prices_and_context_window_backup.json @@ -1944,6 +1944,8 @@ "max_output_tokens": 4096, "input_cost_per_token": 0.00000014, "input_cost_per_token_cache_hit": 0.000000014, + "cache_read_input_token_cost": 0.000000014, + "cache_creation_input_token_cost": 0.0, "output_cost_per_token": 0.00000028, "litellm_provider": "deepseek", "mode": "chat", @@ -3758,6 +3760,8 @@ "max_audio_length_hours": 8.4, "max_audio_per_prompt": 1, "max_pdf_size_mb": 30, + "cache_read_input_token_cost": 0.00000001875, + "cache_creation_input_token_cost": 0.000001, "input_cost_per_token": 0.000000075, "input_cost_per_token_above_128k_tokens": 0.00000015, "output_cost_per_token": 0.0000003, @@ -3783,6 +3787,8 @@ "max_audio_length_hours": 8.4, "max_audio_per_prompt": 1, "max_pdf_size_mb": 30, + "cache_read_input_token_cost": 0.00000001875, + "cache_creation_input_token_cost": 0.000001, "input_cost_per_token": 0.000000075, "input_cost_per_token_above_128k_tokens": 0.00000015, "output_cost_per_token": 0.0000003, @@ -3842,6 +3848,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 2000, "source": "https://ai.google.dev/pricing" @@ -3866,6 +3873,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 4000, "source": "https://ai.google.dev/pricing" @@ -3890,6 +3898,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 4000, "source": "https://ai.google.dev/pricing" diff --git a/litellm/types/llms/vertex_ai.py b/litellm/types/llms/vertex_ai.py index 0eca1c05454..d7b90f703ce 100644 --- a/litellm/types/llms/vertex_ai.py +++ b/litellm/types/llms/vertex_ai.py @@ -183,6 +183,7 @@ class UsageMetadata(TypedDict, total=False): promptTokenCount: int totalTokenCount: int candidatesTokenCount: int + cachedContentTokenCount: int class CachedContent(TypedDict, total=False): diff --git a/model_prices_and_context_window.json b/model_prices_and_context_window.json index 29604251df1..46949db5124 100644 --- a/model_prices_and_context_window.json +++ b/model_prices_and_context_window.json @@ -1944,6 +1944,8 @@ "max_output_tokens": 4096, "input_cost_per_token": 0.00000014, "input_cost_per_token_cache_hit": 0.000000014, + "cache_read_input_token_cost": 0.000000014, + "cache_creation_input_token_cost": 0.0, "output_cost_per_token": 0.00000028, "litellm_provider": "deepseek", "mode": "chat", @@ -3758,6 +3760,8 @@ "max_audio_length_hours": 8.4, "max_audio_per_prompt": 1, "max_pdf_size_mb": 30, + "cache_read_input_token_cost": 0.00000001875, + "cache_creation_input_token_cost": 0.000001, "input_cost_per_token": 0.000000075, "input_cost_per_token_above_128k_tokens": 0.00000015, "output_cost_per_token": 0.0000003, @@ -3783,6 +3787,8 @@ "max_audio_length_hours": 8.4, "max_audio_per_prompt": 1, "max_pdf_size_mb": 30, + "cache_read_input_token_cost": 0.00000001875, + "cache_creation_input_token_cost": 0.000001, "input_cost_per_token": 0.000000075, "input_cost_per_token_above_128k_tokens": 0.00000015, "output_cost_per_token": 0.0000003, @@ -3842,6 +3848,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 2000, "source": "https://ai.google.dev/pricing" @@ -3866,6 +3873,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 4000, "source": "https://ai.google.dev/pricing" @@ -3890,6 +3898,7 @@ "supports_function_calling": true, "supports_vision": true, "supports_response_schema": true, + "supports_prompt_caching": true, "tpm": 4000000, "rpm": 4000, "source": "https://ai.google.dev/pricing" diff --git a/tests/llm_translation/base_llm_unit_tests.py b/tests/llm_translation/base_llm_unit_tests.py index fbfa320af43..6df2000d1e6 100644 --- a/tests/llm_translation/base_llm_unit_tests.py +++ b/tests/llm_translation/base_llm_unit_tests.py @@ -5,6 +5,7 @@ import sys from typing import Any, Dict, List from unittest.mock import MagicMock, Mock, patch import os +import uuid sys.path.insert( 0, os.path.abspath("../..") @@ -45,6 +46,7 @@ def _usage_format_tests(usage: litellm.Usage): } ``` """ + print(f"usage={usage}") assert usage.total_tokens == usage.prompt_tokens + usage.completion_tokens assert usage.prompt_tokens > usage.prompt_tokens_details.cached_tokens @@ -342,54 +344,75 @@ class BaseLLMChatTest(ABC): print("Model does not support prompt caching") pytest.skip("Model does not support prompt caching") - try: - for _ in range(2): - response = self.completion_function( - **base_completion_call_args, - messages=[ - # System Message - { - "role": "system", - "content": [ - { - "type": "text", - "text": "Here is the full text of a complex legal agreement" - * 400, - "cache_control": {"type": "ephemeral"}, - } - ], - }, - # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. - { - "role": "user", - "content": [ - { - "type": "text", - "text": "What are the key terms and conditions in this agreement?", - "cache_control": {"type": "ephemeral"}, - } - ], - }, - { - "role": "assistant", - "content": "Certainly! the key terms and conditions are the following: the contract is 1 year long for $10/mo", - }, - # The final turn is marked with cache-control, for continuing in followups. - { - "role": "user", - "content": [ - { - "type": "text", - "text": "What are the key terms and conditions in this agreement?", - "cache_control": {"type": "ephemeral"}, - } - ], - }, - ], - max_tokens=10, - ) + uuid_str = str(uuid.uuid4()) + messages = [ + # System Message + { + "role": "system", + "content": [ + { + "type": "text", + "text": "Here is the full text of a complex legal agreement {}".format( + uuid_str + ) + * 400, + "cache_control": {"type": "ephemeral"}, + } + ], + }, + # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }, + { + "role": "assistant", + "content": "Certainly! the key terms and conditions are the following: the contract is 1 year long for $10/mo", + }, + # The final turn is marked with cache-control, for continuing in followups. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }, + ] - _usage_format_tests(response.usage) + try: + ## call 1 + response = self.completion_function( + **base_completion_call_args, + messages=messages, + max_tokens=10, + ) + + initial_cost = response._hidden_params["response_cost"] + ## call 2 + response = self.completion_function( + **base_completion_call_args, + messages=messages, + max_tokens=10, + ) + + cached_cost = response._hidden_params["response_cost"] + + assert ( + cached_cost <= initial_cost + ), "Cached cost={} should be less than initial cost={}".format( + cached_cost, initial_cost + ) + + _usage_format_tests(response.usage) print("response=", response) print("response.usage=", response.usage) diff --git a/tests/llm_translation/test_gemini.py b/tests/llm_translation/test_gemini.py index 23b6f7dde7c..9b8d0e5e8a2 100644 --- a/tests/llm_translation/test_gemini.py +++ b/tests/llm_translation/test_gemini.py @@ -1,9 +1,21 @@ +import os +import sys + +import pytest + +sys.path.insert( + 0, os.path.abspath("../..") +) # Adds the parent directory to the system path + from base_llm_unit_tests import BaseLLMChatTest +from litellm.llms.vertex_ai.context_caching.transformation import ( + separate_cached_messages, +) class TestGoogleAIStudioGemini(BaseLLMChatTest): def get_base_completion_call_args(self) -> dict: - return {"model": "gemini/gemini-1.5-flash"} + return {"model": "gemini/gemini-1.5-flash-002"} def test_tool_call_no_arguments(self, tool_call_no_arguments): """Test that tool calls with no arguments is translated correctly. Relevant issue: https://github.com/BerriAI/litellm/issues/6833""" @@ -13,3 +25,50 @@ class TestGoogleAIStudioGemini(BaseLLMChatTest): result = convert_to_gemini_tool_call_invoke(tool_call_no_arguments) print(result) + + +def test_gemini_context_caching_separate_messages(): + messages = [ + # System Message + { + "role": "system", + "content": [ + { + "type": "text", + "text": "Here is the full text of a complex legal agreement" * 400, + "cache_control": {"type": "ephemeral"}, + } + ], + }, + # marked for caching with the cache_control parameter, so that this checkpoint can read from the previous cache. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }, + { + "role": "assistant", + "content": "Certainly! the key terms and conditions are the following: the contract is 1 year long for $10/mo", + }, + # The final turn is marked with cache-control, for continuing in followups. + { + "role": "user", + "content": [ + { + "type": "text", + "text": "What are the key terms and conditions in this agreement?", + "cache_control": {"type": "ephemeral"}, + } + ], + }, + ] + cached_messages, non_cached_messages = separate_cached_messages(messages) + print(cached_messages) + print(non_cached_messages) + assert len(cached_messages) > 0, "Cached messages should be present" + assert len(non_cached_messages) > 0, "Non-cached messages should be present" diff --git a/tests/llm_translation/test_max_completion_tokens.py b/tests/llm_translation/test_max_completion_tokens.py index 905c60342d2..53a1d4c555c 100644 --- a/tests/llm_translation/test_max_completion_tokens.py +++ b/tests/llm_translation/test_max_completion_tokens.py @@ -353,9 +353,9 @@ def test_all_model_configs(): from litellm.llms.vertex_ai.gemini.vertex_and_google_ai_studio_gemini import ( VertexAIConfig, - GoogleAIStudioGeminiConfig, VertexGeminiConfig, ) + from litellm.llms.gemini.chat.transformation import GoogleAIStudioGeminiConfig assert "max_completion_tokens" in VertexAIConfig().get_supported_openai_params() diff --git a/tests/local_testing/test_completion_cost.py b/tests/local_testing/test_completion_cost.py index 8a0fbff2f8f..6b24e8edbb4 100644 --- a/tests/local_testing/test_completion_cost.py +++ b/tests/local_testing/test_completion_cost.py @@ -1163,14 +1163,19 @@ def test_completion_cost_azure_common_deployment_name(): assert "azure/gpt-4" == mock_client.call_args.kwargs["base_model"] -def test_completion_cost_anthropic_prompt_caching(): +@pytest.mark.parametrize( + "model, custom_llm_provider", + [ + ("claude-3-5-sonnet-20240620", "anthropic"), + ("gemini/gemini-1.5-flash-001", "gemini"), + ], +) +def test_completion_cost_prompt_caching(model, custom_llm_provider): os.environ["LITELLM_LOCAL_MODEL_COST_MAP"] = "True" litellm.model_cost = litellm.get_model_cost_map(url="") from litellm.utils import Choices, Message, ModelResponse, Usage - model = "anthropic/claude-3-5-sonnet-20240620" - ## WRITE TO CACHE ## (MORE EXPENSIVE) response_1 = ModelResponse( id="chatcmpl-3f427194-0840-4d08-b571-56bfe38a5424", @@ -1187,7 +1192,7 @@ def test_completion_cost_anthropic_prompt_caching(): ) ], created=1725036547, - model="claude-3-5-sonnet-20240620", + model=model, object="chat.completion", system_fingerprint=None, usage=Usage( @@ -1203,7 +1208,7 @@ def test_completion_cost_anthropic_prompt_caching(): cost_1 = completion_cost(model=model, completion_response=response_1) _model_info = litellm.get_model_info( - model="claude-3-5-sonnet-20240620", custom_llm_provider="anthropic" + model=model, custom_llm_provider=custom_llm_provider ) expected_cost = ( ( @@ -1211,11 +1216,12 @@ def test_completion_cost_anthropic_prompt_caching(): - response_1.usage.prompt_tokens_details.cached_tokens ) * _model_info["input_cost_per_token"] - + response_1.usage.prompt_tokens_details.cached_tokens + + (response_1.usage.prompt_tokens_details.cached_tokens or 0) * _model_info["cache_read_input_token_cost"] - + response_1.usage.cache_creation_input_tokens + + (response_1.usage.cache_creation_input_tokens or 0) * _model_info["cache_creation_input_token_cost"] - + response_1.usage.completion_tokens * _model_info["output_cost_per_token"] + + (response_1.usage.completion_tokens or 0) + * _model_info["output_cost_per_token"] ) # Cost of processing (non-cache hit + cache hit) + Cost of cache-writing (cache writing) assert round(expected_cost, 5) == round(cost_1, 5) @@ -1238,7 +1244,7 @@ def test_completion_cost_anthropic_prompt_caching(): ) ], created=1725036547, - model="claude-3-5-sonnet-20240620", + model=model, object="chat.completion", system_fingerprint=None, usage=Usage( @@ -2437,7 +2443,7 @@ def test_completion_cost_params_2(): def test_completion_cost_params_gemini_3(): from litellm.utils import Choices, Message, ModelResponse, Usage - from litellm.litellm_core_utils.llm_cost_calc.google import cost_per_character + from litellm.llms.vertex_ai.cost_calculator import cost_per_character os.environ["LITELLM_LOCAL_MODEL_COST_MAP"] = "True" litellm.model_cost = litellm.get_model_cost_map(url="")