/** * Token 统计追踪器 * * 使用内存队列批量写入 SQLite,解决高并发下的写入压力。 * SQLite 在 WAL 模式下可支持较好的并发读,写操作由 better-sqlite3 * 内置 mutex 序列化,但仍建议通过队列批量聚合减少事务数量。 * * 统计粒度:model_id × date(每天每个模型一行) * 字段:in_token, out_token, total_token */ /** * 追踪一次请求的 token 使用量(异步,不阻塞响应) * @param modelId 模型数据库 ID * @param usage OpenAI 格式的 usage 对象: { prompt_tokens, completion_tokens, total_tokens } */ export declare function trackTokenUsage(modelId: number | undefined, usage: { prompt_tokens?: number; completion_tokens?: number; total_tokens?: number; } | null): void; /** * 仅追踪一次 API 调用次数(不依赖 token 数据) * 在请求成功时调用,确保每成功一次都记录 * @param modelId 模型数据库 ID */ export declare function trackApiCall(modelId: number | undefined): void; /** * 解析 SSE 流式响应中的最后一帧 usage * 在流结束后调用,提取累积的 token 计数 */ export declare function extractUsageFromSSE(sseText: string): { prompt_tokens?: number; completion_tokens?: number; total_tokens?: number; } | null; //# sourceMappingURL=tokenTracker.d.ts.map