diff --git a/cost.ts b/cost.ts index 4a509ba..912ffe5 100644 --- a/cost.ts +++ b/cost.ts @@ -166,7 +166,7 @@ export function getCostConfig(model: string): CostConfig { * Check Helicone costs with operator matching */ const exactMatch = heliconeCosts.get(normalizedModel); - if (exactMatch && exactMatch.operator === "equals") { + if (exactMatch?.operator === "equals") { return exactMatch.config; } @@ -229,5 +229,5 @@ export function calculateCost( (completion_tokens / 1_000_000) * cost.output; const total = inputCost + cachedCost + outputCost; - return total > 0 ? Number(total.toFixed(6)) : null; + return total > 0 ? Number.parseFloat(total.toFixed(6)) : null; } diff --git a/dashboard/app/api/metrics/route.ts b/dashboard/app/api/metrics/route.ts index d14b774..d5e552d 100644 --- a/dashboard/app/api/metrics/route.ts +++ b/dashboard/app/api/metrics/route.ts @@ -97,10 +97,10 @@ export async function GET(request: NextRequest) { summary: { totalRequests: Number.parseInt(summary.total_requests ?? '0'), totalTokens: Number.parseInt(summary.total_tokens_used ?? '0'), - totalCost: parseFloat(summary.total_cost ?? '0'), - avgResponseTime: parseFloat(summary.avg_response_time ?? '0'), - uniqueModels: Number.parseInt(summary), - uniqueClients: parseInt(summary.unique_clients ?? '0'), + totalCost: Number.parseFloat(summary.total_cost ?? '0'), + avgResponseTime: Number.parseFloat(summary.avg_response_time ?? '0'), + uniqueModels: Number.parseInt(summary.unique_models ?? '0'), + uniqueClients: Number.parseInt(summary.unique_clients ?? '0'), }, recentRequests, modelBreakdown, diff --git a/dashboard/components/ModelBreakdown.tsx b/dashboard/components/ModelBreakdown.tsx index 9de3074..bdb7a8c 100644 --- a/dashboard/components/ModelBreakdown.tsx +++ b/dashboard/components/ModelBreakdown.tsx @@ -42,8 +42,8 @@ export default function ModelBreakdown({ models }: ModelBreakdownProps) { {Number.parseInt(model.request_count).toLocaleString()} {Number.parseInt(model.total_tokens).toLocaleString()} - ${parseFloat(model.total_cost).toFixed(4)} - {Math.round(parseFloat(model.avg_response_time))}ms + ${Number.parseFloat(model.total_cost).toFixed(4)} + {Math.round(Number.parseFloat(model.avg_response_time))}ms ))} diff --git a/dashboard/components/RecentRequests.tsx b/dashboard/components/RecentRequests.tsx index 0fe57eb..dc9990a 100644 --- a/dashboard/components/RecentRequests.tsx +++ b/dashboard/components/RecentRequests.tsx @@ -60,7 +60,7 @@ export default function RecentRequests({ requests }: RecentRequestsProps) { - ${parseFloat(req.total_cost).toFixed(4)} + ${Number.parseFloat(req.total_cost).toFixed(4)} {req.response_time}ms