SuperAPI AI 工具集

lattice-grpc-integration

编程与开发

查看项目

更新于 10-29 16:14

技能介绍

用途

该技能用于在 Sandbox 环境中构建基于 gRPC 和 protobuf 的 Lattice 集成。它适用于协议选择已确定为 gRPC 的场景,并尽量保持语言无关,优先沿用用户现有语言与工具链。

何时选择 gRPC

当用户已有 protobuf 或 .proto 契约、存在流式或更高速率遥测需求、已有生成桩代码的工作流,或属于天然 proto-first 的硬件/桥接集成时,优先使用 gRPC。若用户同时需要 Objects API,需明确说明 Objects 仅支持 REST,应补充一个小的 REST 伴生路径或重新考虑协议选择。

主要能力与工作流

  1. 从确切的 protobuf 契约开始:使用已安装/生成的桩作为线路契约(先安装或生成,并通过 import/resolve 探测检测,而非文件系统搜索);浏览公开 Lattice 服务时使用 gRPC 参考。包名与完全限定消息名须视为精确值,从生成的桩中读取,不得猜测。
  2. 按用户语言生成桩:优先使用仓库现有语言与构建工具,采用文档化的 Buf 或语言原生生成路径;除非所选工具链要求,不添加冗长的语言特定设置建议。
  3. 认证到 Sandbox:参考 auth-and-deployment 文档。优先从环境读取凭据,或使用集成加载的 .env / config.yml;默认使用环境令牌认证,需要时支持 OAuth 客户端凭据;凭据缺失时应询问用户,不得编造。注意 gRPC 认证是手动元数据注入,不同于 REST 客户端的自动处理。
  4. 针对确切 RPC 实现集成:参考 entity-fields 文档。以 proto 定义和生成桩作为线路契约;将源数据摄取与 Lattice 发布/消费保持为独立关注点;对于可任务化智能体,即使方法名因语言而异,也要保留任务生命周期不变量。
  5. 在 Sandbox 上做实时验证:运行真实集成;用独立的客户端路径读回生成的实体或任务;对于可任务化智能体,派发真实任务并证明其到达终态。

gRPC 专项指引

认证:在线上使用小写元数据键;同时包含主认证凭据与 sandbox 认证令牌;使用 OAuth 客户端凭据时自行获取、缓存并刷新访问令牌。

精确性:不猜测服务名、包名或消息名;不猜测 type.googleapis.com/<完全限定消息> 任务规格 URL;不猜测枚举字面量,应内省已安装/生成的桩(枚举快照仅为便利,可能滞后);浏览接口面时使用 gRPC 参考。

流与任务智能体:参考 task-lifecycle 文档;长连接流断开时重连;将任务执行与主流消费分离;每次更新严格递增 status_version;及时处理取消并将任务移至终态。

桥接:对于外部 gRPC 源,连接确切配置的源地址,确认源确实在投递数据,再验证转换后的实体或任务更新确实落入 Lattice。

硬性规则

不得让“gRPC”坍缩为某一种语言的代码生成故事;不得以本地编译作为契约正确的证明;不得跳过独立的实时验证;不得省略验证后对集成所触及 Lattice API 的说明。

适用场景与限制

适用于已有 proto 契约、流式遥测、硬件/桥接等 proto-first 集成。若需要 Objects API 则必须补充 REST 路径。文中未提供具体收费、价格、平台限制等信息。