Protocol Buffers
Google开发并开源的接口定义语言和消息序列化格式,序列化体积比JSON小3-10倍,速度快5-10倍,具备强类型约束和向后兼容性
核心事实
时间轴 (近 90 天)
gRPC是一个基于HTTP/2的高性能RPC框架,使用Protocol Buffers定义服务接口,支持双向流、多路复用,并强制要求定义强类型的方法契约。
gRPC在HTTP/2之上使用Protocol Buffers序列化,相比JSON负载体积可减少30-50%,并支持服务端流式推送
将 proto 定义拆分为独立仓库或独立包可以让下游组件在不依赖完整推理引擎的情况下引用接口定义,降低耦合度并加快构建速度
gRPC 框架以 protobuf 作为默认的接口描述语言(IDL)
相比 JSON 或 XML,protobuf 采用二进制编码,具有体积更小、序列化/反序列化速度更快的特点
Proto 扩展是 Zed 生态中用于支持 Protocol Buffers 的语言扩展,为 .proto 文件提供语法高亮、格式化等基础语言支持
protobuf 相比 JSON 或 XML 体积更小、解析速度更快,适合高频低延迟的服务间通信场景
许多 AI 基础设施底层依赖 C/C++ 编写的高性能组件,如数值计算库(BLAS/LAPACK)、图像/音频解析器和序列化框架(如 Protocol Buffers 的 C 扩展)
vLLM 所使用的 proto 通常基于 Protocol Buffers(protobuf),常与 gRPC 框架配合使用
RPC(远程过程调用)以动作为中心,接口直接描述可调用的函数,常见实现包括 Google 推出的 gRPC(基于 Protocol Buffers 和 HTTP/2)以及 JSON-RPC
还有 10 条时间轴事件
全部知识事实 (20)
gRPC是Google开源的跨语言RPC框架,基于HTTP/2协议和Protocol Buffers序列化
80%已验证vllm-proto 很可能是为标准化 vLLM 内部/外部接口而抽离出的独立包,其核心内容可能是跨语言、跨进程的接口定义文件集合
75%已验证Protocol Buffers 是 Google 开源的语言无关、平台无关的结构化数据序列化格式,广泛用于定义服务间通信的数据结构与接口契约
75%已验证Protocol Buffers相比JSON体积减少约60-80%,解析速度快3-10倍
75%已验证Protocol Buffers是Google开源的二进制序列化协议,相比JSON拥有更小的体积和更快的解析速度
70%已验证Protocol Buffers是Google于2008年开源的跨语言、跨平台序列化框架
65%待验证与 JSON 相比,protobuf 具有更小的编码体积和更快的序列化/反序列化速度
70%待验证JSON相比XML或Protocol Buffers,在LLM提示工程中的可读性和token效率都更优
70%待验证维护 Protobuf 兼容性的关键在于绝不复用已废弃的字段编号(应用 reserved 关键字标记),且字段编号一经发布便不可修改
60%待验证gRPC 默认采用 Protocol Buffers 作为接口定义语言和消息序列化格式
60%待验证gRPC是一个基于HTTP/2的高性能RPC框架,使用Protocol Buffers定义服务接口,支持双向流、多路复用,并强制要求定义强类型的方法契约。
50%待验证gRPC在HTTP/2之上使用Protocol Buffers序列化,相比JSON负载体积可减少30-50%,并支持服务端流式推送
50%待验证将 proto 定义拆分为独立仓库或独立包可以让下游组件在不依赖完整推理引擎的情况下引用接口定义,降低耦合度并加快构建速度
50%待验证相比 JSON 或 XML,protobuf 采用二进制编码,具有体积更小、序列化/反序列化速度更快的特点
50%待验证gRPC 框架以 protobuf 作为默认的接口描述语言(IDL)
50%待验证Proto 扩展是 Zed 生态中用于支持 Protocol Buffers 的语言扩展,为 .proto 文件提供语法高亮、格式化等基础语言支持
50%待验证protobuf 相比 JSON 或 XML 体积更小、解析速度更快,适合高频低延迟的服务间通信场景
50%待验证许多 AI 基础设施底层依赖 C/C++ 编写的高性能组件,如数值计算库(BLAS/LAPACK)、图像/音频解析器和序列化框架(如 Protocol Buffers 的 C 扩展)
50%待验证vLLM 所使用的 proto 通常基于 Protocol Buffers(protobuf),常与 gRPC 框架配合使用
50%待验证RPC(远程过程调用)以动作为中心,接口直接描述可调用的函数,常见实现包括 Google 推出的 gRPC(基于 Protocol Buffers 和 HTTP/2)以及 JSON-RPC
50%