halfoff.dev文档
获取密钥
账户

用量与日志

查看每个 Half Off Dev 密钥花了多少钱,逐条检查请求的 token、延迟和错误,用请求 ID 追踪调用并核对余额。

半价省下的钱,要看得见才算数。Half Off Dev 会记录你所有密钥发出的每一个模型请求,通常在请求结束后几秒内就能查到。主要看这四个地方:

页面用途
概览按渠道分组和模型,跟踪消费、成功率和延迟的变化
日志逐条查看请求:token、扣费、耗时、错误
API 密钥对比各密钥的累计消费和最近使用时间
账单查看余额、入账记录和每日消费

概览仪表盘#

概览汇总所有密钥在最近 24 小时、7 天、30 天或 90 天的流量。

指标含义
消费该时段的扣费总额,以及对应的请求数
成功率成功请求的占比,以及失败请求数
P95 首字延迟首个 token 返回时间的 95 分位,附平均值
吞吐平均每秒输出的 token 数
缓存命中率输入 token 中来自提示缓存的比例
余额剩余金额,以及有效密钥数

汇总下方是消费和 token 的趋势图、按渠道分组 与 按模型 的拆分,以及把失败请求按错误类型归类的 错误分布。首字延迟和吞吐只统计流式请求。

日志#

日志按时间倒序列出模型请求,每页 50 条,点 加载更多 往前翻。可以按渠道分组、模型、状态(成功 或 失败)筛选;有多个密钥时,还能按 API 密钥筛选。

列内容
时间请求开始时间,悬停可看精确时间
模型模型 id,⇢ 表示流式请求
分组处理该请求的渠道分组
状态你收到的 HTTP 状态码
输入输入 token,含写入提示缓存的部分
已缓存从提示缓存读取的输入 token
输出输出 token,含推理 token
TTFT首字延迟(流式请求)
Tok/s每秒输出 token 数
扣费这次请求花了多少钱

点击一行可展开详情:请求 ID、所用 密钥、API 格式(anthropic、openai 或 gemini)、总 延迟、缓存写入 和 推理 token、缓存命中 率、失败时的 错误 类型,以及 会话亲和。最下方的 就此请求联系支持 会新建一个已填好请求 ID 的工单。

会话亲和#

会话亲和说明这个请求有没有和同一会话的其他轮次留在同一渠道上,这正是长对话能靠提示缓存省钱的前提。省多少,见提示缓存。

值含义
new会话的第一个请求
sticky后续轮次,留在了会话原来的渠道上,缓存得以复用
explicit按你的客户端发送的会话 id 归到一起
none没有可归属的会话

哪些请求会被记录#

  • 通过了密钥和余额检查的请求,无论成败都会记录。失败的请求会显示状态码和错误类型,扣费为 $0。
  • 在入口就被拒绝的请求不会记录,也不扣费:缺少或无效的密钥、请求体不是 JSON、未知模型、密钥无权调用的模型、余额为零、密钥超出频率限制。你的代码会直接收到错误。

日志保留 90 天。

请求 ID#

每个模型响应都带有 x-halfoff-request-id 响应头,例如 req_3f9c1a7e5b2d4c6e8a0b1d2f,与日志里的 请求 ID 一致。错误响应也有,包括没进日志就被拒绝的请求(密钥错误、余额为零、模型不存在),支持团队凭这个 ID 也能查到。

建议把它和你自己的业务记录存在一起,咨询某次调用时一并提供。

curl -sD - -o /dev/null https://halfoff.dev/v1/chat/completions \
  -H "Authorization: Bearer $HALFOFF_API_KEY" \
  -H "content-type: application/json" \
  -d '{"model": "gpt-6.1-sol", "messages": [{"role": "user", "content": "用一个词回答:准备好了吗?"}]}' \
  | grep -i '^x-halfoff'

同一响应中的 x-halfoff-group 头告诉你是哪个渠道分组处理了这次请求。

核对扣费#

余额只因两件事变动:入账增加,请求扣减。

  • 入账:充值、兑换码、邀请返佣,见账单页面的 充值记录。
  • 扣减:每个计费的模型请求,见日志。

核对单个密钥时,把它在 API 密钥页面的 已消费 与日志中按该密钥筛选出的请求对照即可。

出现小额差异,通常是下面几个原因:

  • 扣费记录有几秒延迟。 请求结束后不久才记账,流量高峰时看到的总额可能稍微滞后。
  • 中途断开的流按已生成的内容计费。 如果在最后的用量事件之前关闭流,输出按已发送给你的文本估算计费。参阅流式输出。
  • 以扣费列为准。 它就是这次请求从余额里扣走的金额。每 token 单价见模型列表。

联系支持#

打开支持,点击 新建请求。问题涉及某一次调用时,请附上请求 ID(req_…);在日志里点某一行的 就此请求联系支持,会自动帮你填好。回复显示在同一页面,有新回复时侧边栏的 支持 会出现提醒标记。你可以继续回复补充信息,或把请求标记为已解决。