smg-grpc-proto0.4.5
smg-grpc-proto0.4.5
Published
SMG gRPC proto definitions for SGLang, vLLM, and TRT-LLM
pip install smg-grpc-proto
Package Downloads
Project URLs
Requires Python
>=3.10
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