Skip to main content

The LLM gateway that keeps native power.

One Rust binary. OpenAI-compatible on the outside, native Vertex AI and Jev routing on the inside. No lowest-common-denominator adapters.

docker run --rm -p 8080:8080 -p 9090:9090 \
-e VERTEX_PROJECT_ID=my-gcp-project \
-e OPENAI_API_KEY=sk-... \
-e GOOGLE_APPLICATION_CREDENTIALS=/secrets/sa.json \
-v "$(pwd)/sa.json:/secrets/sa.json:ro" \
-v "$(pwd)/config:/app/config" \
sustentabilitas/synapse-gateway

# In a second terminal:
curl -s http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-flash",
"messages": [{"role": "user", "content": "Describe this video."}],
"vertex": {
"media_uris": ["gs://cloud-samples-data/video/animals.mp4"]
}
}'

Architecture

Three lanes, one OpenAI-compatible front door

Every chat request passes guardrails, then lane detection picks the standard, native Vertex or Jev lane. Each route is an ordered fallback chain, and every call lands in the cost ledger and the metrics pipeline. Read the architecture guide

ClientGuardrailsLane detectionStandard laneOpenAI · QwenVertex · vLLMNative Vertex laneVertex AIJev laneTypeSafeFallback chains · Cost ledger · OpenTelemetry metrics

Open source

Open, free and built in the open

Synapse is licensed under MPL-2.0, so you can build it into commercial products. Every feature on this page is in the open-source code, with no paid tier, and improvements contributed back are welcome.