跳到主要内容

开发指南

指标埋点策略

必埋点

  • 每次 LLM 调用:model、input_tokens、output_tokens、duration、status
  • 每次工具调用:tool_name、duration、status
  • 每次检索(若 RAG):query_len、num_results、duration

可选埋点

  • Prompt 哈希(用于去重与聚类)
  • 用户/租户 ID(用于多租户成本分摊)
  • 业务标签(如 feature、experiment)

Trace 设计

Span 层级

request
├── rag.retrieve
├── llm.chat
│ ├── llm.prompt_build
│ └── llm.inference
└── tool.search

敏感信息处理

  • 不记录完整 Prompt/Response 到 Trace(可截断或哈希)
  • 按合规要求决定是否存 PII
  • 日志与 Trace 输出前做脱敏

与现有系统集成

Prometheus

  • 自定义 Counter、Histogram 暴露 LLM 调用指标
  • 推理服务(vLLM、TGI)通常已暴露,可 scrape 聚合

Grafana

  • 导入或自建 Dashboard:QPS、延迟、Token、错误率
  • 配置告警规则

日志系统

  • 结构化 JSON 日志,含 trace_id
  • 与 ELK、Loki、CloudWatch 等对接

成本分摊

  • 按 user_id、tenant_id、project 聚合 Token
  • 结合模型单价计算费用
  • 支持用量限制与告警

参考