• New
📢 Zilla LLM Gateway is Here!
Read the launch →

Zilla for LLM

Secure and Govern Access to AI Models.

Give applications and agents governed access across LLMs. Keep your SDKs while Zilla authenticates callers, controls model access, applies guardrails, routes requests and tracks token usage.

The Challenge

Every new model adds another place to enforce security.

Provider-specific APIs, credentials, access rules and monitoring spread across applications as model adoption grows. Zilla gives you one enforcement point without adding policy logic to every SDK client.

Keep your SDKs

Point supported OpenAI and Anthropic clients at a new base URL.
‍

Enforce in one place

Authenticate callers and apply role-aware model routes and guardrails.
‍

See what is used

Track tokens, interactions and latency without per-app metrics code.

Governance

Enforce model governance at the gateway

Control who can call which models and what content gets through. Zilla checks identity, role-aware routes and configured prompt or response guardrails before it forwards traffic to a provider.

Authenticate every caller

Validate the inbound token once at the gateway, regardless of how many models and providers sit behind it.

Scope access by role

Guarded model routes reserve specific deployments for authorized callers.

Handle provider keys

Forward caller keys, or supply provider credentials at the gateway.

Inspect prompts and replies

Per-model checks for secret patterns, personal data and jailbreak attempts.

Try a model access policy

Caller
Request
Caller
standard-app
Zilla
Auth, route, guardrails
Model
gpt-4o-mini

Request permitted by configured policy

Forwarded

The Standard role has a matching route to gpt-4o-mini, and the request passes the configured checks.

Caller
standard-app
Zilla
Auth, route, guardrails
Model
gpt-4o

Model not permitted for this role

Not routed

The Standard role has no authorized route to gpt-4o, so Zilla does not forward the request to the provider.

Caller
standard-app
Zilla
Auth, route, guardrails
Model
gpt-4o-mini

Prompt rejected before provider access

400 rejected

The configured user-text guardrail finds a pattern that resembles a secret or personal data and rejects the request at the gateway.

Request
Caller
premium-app
Zilla
Auth, route, guardrails
Model
gpt-4o-mini

Request permitted by configured policy

Forwarded

The Premium role has a matching route to gpt-4o-mini, and the request passes the configured checks.

Caller
premium-app
Zilla
Auth, route, guardrails
Model
gpt-4o

Request permitted by configured policy

Forwarded

The Premium role matches the guarded route to gpt-4o, and the request passes the configured checks.

Caller
premium-app
Zilla
Auth, route, guardrails
Model
gpt-4o-mini

Prompt rejected before provider access

400 rejected

The configured user-text guardrail finds a pattern that resembles a secret or personal data and rejects the request at the gateway.

Model Routing

Keep your SDK. Choose your model.

Point an existing SDK at Zilla and route by requested model, even when the target speaks a different supported API. An OpenAI client can reach Claude and get an OpenAI-format response back.

  • checkmark

    Route by model: Match model IDs or patterns, and optionally restrict routes by role.

  • checkmark

    Translate when needed: Convert supported messages, tool calls, errors and streaming events between API dialects.

  • checkmark

    Fall back when unreachable: Try a configured fallback when a deployment cannot be reached. Not a general retry policy for 429 or 5xx responses.

One SDK, several model targets

OpenAI SDK
Chat Completions API
Zilla
Route and translate
Anthropic
Claude, Messages API
Response

Returned in OpenAI-compatible Chat Completions format, including supported tool calls and streaming events.

Anthropic SDK
Messages API
Zilla
Route and translate
OpenAI
GPT, Chat Completions
Response

Returned in Anthropic-compatible Messages format, with supported content, tool calls and streaming events.

Requires Zilla Plus
OpenAI SDK
Chat Completions API
Zilla
Route and SigV4 sign
Amazon Bedrock
Amazon Nova, Converse API
Response

Returned in OpenAI-compatible format. Zilla Plus signs Bedrock requests with its AWS credentials.

Observability

Token usage and latency, visible at the gateway

Measure LLM interactions, input and output tokens, request latency and time to first token per provider binding. Export supported metrics to Prometheus or OpenTelemetry without instrumenting each application.

Input and output tokens
Provider-level metrics
Request latency
Time to first token

From the Track Token Usage guide

llm_interactions_total
2
Requests in the two-call example
llm_tokens_input_sum
18
Input tokens recorded
llm_tokens_output_sum
18
Output tokens recorded
Prometheus
llm_interactions_total{namespace="llm-track-token-usage",binding="south_llm_client_openai"} 2
llm_tokens_input_sum{namespace="llm-track-token-usage",binding="south_llm_client_openai"} 18
llm_tokens_output_sum{namespace="llm-track-token-usage",binding="south_llm_client_openai"} 18

How it Works

Configure once. Enforce consistently.

Zilla combines LLM server, proxy and provider client bindings in one declarative, streaming-native gateway. Supported client traffic needs no custom proxy service and no agent-side policy SDK.

  • checkmark

    Keep the SDK integration: Supported OpenAI or Anthropic SDKs connect to Zilla through its LLM server binding.

  • checkmark

    Define policies and routes: Configure model routing, caller authorization and guardrails in YAML.

  • checkmark

    Forward to the provider: Zilla translates supported requests and streams responses through the selected client binding.

zilla.yaml
north_llm_proxy:
  type: llm
  kind: proxy
  routes:
    - when:
        - model:
            - gpt-*
      exit: openai_llm_client
    - when:
        - model:
            - claude-*
      exit: anthropic_llm_client
north_llm_server:
  type: llm
  kind: server
  options:
    dialect: openai
    authorization:
      api_key:
        credentials: "Bearer {credentials}"
  exit: north_llm_proxy
 
# Requires a matching configured guard.
north_llm_proxy:
  type: llm
  kind: proxy
  options:
    guardrails:
      gpt-4o-mini:
        request:
          - section: user-text
            value:
              model: string
              maxLength: 2000
 
# Excerpt: add classifiers for PII and secrets.

Streaming-native

LLM requests and streaming replies run in Zilla's event-driven runtime.

Stateless data plane

Policy enforcement needs no gateway database on the request path.

Light to deploy

Run on Docker or Kubernetes and configure behavior declaratively.

‍

‍

Quickstart

See governed LLM access for yourself

The official LLM quickstart runs both SDKs, cross-provider translation, guardrail rejection, fallback and provider-level Grafana metrics.

Run the LLM quickstart

Route

OpenAI SDK to Claude, and Anthropic SDK to GPT.

Protect

Reject a prompt that contains a secret or an email address.

Recover

See fallback when a deployment is unreachable.

Observe

Inspect tokens and latency in Grafana.

Govern every model call.

Run the LLM quickstart to see cross-provider routing, guardrails, and token metrics, or discuss how Zilla fits your security and integration requirements.

Explore editions

Compare Community, Zilla Plus, and Zilla Console capabilities.

Learn more

Join the Community

Trade notes with the engineers running Zilla in production, and get help from the team in Slack.