用途:监控 Groq LPU 推理的延迟、token 吞吐、速率限制利用率和成本。由于 Groq 的核心优势是速度(280-560 tok/s),延迟退化是最高优先级信号。API 每次响应都会返回丰富的计时元数据(queue_time、prompt_time、completion_time)和速率限制响应头。
前提条件:拥有 Groq 账户并将 API 密钥导出为 GROQ_API_KEY 环境变量(groq-sdk 客户端会自动读取,new Groq());安装 Node.js 及 groq-sdk 和 prom-client(npm install groq-sdk prom-client);准备 Prometheus 抓取目标,可选 Grafana 用于仪表盘面板。
主要能力:跟踪 TTFT(首 token 时间,直方图,客户端计时)、Tokens/秒(仪表,来自 usage.completion_time)、总延迟(直方图)、速率限制剩余量(仪表,来自 x-ratelimit-remaining-* 响应头)、token 用量(计数器,usage.total_tokens)、按错误码统计错误率(计数器)、预估成本(计数器,token 数乘以模型价格)。
使用方式:按六步依次实施。步骤 1-2 是核心埋点循环——包装客户端,再从每次调用喂给 Prometheus 指标集;步骤 3-6 叠加速率限制跟踪、告警、结构化日志和仪表盘。用 trackedCompletion 包装 groq.chat.completions.create,在同一路径捕获延迟、token、队列时间和预估成本;注册直方图(延迟)、计数器(token、成本、错误)和仪表(吞吐、速率限制剩余),由 emitMetrics 喂入;从每个响应解析 x-ratelimit-remaining-* 到仪表,以便在 429 之前而非之后告警;配置针对 Groq 亚 200ms、280+ tok/s 基线的延迟/速率限制/吞吐/错误/成本告警;每请求输出一行 JSON 结构化日志;仪表盘面板包括 TTFT 分布、tokens/秒、速率限制利用率、请求量、错误率、成本和队列时间。
输出:返回 { result, metrics } 的 trackedCompletion 包装器(metrics 为 GroqMetrics 对象);Prometheus 指标集 groq_latency_ms(直方图)、groq_tokens_total / groq_cost_usd / groq_errors_total(计数器)、groq_tokens_per_second / groq_ratelimit_remaining(仪表);五条告警规则(GroqLatencyHigh、GroqRateLimitCritical、GroqThroughputDrop、GroqErrorRateHigh、GroqCostSpike);每请求一行结构化 JSON 日志和 7 面板仪表盘规格。
限制与错误处理:429 且 retry-after 高表示 RPM 或 TPM 耗尽,需实现请求队列;延迟峰值超过 2s 可能是模型过载或提示词过大,需减小提示词或换用更轻模型;503 表示 Groq 容量问题,需启用备用提供商回退;tokens/秒下降可能是未启用流式或提示词过大,启用流式可改善感知性能。完整代码见 references/implementation.md,示例见 references/examples.md。事故响应流程参见 groq-incident-runbook 技能。