ai远程接口调用设计-能力服务设计
Capability-based Service Design(能力服务设计),非常适合 AI 场景。
一、场景能力(Capability Codes)
| capability code | 含义 |
|---|---|
| ANES_PREVENTION | 术中防范 |
| ANES_METHOD | 麻醉方式 |
| ANES_MED_PLAN | 用药规划 |
| ANES_COMPLICATION | 术中并发症 |
| ANES_RECOVERY | 苏醒指导 |
| ANES_PAIN | 疼痛管理 |
| … | … |
二、核心架构原则
调用方依赖“能力语义”,而不是“实现细节”
- 调用方只认:
ANES_PREVENTION = 术中防范能力
- 不依赖、也不感知:
- 该能力内部是否使用 ASA / OPER / LAB / EVENT
- 使用了哪些 code
- 实现如何组合、如何变化
能力的实现方式 不构成接口契约的一部分。
三、能力服务的 3 个核心特征
- 能力有稳定名字(capability code)
- 能力有清晰业务语义(人能理解)
- 能力内部实现可以自由演进
能力内部可以:调整所需数据替换规则 / 模型 / prompt拆分或合并子流程
而不影响任何调用方
四、解决的核心痛点
- 痛点 1:入参不一致
- 各能力对 ASA / OPER / LAB / EVENT 依赖不同
→ 由能力服务内部消化
- 各能力对 ASA / OPER / LAB / EVENT 依赖不同
- 痛点 2:AI 需求高频变化
- prompt / 规则 / 模型持续调整
→ 调用方无感知
- prompt / 规则 / 模型持续调整
- 痛点 3:接口端频繁调整,调用方被迫改代码
- 能力 code 稳定
→ 调用方无需随需求变更而修改
- 能力 code 稳定
五、能力稳定性约束(强约束)
- capability code 一旦对外发布,不允许语义漂移
- 若能力含义发生本质变化:
- 新增 capability
或 - 发布新 version(v2)
- 新增 capability
- 禁止在不升级版本的情况下偷偷改变能力含义
六、统一回包结构示例
{
"capability": "ANES_PREVENTION",
"version": "v1",
"data": {
"summary": "...",
"items": [...]
}
}
- 回包结构对调用方稳定
- 新字段只能新增,不可破坏兼容性