Skip to content

Commit 427fbec

Browse files
committed
chore: resolve merge conflicts from main
- Resolved conflicts in calculateApiCostOpenAI signature (added reasoningTokens param) - Updated cerebras.ts to use new cost calculation with reasoning tokens - Updated groq.ts to use new cost calculation with reasoning tokens - Updated lite-llm.ts to use new cost calculation with reasoning tokens - Updated openai-native.ts to use new cost calculation with reasoning tokens - All providers now properly handle reasoning token costs
1 parent d6e594e commit 427fbec

File tree

5 files changed

+10
-15
lines changed

5 files changed

+10
-15
lines changed

src/api/providers/cerebras.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ export class CerebrasHandler extends BaseProvider implements SingleCompletionHan
331331
const { info } = this.getModel()
332332
// Use actual token usage from the last request
333333
const { inputTokens, outputTokens } = this.lastUsage
334-
const { totalCost } = calculateApiCostOpenAI(info, inputTokens, outputTokens)
334+
const totalCost = calculateApiCostOpenAI(info, inputTokens, outputTokens)
335335
return totalCost
336336
}
337337
}

src/api/providers/groq.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export class GroqHandler extends BaseOpenAiCompatibleProvider<GroqModelId> {
6464
const cacheWriteTokens = 0
6565

6666
// Calculate cost using OpenAI-compatible cost calculation
67-
const { totalCost } = calculateApiCostOpenAI(info, inputTokens, outputTokens, cacheWriteTokens, cacheReadTokens)
67+
const totalCost = calculateApiCostOpenAI(info, inputTokens, outputTokens, cacheWriteTokens, cacheReadTokens)
6868

6969
yield {
7070
type: "usage",

src/api/providers/lite-llm.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ export class LiteLLMHandler extends RouterProvider implements SingleCompletionHa
165165
(lastUsage as any).prompt_cache_hit_tokens ||
166166
0
167167

168-
const { totalCost } = calculateApiCostOpenAI(
168+
const totalCost = calculateApiCostOpenAI(
169169
info,
170170
lastUsage.prompt_tokens || 0,
171171
lastUsage.completion_tokens || 0,

src/api/providers/openai-native.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ export class OpenAiNativeHandler extends BaseProvider implements SingleCompletio
100100

101101
// Pass total input tokens directly to calculateApiCostOpenAI
102102
// The function handles subtracting both cache reads and writes internally
103-
const { totalCost } = calculateApiCostOpenAI(
103+
const totalCost = calculateApiCostOpenAI(
104104
effectiveInfo,
105105
totalInputTokens,
106106
totalOutputTokens,

src/shared/cost.ts

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,20 +12,15 @@ function calculateApiCostInternal(
1212
outputTokens: number,
1313
cacheCreationInputTokens: number,
1414
cacheReadInputTokens: number,
15-
totalInputTokens: number,
16-
totalOutputTokens: number,
17-
): ApiCostResult {
15+
totalInputTokens: number, // kept for potential future use
16+
totalOutputTokens: number, // kept for potential future use
17+
): number {
1818
const cacheWritesCost = ((modelInfo.cacheWritesPrice || 0) / 1_000_000) * cacheCreationInputTokens
1919
const cacheReadsCost = ((modelInfo.cacheReadsPrice || 0) / 1_000_000) * cacheReadInputTokens
2020
const baseInputCost = ((modelInfo.inputPrice || 0) / 1_000_000) * inputTokens
2121
const outputCost = ((modelInfo.outputPrice || 0) / 1_000_000) * outputTokens
2222
const totalCost = cacheWritesCost + cacheReadsCost + baseInputCost + outputCost
23-
24-
return {
25-
totalInputTokens,
26-
totalOutputTokens,
27-
totalCost,
28-
}
23+
return totalCost
2924
}
3025

3126
// For Anthropic compliant usage, the input tokens count does NOT include the
@@ -36,7 +31,7 @@ export function calculateApiCostAnthropic(
3631
outputTokens: number,
3732
cacheCreationInputTokens?: number,
3833
cacheReadInputTokens?: number,
39-
): ApiCostResult {
34+
): number {
4035
const cacheCreation = cacheCreationInputTokens || 0
4136
const cacheRead = cacheReadInputTokens || 0
4237

@@ -62,7 +57,7 @@ export function calculateApiCostOpenAI(
6257
outputTokens: number,
6358
cacheCreationInputTokens?: number,
6459
cacheReadInputTokens?: number,
65-
): ApiCostResult {
60+
): number {
6661
const cacheCreationInputTokensNum = cacheCreationInputTokens || 0
6762
const cacheReadInputTokensNum = cacheReadInputTokens || 0
6863
const nonCachedInputTokens = Math.max(0, inputTokens - cacheCreationInputTokensNum - cacheReadInputTokensNum)

0 commit comments

Comments
 (0)