LiteLLM CLI 命令速查表 - 统一 LLM 网关与代理服务器
当同一个应用需要同时接 OpenAI、Anthropic、Gemini 和若干自建推理服务时,真正爆炸的不是调用代码,而是四类横切逻辑:密钥散落、限流与重试、成本归因、供应商故障时的降级。LiteLLM 的价值就是把这四类收进一个代理进程,应用侧永远只见一个 OpenAI 兼容端点,切换供应商只改 base_url。什么时候该上它,判断依据是"供应商数量是否超过一个"——单供应商直接用官方 SDK 更省一层;一旦要做主备切换或按预算分流,代理带来的统一成本可见性就值回引入成本。表里的安装、CLI 单行起代理、config.yaml 驱动的生产配置、路由与运维几组命令,真正要掌握的是路由与预算的声明写法,以及改完配置后用自检确认后端真的通,而不是上线后才发现连不上。
安装 5
uv tool install 'litellm[proxy]'pip install "litellm[proxy]"litellm --versionlitellm --helppython -c "import litellm; print(litellm.__version__)"启动代理(CLI 一行) 5
litellm --model gpt-3.5-turbolitellm --model anthropic/claude-...litellm --model ollama/ litellm --model bedrock/anthropic.claude-v2litellm --model vllm/<model>配置驱动(生产推荐) 5
litellm --config config.yamllitellm --config config.yaml --detailed_debuglitellm --testlitellm --test <model>export OPENAI_API_KEY=...路由与运维 5
openai_api_base=http://0.0.0.0:4000curl http://0.0.0.0:4000/v1/modelslitellm --model <provider>/ --api_base <url>litellm --drop_paramslitellm --telemetry False实用技巧 5
一行起代理适合本地验证生产用 --config 而非一行provider/ 前缀是关键改完配置 --test 自检代理统一 OpenAI 协议提示
- LiteLLM 用
provider/前缀统一路由 100+ 模型到同一 OpenAI 兼容接口,是做"多供应商兜底/成本/限流"的事实标准网关。 - 本地快速验证用一行
litellm --model <provider/model>;生产务必用--config config.yaml集中管密钥、路由与预算。 - 代理默认监听 :4000,旧 OpenAI 客户端只要改
base_url即可无缝切换供应商,迁移成本极低。 - 改完配置跑
litellm --test自检连通性,避免上线才发现后端连不通。 --config里的 model_list 每项写 provider/模型名/密钥映射;把同一模型的两个供应商并排声明即可实现 fallback,第二个加 fallbacks 列表即可按序降级。- 预算控制用
max_budget、budget_duration与user_budget三层:全局日预算、项目级预算、按用户预算,可在请求侧 header 里带 user 归属到后两者。 - 排查"请求没走到我以为的供应商"时,先开
--detailed_debug看落地的实际模型与 usage 字段,比猜路由规则可靠。
常见问题
一行启动和生产用配置文件有什么区别?
一行 litellm --model gpt-3.5-turbo 适合本地快速验证,几秒就能起一个代理试不同供应商。但生产环境应该用 --config config.yaml:模型列表、密钥、路由策略和预算都集中管理在文件里,便于版本控制和权限控制,也能避免密钥出现在 shell history 中。
provider 前缀在 LiteLLM 里起什么作用?
它决定请求路由到哪个供应商:openai/ 走 OpenAI,anthropic/ 走 Claude,ollama/ 走本地 Ollama,bedrock/ 走 AWS Bedrock,vllm/ 走本地 vLLM。有了这层前缀,同一套 OpenAI 兼容的客户端代码切换后端时只需要改模型名,不用改代码。代理对外统一暴露 OpenAI 协议,旧客户端改 base_url 即可接入。
改完配置后怎么快速确认能连通?
用 litellm --test 做一次自检,它会向当前配置发一个测试请求并报告结果;也可以用 litellm --test <model> 指定某个模型单独验证。代理起来后先 curl http://0.0.0.0:4000/v1/models 看暴露的模型列表是否符合预期。排错时加 --detailed_debug 打开详细日志。
后端不认某个参数导致报错怎么办?
加 --drop_params,它会丢弃后端不支持的参数以提升兼容性。比如新 SDK 带了某个字段而旧供应商还不支持时,不用改代码就能跑起来。代价是被丢弃的参数不会生效——如果那个参数对业务有实际意义,就得换支持它的后端,而不是靠丢参数绕过。
如何在 LiteLLM 里关闭遥测?
用 litellm --telemetry False。遥测用于上游统计使用情况,隐私敏感或离线环境下应该关掉;同时它也会发起外部请求,内网环境下会拖慢启动或直接失败。生产部署通常连同详细日志一起在配置文件里统一声明。
由 巧匠 维护
公开更新于 2026年8月23日,内容持续校对官方文档。