会话 AI Credits 软上限
在创建或恢复时设置当前记账窗口预算,并处理耗尽事件。
This page has not been translated into English yet. The original Chinese version is shown below.
sessionLimits.maxAiCredits 为会话当前 accounting window 设置 AI Credits 软上限。runtime 在模型调用返回后检查用量,因此单次响应可以超过该值,随后才阻止下一次模型调用。
创建与恢复
在已有 client 上设置:
const session = await client.createSession({
sessionLimits: {
maxAiCredits: 30,
},
});
const resumed = await client.resumeSession(session.sessionId, {
sessionLimits: {
maxAiCredits: 30,
},
});30 是示例值,不是默认预算。SDK 将该限制转交 runtime,权限回调等其他会话选项仍按应用需要配置。
观察事件
| 事件 | 含义 |
|---|---|
session.session_limits_changed | 当前限制变化;sessionLimits 为 null 表示无活动限制 |
session.usage_checkpoint | 持久累计用量,包含 totalNanoAiu 与可选 totalPremiumRequests |
session_limits_exhausted.requested | 等待用户决策,含 requestId、maxAiCredits、usedAiCredits |
session_limits_exhausted.completed | 决策已解决,包含 requestId 与 response |
耗尽请求属于临时事件,应用应在实时事件流中显示对应决策,不能指望恢复日志补回未订阅的 UI 提示。
决策含义
completed 的 response.action 可为 add、set、unset 或 cancel。add 的 additionalAiCredits 表示增加到当前上限的额度;set 的 maxAiCredits 表示新的绝对上限。实际响应 API 与对象按当前语言类型处理,本页不编造未列出的响应方法。
这个限制围绕当前记账窗口,不是每条响应独立硬限额,也不能据来源推断每次 resume 自动重置累计费用。应用应结合 usage checkpoint 和限额变化事件展示实际状态。
token 上下文窗口与 AI Credits 预算是两种限制;上下文清理不能当作清零费用的手段。