mrkeyoor.com_
Wed 16 Sept 05:26 UTC
AI Toolsevaluationupdated 25 Aug 2026

litellm review

LiteLLM is an open-source Python SDK and deployable gateway that presents many model providers through a mostly OpenAI-shaped API. It gives applications one place for routing, fallbacks, virtual keys, budgets, usage records, guardrails, and provider credentials instead of baking each vendor's client into every service.

+515stars / 7d
Verdict

LiteLLM is the practical default when a team needs one API in front of several model vendors. The provider coverage and proxy controls solve real duplication, but the gateway becomes a privileged billing and credential boundary that deserves careful operation. For one model in one application, use the vendor SDK; once routing and shared governance appear, LiteLLM earns its place.

We ran it

Lab card: what happened when we ran litellmScreenshot of litellm (docs.litellm.ai/docs)
Install✓ · 64s379 packages · 78 MB
Buildn/ano build script
Testsn/ano test script
Known vulns00 critical · 0 high · 0 moderate · 0 low (npm audit)
Repo9508 files~2,422,783 lines of source · 150.4 MB · 45 CI workflows · Dockerfile · tests dir

Answers from our run

Does litellm build from source?

Dependencies installed in 64 seconds (379 packages), and the project has no separate build step. We cloned commit f005afa into a clean Debian container with 3 CPUs and no project-specific setup.

Does litellm have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does litellm have known vulnerabilities in its dependencies?

npm audit found none in the dependency tree at the time of our run.

Who should not use litellm?

Small applications committed to one provider with no routing or governance needs: LiteLLM adds another dependency or network hop.

What are the alternatives to litellm?

Portkey AI Gateway, Helicone, Envoy AI Gateway. LiteLLM is the practical default when a team needs one API in front of several model vendors.

Setup4/5Quick first proxy, with databases and policy needed for team use
Docs4/5Wide provider and proxy coverage, though the surface is sprawling
Community5/5Very active releases and a large contributor and support queue
Maturity4/5Broad production features with frequent compatibility fixes

Discussed on

  1. hnTell HN: Litellm 1.82.7 and 1.82.8 on PyPI are compromised938 points
  2. hnMalicious litellm_init.pth in litellm 1.82.8 PyPI package – credential stealer739 points
  3. hnShow HN: liteLLM Proxy Server: 50+ LLM Models, Error Handling, Caching140 points
  4. hnShow HN: Litellm – Simple library to standardize OpenAI, Cohere, Azure LLM I/O62 points
  5. hnLiteLLM Python SDK Proxy Server LLM Gateway Call 100 LLM APIs in OpenAI Format5 points

Who it’s for

Platform teams supporting several model providers behind one internal endpoint.
Application developers who want to change models without rewriting every call site.
Organizations that need virtual keys, budgets, usage attribution, routing, and guardrails around model access.
Agent teams that want an MCP gateway alongside chat, Responses, embeddings, images, audio, or reranking routes.

Who it’s NOT for

Small applications committed to one provider with no routing or governance needs: LiteLLM adds another dependency or network hop.
Teams expecting perfect behavioral equivalence across providers: the README's endpoint matrix shows that providers support different operations, and translated parameters still meet different upstream semantics.
Operators unwilling to track fast releases and provider changes: v1.98.0 alone contains a long list of provider, routing, billing, UI, and compatibility fixes.
Organizations that cannot centralize high-value credentials without operating the gateway as security infrastructure: the proxy holds provider keys and can control spend across teams.

Setup reality

In our Node 22 sandbox, npm installed 379 packages in 64 seconds and used 78 MB on disk. The checkout had 9,508 files, about 2,422,783 source lines, and occupied 150.4 MB. There was no npm build target and no npm test target, so both steps were skipped. npm audit found 0 known vulnerabilities.

A useful gateway deployment needs provider credentials, a configuration file, a master key, and durable storage if the team wants virtual keys, budgets, or usage records. Production routing may add PostgreSQL, Redis, observability exporters, SSO, guardrails, and network policy. The repository supplies Docker and Compose files.

The npm result covers the package target selected by our harness, not LiteLLM's full Python and proxy test surface. The repository has a tests directory and 45 CI workflows, but the available npm scripts did not expose a build or test command for our run.

One front door for model APIs

LiteLLM addresses a problem that appears as soon as an application uses a second model provider. OpenAI, Anthropic, Bedrock, Vertex AI, Azure, and smaller vendors differ in authentication, model names, request fields, streaming events, errors, and usage accounting. LiteLLM translates a common call into provider-specific requests and normalizes the response. Developers can use it as a Python library or run the proxy as a shared service.

The library path is appropriate when one application wants provider choice without another deployed component. The gateway path is more consequential. It centralizes provider keys and presents virtual keys to clients, then applies budgets, routing, fallbacks, rate limits, guardrails, and logging. That gives a platform team one policy point, while applications keep an OpenAI-style client and base URL.

Coverage is unusually wide. The README lists chat completions, Responses, embeddings, images, audio, batches, reranking, Anthropic messages, agent-to-agent calls, and MCP tools. The matrix is also a warning against assuming interchangeability. Many provider rows have empty cells. A common request shape reduces integration work, but a model cannot gain an endpoint its vendor does not implement.

The gateway becomes sensitive infrastructure

A proxy that holds every model credential is more than a convenience service. If it is exposed or misconfigured, an attacker can spend across providers and reach models that individual applications could not. Production installations should isolate the admin surface, rotate the master and provider keys, restrict outbound destinations, protect configuration, and send audit records somewhere operators will inspect.

Virtual keys are useful because teams and projects do not need raw vendor secrets. Budgets and spend attribution can make a shared model program manageable. Yet those controls depend on correct model pricing, token accounting, and request ownership. The v1.98.0 release includes fixes for streamed costs, batch attribution, prompt-caching savings, pricing data, budgets, roles, and caller-scoped file listings. That activity shows how much policy logic lives inside the gateway.

Routing adds another set of decisions. LiteLLM can balance deployments, cool down failed targets, retry, and fall back to other models. A fallback may return a response while changing price, latency, context limits, safety behavior, or output quality. Teams should define which substitutions are acceptable per workload and log the deployment that served each request. Availability is useful only if the replacement still meets the product's contract.

What happened when we ran it

We cloned commit f005afa into an unprivileged Node 22 Debian container with 3 CPUs, 8 GB of RAM, and no secrets. The checkout was 150.4 MB, containing 9,508 files and about 2,422,783 lines of source. It includes a Dockerfile, a Compose file, a tests directory, and 45 CI workflow files.

The npm install completed in 64 seconds. It added 379 packages and occupied 78 MB on disk. npm audit reported 0 known vulnerabilities: 0 critical, 0 high, 0 moderate, and 0 low. These figures describe the npm dependency set exercised by our harness at that commit.

There was no npm build script or target, so the build step was skipped. There was also no npm test script or target, so we did not run tests and have no pass count. The repository's tests directory and CI configuration show that tests exist elsewhere, but substituting a different command would violate the measured run. The result is narrower than a full validation of the Python SDK or proxy.

MCP and agent traffic fit the same policy point

LiteLLM can load MCP tools into a model call and can expose configured MCP servers through the gateway. That is a logical extension of its role: model requests and tool access can share authentication and policy. Cursor and other clients can point at the gateway rather than receiving credentials for each tool server.

Tool calls carry higher stakes than text generation because they may read repositories, query business data, or change external systems. The README example includes a require_approval setting, and operators should make that choice per server and tool rather than copy a permissive example. Timeout, identity forwarding, result logging, and least-privilege credentials matter as much as model routing. A gateway can centralize those controls, but centralization does not create a safe policy automatically.

A2A support likewise lets the proxy invoke configured agents. This is useful for organizations standardizing one access layer across models, tools, and agents. It also expands the blast radius of a configuration mistake. Start with a small provider and endpoint set, then add routes after ownership, budgets, and audit visibility are clear.

Release pace and documentation

The repository was pushed on August 25, 2026, and v1.98.0 was released on August 23. GitHub reported 4,902 open issues and pull requests combined. That number is not a bug count, but it does reflect a huge support and development surface. The current release notes contain many provider-specific fixes alongside proxy authorization, cost, routing, UI, and test changes. Pinning versions and reading release notes should be part of deployment.

Documentation covers providers individually as well as the proxy, Docker quick start, configuration, virtual keys, routing, observability, MCP, and A2A. The amount of material is necessary but can be hard to navigate because LiteLLM spans an SDK, gateway, admin UI, and enterprise features. Buyers should verify that the exact feature they need is in the open-source edition and supported by their selected deployment mode.

LiteLLM pays off when several applications and providers already create duplicated integration and governance work. Put it behind a stable internal endpoint, test provider translations with real application fixtures, and treat upgrades like changes to an API gateway. A single-provider prototype should keep the vendor SDK. A shared AI platform will usually be better with LiteLLM than with a homegrown collection of adapters.

Alternatives

ProjectWhat it isPick it when
Portkey AI GatewayAn AI gateway with routing, observability, guardrails, and managed or self-hosted options.pick this instead when a polished managed control plane is worth more than LiteLLM's provider breadth.
HeliconeAn open-source gateway and observability platform for model requests.pick this instead when request tracing and cost analysis are the main requirements.
Envoy AI Gateway gh↗A Kubernetes-oriented AI gateway built around Envoy Gateway.pick this instead when your platform already standardizes traffic policy on Envoy and Kubernetes.

Sources

  1. LiteLLM repository
  2. LiteLLM README
  3. LiteLLM documentation
  4. LiteLLM v1.98.0

More ai tools reviews

DLSS5-Feeder · Concat · LocalMiniDrama · agents-towards-production · Marinara-Engine · AI-Engineering-Coach · the whole board →