MCPcopy Index your code
hub / github.com/Noumena-Network/code / addToTotalModelUsage

Function addToTotalModelUsage

src/cost-tracker.ts:250–276  ·  view source on GitHub ↗
(
  cost: number,
  usage: Usage,
  model: string,
)

Source from the content-addressed store, hash-verified

248}
249
250function addToTotalModelUsage(
251 cost: number,
252 usage: Usage,
253 model: string,
254): ModelUsage {
255 const modelUsage = getUsageForModel(model) ?? {
256 inputTokens: 0,
257 outputTokens: 0,
258 cacheReadInputTokens: 0,
259 cacheCreationInputTokens: 0,
260 webSearchRequests: 0,
261 costUSD: 0,
262 contextWindow: 0,
263 maxOutputTokens: 0,
264 }
265
266 modelUsage.inputTokens += usage.input_tokens
267 modelUsage.outputTokens += usage.output_tokens
268 modelUsage.cacheReadInputTokens += usage.cache_read_input_tokens ?? 0
269 modelUsage.cacheCreationInputTokens += usage.cache_creation_input_tokens ?? 0
270 modelUsage.webSearchRequests +=
271 usage.server_tool_use?.web_search_requests ?? 0
272 modelUsage.costUSD += cost
273 modelUsage.contextWindow = getContextWindowForModel(model, getSdkBetas())
274 modelUsage.maxOutputTokens = getModelMaxOutputTokens(model).default
275 return modelUsage
276}
277
278export function addToTotalSessionCost(
279 cost: number,

Callers 1

addToTotalSessionCostFunction · 0.85

Calls 4

getUsageForModelFunction · 0.85
getContextWindowForModelFunction · 0.85
getSdkBetasFunction · 0.85
getModelMaxOutputTokensFunction · 0.85

Tested by

no test coverage detected