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.81.1 and protobuf>=6.33.5: the versions the generated modules were
built with (an older protobuf runtime refuses to import them).
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
Metadata
Release files for smg-grpc-proto 0.4.28
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| smg_grpc_proto-0.4.28.tar.gz | 38.0 kB | Without provenance | Details for smg_grpc_proto-0.4.28.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| smg_grpc_proto-0.4.28-py3-none-any.whl | Python 3 | none | any | Details for smg_grpc_proto-0.4.28-py3-none-any.whl |
Total release size: 148.6 kB
Release files / smg_grpc_proto-0.4.28.tar.gz
| Download URL | smg_grpc_proto-0.4.28.tar.gz |
|---|---|
| Size | 38.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e2839183b331338fcfeec9c920df00cfa04ee27cfe0027540692b547c93d49ba
|
|
BLAKE2b-256 checksum How to use checksums |
7a57110446b41f0751a7a25d528c10092393041c97ff019e6b75149f5ad44286
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / smg_grpc_proto-0.4.28-py3-none-any.whl
| Download URL | smg_grpc_proto-0.4.28-py3-none-any.whl |
|---|---|
| Size | 110.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
970dec0a8c0e78b42758c7690cc7b8bbf0416f680fdad448a4f5c9b8c3e68afb
|
|
BLAKE2b-256 checksum How to use checksums |
179fab7836d97f5e9c971d1c116542454cf17967f6d12026c7770247463ce9ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Security for smg-grpc-proto 0.4.28
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.