From LiteLLM

Managed alternative to your self-hosted router — when the ops cost stops being worth it.

This guide covers moving a LiteLLM deployment (self-hosted Proxy or LiteLLM Cloud) to HiWay2LLM. If your team is tired of maintaining the proxy config, the Redis for rate limits, the Postgres for logs, and the alerting stack — this is a fully managed equivalent. Budget ~10 minutes for the swap, plus whatever time you need to re-express your fallback / observability config in the HiWay dashboard.

Prerequisites

A HiWay account and at least one provider key configured in Dashboard → Settings → Providers. If you were using LiteLLM's model aliases (e.g. gpt-4 pointing to azure/gpt-4-turbo), note the real upstream id you want on HiWay before you start.

Step 1: Get your HiWay API key

Open Dashboard → Keys and click New key. Copy the hw_live_ key once — we only store its SHA-256 hash.

Step 2: Swap your configuration

In LiteLLM Proxy you were pointing your app at http://your-proxy:4000 (or the LiteLLM Cloud endpoint) with a sk-litellm-... master key, and LiteLLM dispatched to the right upstream based on your config.yaml. On HiWay you point at https://app.hiway2llm.com/v1 with a hw_live_... key, and the router dispatches based on your enabled providers and routing profile — no YAML to maintain.

from openai import OpenAI

client = OpenAI(
    base_url="https://app.hiway2llm.com/v1",
    api_key="hw_live_YOUR_KEY",
)

response = client.chat.completions.create(
    model="auto",  # LiteLLM alias translation happens via "auto" + enabled providers
    messages=[{"role": "user", "content": "Summarize our Q3 report"}],
)

print(response.choices[0].message.content)

Step 3: Verify

Send one request, check X-HiWay-Routed-Model on the response, and open Dashboard → Usage to see it land. If you were piping LiteLLM logs into Langfuse / Helicone / Datadog, you can now read the same data from Dashboard → Analytics or pull it via the /v1/usage endpoint.

Gotchas specific to LiteLLM

  • Self-hosted customizations are gone: if you had custom callbacks, a modified dispatcher, or patched the LiteLLM source, those don't carry over. HiWay is a managed service — the upside is no more maintenance, the downside is you trade that surface for our feature set.
  • `config.yaml` → dashboard settings: provider credentials move to Settings → Providers, model aliases are replaced by model: "auto" plus enabled-provider selection, and rate limits move to per-key settings in Dashboard → Keys.
  • Fallback rules: LiteLLM's fallbacks block is replaced by HiWay's automatic same-tier provider fallback (max 2 retries). If you had elaborate fallback chains with specific orderings, check that the default HiWay behavior covers them — otherwise pin model explicitly in code.
  • Observability hooks: LiteLLM's success_callback / failure_callback (Langfuse, Helicone, S3) are not pluggable in HiWay. Instead, pull analytics from the HiWay API (/v1/usage, /v1/events) and forward wherever you want.
  • Master key vs per-service keys: if you were using one LiteLLM master key for everything, split it now — mint one hw_live_ key per service in Dashboard → Keys so Guardian and rate limits can scope per caller.

You're done

Should take less than 10 minutes to swap the endpoint, plus whatever time you spend reconfiguring fallback and observability in the dashboard. Ping support@hiway2llm.com if you're stuck.