From e8783f6a33fe4049aaedff2e2940cc9b0ba5b011 Mon Sep 17 00:00:00 2001 From: Adithya Suresh Date: Mon, 24 Mar 2025 15:40:26 -0700 Subject: [PATCH] Handle cache token counts being none --- src/pipecat/services/anthropic/llm.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/src/pipecat/services/anthropic/llm.py b/src/pipecat/services/anthropic/llm.py index 3e369075a..fd646b21c 100644 --- a/src/pipecat/services/anthropic/llm.py +++ b/src/pipecat/services/anthropic/llm.py @@ -253,14 +253,24 @@ class AnthropicLLMService(LLMService): if hasattr(event.message.usage, "output_tokens") else 0 ) - if hasattr(event.message.usage, "cache_creation_input_tokens"): - cache_creation_input_tokens += ( - event.message.usage.cache_creation_input_tokens + cache_creation_input_tokens += ( + event.message.usage.cache_creation_input_tokens + if ( + hasattr(event.message.usage, "cache_creation_input_tokens") + and event.message.usage.cache_creation_input_tokens is not None ) - logger.debug(f"Cache creation input tokens: {cache_creation_input_tokens}") - if hasattr(event.message.usage, "cache_read_input_tokens"): - cache_read_input_tokens += event.message.usage.cache_read_input_tokens - logger.debug(f"Cache read input tokens: {cache_read_input_tokens}") + else 0 + ) + logger.debug(f"Cache creation input tokens: {cache_creation_input_tokens}") + cache_read_input_tokens += ( + event.message.usage.cache_read_input_tokens + if ( + hasattr(event.message.usage, "cache_read_input_tokens") + and event.message.usage.cache_read_input_tokens is not None + ) + else 0 + ) + logger.debug(f"Cache read input tokens: {cache_read_input_tokens}") total_input_tokens = ( prompt_tokens + cache_creation_input_tokens + cache_read_input_tokens )