@@ -326,18 +326,17 @@ def to_output(self, buffer: str, transformer: Any) -> LLMOutput:
326326 if self .tool_calls :
327327 output .tool_calls = self .tool_calls
328328
329- # Add usage stats if this is final
330- if self .usage_stats is not None :
331- output .usage = LLMUsage (
332- stop_reason = self .usage_stats ["stop_reason" ],
333- time_to_first_token = self .timing_stats ["time_to_first_token" ],
334- tokens_per_second = self .timing_stats ["tokens_per_second" ],
335- prompt_tokens = self .usage_stats ["prompt_tokens" ],
336- completion_tokens = self .usage_stats ["completion_tokens" ],
337- total_tokens = self .usage_stats ["total_tokens" ],
338- reasoning_time = self .timing_stats ["reasoning_time" ],
339- reasoning_tokens = self .timing_stats ["reasoning_tokens" ]
340- )
329+ # Add usage stats
330+ output .usage = LLMUsage (
331+ stop_reason = self .usage_stats ["stop_reason" ],
332+ time_to_first_token = self .timing_stats ["time_to_first_token" ] or 0.0 ,
333+ tokens_per_second = self .timing_stats ["tokens_per_second" ],
334+ prompt_tokens = self .usage_stats ["prompt_tokens" ],
335+ completion_tokens = self .usage_stats ["completion_tokens" ],
336+ total_tokens = self .usage_stats ["total_tokens" ],
337+ reasoning_time = self .timing_stats ["reasoning_time" ],
338+ reasoning_tokens = self .timing_stats ["reasoning_tokens" ]
339+ )
341340
342341 return output , buffer
343342
0 commit comments