SMG gRPC proto definitions for SGLang, vLLM, and TRT-LLM
Project Links
Meta
Author: Chang Su, Simo Lin, Keyang Ru
Requires Python: >=3.10
Classifiers
Programming Language
- Python :: 3
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
- Python :: 3.13
License
- OSI Approved :: Apache Software License
Operating System
- OS Independent
smg-grpc-proto
Protocol Buffer definitions for SMG (Shepherd Model Gateway) gRPC services.
This package provides pre-compiled Python gRPC stubs for:
- SGLang scheduler service (
sglang_scheduler.proto) - SGLang encoder service (
sglang_encoder.proto) - vLLM engine service (
vllm_engine.proto) - TensorRT-LLM service (
trtllm_service.proto)
Installation
pip install smg-grpc-proto
Requires grpcio>=1.78.0 and protobuf>=5.26.0.
Usage
from smg_grpc_proto import sglang_scheduler_pb2, sglang_scheduler_pb2_grpc
from smg_grpc_proto import sglang_encoder_pb2, sglang_encoder_pb2_grpc
from smg_grpc_proto import vllm_engine_pb2, vllm_engine_pb2_grpc
from smg_grpc_proto import trtllm_service_pb2, trtllm_service_pb2_grpc
Proto Source
The proto source files live in grpc_client/proto/ in the SMG repository. Python stubs are generated at build time using grpcio-tools and shipped in the wheel.
Development
To install in editable mode from the repo root:
pip install -e grpc_client/python/
For CI or environments where symlinks don't work:
mkdir -p grpc_client/python/smg_grpc_proto/proto
cp grpc_client/proto/*.proto grpc_client/python/smg_grpc_proto/proto/
pip install -e grpc_client/python/
Testing proto changes on a remote GPU machine
After editing .proto files locally, build a wheel and install it in the remote environment (e.g. vLLM):
# 1. Build wheel (regenerates Python stubs from latest .proto files)
cd grpc_client/python
# Copy proto files into the package tree (the repo uses a symlink which
# won't survive wheel packaging)
mkdir -p smg_grpc_proto/proto
cp ../proto/*.proto smg_grpc_proto/proto/
pip wheel . --no-deps -w dist/
# 2. Copy to remote
scp dist/smg_grpc_proto-*.whl remote-gpu:/tmp/
# 3. Install on remote (into vLLM's env or whichever env needs it)
pip install --force-reinstall /tmp/smg_grpc_proto-*.whl
No import changes are needed on the remote side — vLLM already imports from smg_grpc_proto.
License
Apache-2.0
0.4.5
Mar 24, 2026
0.4.4
Mar 23, 2026
0.4.3
Mar 17, 2026
0.4.2
Mar 04, 2026
0.4.1
Feb 26, 2026
0.4.0
Feb 23, 2026
0.3.3
Feb 12, 2026
0.3.2
Feb 10, 2026