@@ -2,6 +2,10 @@
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed DeepSeek prompt cache hits to be tracked from `prompt_cache_hit_tokens` in OpenAI-compatible usage responses ([#3880](https://github.com/badlogic/pi-mono/issues/3880)).
|
||||||
|
|
||||||
## [0.70.6] - 2026-04-28
|
## [0.70.6] - 2026-04-28
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|||||||
@@ -956,12 +956,13 @@ function parseChunkUsage(
|
|||||||
rawUsage: {
|
rawUsage: {
|
||||||
prompt_tokens?: number;
|
prompt_tokens?: number;
|
||||||
completion_tokens?: number;
|
completion_tokens?: number;
|
||||||
|
prompt_cache_hit_tokens?: number;
|
||||||
prompt_tokens_details?: { cached_tokens?: number; cache_write_tokens?: number };
|
prompt_tokens_details?: { cached_tokens?: number; cache_write_tokens?: number };
|
||||||
},
|
},
|
||||||
model: Model<"openai-completions">,
|
model: Model<"openai-completions">,
|
||||||
): AssistantMessage["usage"] {
|
): AssistantMessage["usage"] {
|
||||||
const promptTokens = rawUsage.prompt_tokens || 0;
|
const promptTokens = rawUsage.prompt_tokens || 0;
|
||||||
const reportedCachedTokens = rawUsage.prompt_tokens_details?.cached_tokens || 0;
|
const reportedCachedTokens = rawUsage.prompt_tokens_details?.cached_tokens ?? rawUsage.prompt_cache_hit_tokens ?? 0;
|
||||||
const cacheWriteTokens = rawUsage.prompt_tokens_details?.cache_write_tokens || 0;
|
const cacheWriteTokens = rawUsage.prompt_tokens_details?.cache_write_tokens || 0;
|
||||||
|
|
||||||
// Normalize to pi-ai semantics:
|
// Normalize to pi-ai semantics:
|
||||||
|
|||||||
Reference in New Issue
Block a user