model_gateway | Main binary. HTTP/gRPC handlers, routing engine, service discovery, observability, CLI | RouterConfig, ServerConfig, CliArgs |
protocols | OpenAI-compatible types shared by ALL consumers (config, bindings, API). Sacred — no impl-specific fields. | WorkerSpec, ModelCard, WorkerModels, ChatCompletionRequest/Response |
kv_index | KV cache-aware routing. Radix trees (String for HTTP, Token for gRPC), positional indexer | StringTree, TokenTree, RadixTree trait, PositionalIndexer |
auth | API key (SHA-256 hashed), JWT/OIDC, role-based access (Admin/User), audit logging | JwtConfig, ApiKeyEntry, Principal, Role |
mesh | HA cluster via SWIM gossip. CRDT KV store, partition detection, consistent hashing | ClusterState, WorkerState, NodeStatus |
wasm | WebAssembly plugin system. WIT interface, middleware hooks (OnRequest/OnResponse), LRU cache | WasmModule, Action (Continue/Reject/Modify) |
mcp | MCP protocol client. Tool discovery, execution, approval workflows, response format translation | McpConfig, McpOrchestrator, ToolAnnotations |
grpc_client | Per-engine gRPC clients for backends. Macros for shared logic; trace injection via TraceInjector | SglangSchedulerClient, VllmEngineClient, TrtllmServiceClient |
data_connector | Pluggable storage: PostgreSQL, Oracle, Redis, in-memory. Hook system for interception | ConversationStorage/ConversationItemStorage/ResponseStorage traits, StorageHook |
tool_parser | 14 tool call parsers (JSON, Mistral, Qwen, DeepSeek, Pythonic, etc.). Streaming with incremental JSON | ToolParser trait, ParserFactory, StreamingParseResult |
reasoning_parser | Reasoning extraction from 8 model families (DeepSeek-R1, Qwen3, Kimi, GLM, Step3, MiniMax, Cohere, Nano). Streaming | ReasoningParser trait, ParserFactory, ParserResult |
tokenizer | LLM tokenization, chat templates | Tokenizer |
multimodal | Image/audio processing (crate llm-multimodal). Per-model vision specs (LLaVA, Qwen-VL, Llama4, Phi3/4-V, Pixtral, Kimi-VL), media fetching | ImageFrame, MediaContentPart, MediaConnector |
mm_rdma | Multimodal pixel RDMA (NIXL) transport for the gateway (crate smg-mm-rdma) | |
workflow | Step-based async workflow engine (wfaas) | StepExecutor, WorkflowContext |
bindings/python | PyO3 bindings. Router class with ~110 constructor params, enum mapping | Router, PolicyType |
bindings/golang | Go SDK via FFI (cgo). OpenAI-style API, streaming, tool calling | Client, ChatCompletionRequest |
clients/rust | Rust client library | |
clients/python, clients/java | Client SDKs generated from the OpenAPI spec | |
clients/openapi-gen | Generates the OpenAPI spec + Python/Java client SDKs from protocol types (make generate-clients) | |
mock_worker | Multi-port mock HTTP/gRPC inference-worker harness (package mock-worker, supports the TokenSpeed engine). Runs many fake workers in one process for routing/scale testing | (binary) |
grpc_servicer | Python gRPC servicer wrapping vLLM/SGLang backends | |