模型服务与套餐计费
Core 0.10.1 提供可选模型计费网关,配套 Agent Client SDK 与 DSH 0.8.0。管理员管理服务和额度,宿主负责本地对话、工具选择与原请求持久化;业务权限与审批独立生效。
分开默认预算和服务上限
Section titled “分开默认预算和服务上限”Core 0.10.1 可以为每个对话服务分别声明新请求默认输出预算、允许请求的上限,以及供应商使用 max_tokens 或 max_completion_tokens 时的含义。completion_total 包含思考与答案,final_answer 只限最终答案;不能按模型名猜测。旧服务保持旧行为,启用新策略不会改写已准备或已受理的原请求。宿主按目录构造新请求,并保留供应商原结束原因。图片工具、上下文窗口、输入大小和超时继续独立生效。
单次模型截断后的自动续段由宿主有界控制,已完成工具不得随文本重新执行。参见输出预算契约与续段和原请求恢复。
从服务到可用套餐
Section titled “从服务到可用套餐”- 在后台配置实际供应商凭据、地址和型号,选择对话模型或模型工具。
- 显式绑定 OpenRouter 参考计价模型与端点,核对实际服务与参考计量是否对应。参考价格不是实际供应商账单。
- 创建 USD 套餐,确定服务集合、统一倍率、有效期,以及周期套餐的售价和每周期额度。
- 为个人或组织共享账户开通套餐。宿主先读取能力发现,再显示当前账户已就绪的模型、工具和额度。
配置未就绪的服务不进入可调用 items;unavailable_items 提供原因,宿主提示联系管理员。修复后刷新目录,不自动换模型或重发旧请求。
售价、额度与客户显示
Section titled “售价、额度与客户显示”| 套餐 | 配置 | 客户显示 |
|---|---|---|
| 周期套餐 | priceUsd 为售价,periodAllowanceUsd 为每周期额度,periodUnit 为日/周/月 |
剩余百分比;分母是周期额度 |
| 额度包 | priceUsd 为一次性 USD 额度,不填写 periodAllowanceUsd |
Credits;1 USD = 1000 Credits |
同一套餐内模型与工具共用一份额度和一个 multiplier。每笔请求按实际计量、参考单价与原倍率快照结算。有效期由 duration 决定,与周期独立;模板调价只影响以后开通,当前模型集合与倍率仍按套餐读取。
客户端使用摘要 presentation 展示额度。原始 Token 数保留为使用明细,不是百分比的分母。支付、汇率和退款由业务侧处理。
身份与 SDK 职责
Section titled “身份与 SDK 职责”业务后端通过可信登录交换短期使用凭据。model_access: service 限定单个模型;显式 token_gateway 允许套餐与身份来源交集内的模型,不扩大业务工具权限。独立 issuer 凭据只留在服务端。
Core 中的 Node UsageIssuerClient 和 PHP7 UsageClient 提供以下业务后端方法:
| 方法 | 用途 |
|---|---|
exchangeSession / revokeUser |
交换短期身份 / 撤销原业务用户 |
listBillingPlans |
读取当前来源可发放的套餐 |
grantBillingPlan |
使用原 request_key、plan_id 和 expected_revision 开通 |
controlBillingPlan |
以当前修订暂停或启用原开通 |
getBillingSummary |
读取 USD 摘要和客户展示 |
这些方法统一使用 /usage/v1/external/billing/ 套餐接口。写入不会自动重试;发送前持久化原输入,回包不确定时沿原键、原参数核对。不要重新计算修订或换键重复发放。Node 类型入口为 @bailinghub/connect/usage。
独立包 bailinghub-mcp-server 的 Agent Client SDK 及 DSH 负责宿主侧接入,不与上述 Core 业务 SDK 混淆。安装包本身不会接管模型流量,宿主须按需接入目录、模型请求、工具执行、摘要和恢复。
图片结果、未知状态与晚结算
Section titled “图片结果、未知状态与晚结算”首批执行适配覆盖阿里云 OpenAI Images 兼容接口、DashScope 原生接口和 OpenRouter Images 文生图。视频、语音或自定义工具可声明,但没有执行适配时明确不可调用。
每个模型或工具请求持久保存原 operation_id。重新打开会话后查询原请求,不能换 ID 重新生成。result_state=complete 时可以使用图片,billing_state=pending 仅表示等待可信计量;费用不阻塞结果。明确失败和结果未知分别显示。取消后的晚到结果与费用不恢复原轮次。
余额为正时允许新请求,并发晚结算可能造成超额,余额耗尽后阻止新请求。图片 URL/Base64 可由宿主复用已有附件空间;生成成功不会自动写入业务系统。
0.9.2:原用量自动结算维护
Section titled “0.9.2:原用量自动结算维护”standalone 在启动后和每分钟安排维护;managed Kernel 由既有 tick 推进,Host 仍须调用 tick。HTTP 是同一维护入口的补充,保存的用量恢复不依赖新流量。
每页最多 50 条,使用 (updated_at, id) 游标推进并回绕;无法计价或单条损坏的记录不阻塞后续记录。维护只读取原计量、参考价格和倍率,不读取生成结果正文、调用供应商或重新派发模型。缺少可信计量的记录继续保留 pending/unknown。关闭先停止新维护,再等待已经开始的写账;超时保留原实例供重试。
升级到 0.9.2 须显式应用未执行的 065、066,运行时不自动迁移。详见 0.9.2 升级指南、可靠性机制 和 0.9.2 计费契约。
套餐移除、账户归档与恢复保留原标识和账本。恢复账户不恢复旧凭证或补发额度。管理员手动重置只处理有权限管理的当前有效中枢额度,保持原到期时间;原在途请求结算到原池。
从公开 0.9.4 升级没有新增 SQL;更早版本按完整账本执行全部未应用迁移,包括 068。状态与配置库分开核对,保留原记录,不清空数据。参阅升级指南与完整计费契约。