如何用LiteLLM统一调用100+模型API:新手完整指南 📅 发布时间:2026/8/30 13:52:21 👁 浏览次数: 如何用LiteLLM统一调用100模型API新手完整指南【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm还在为每个模型API单独写一套对接代码吗从GPT换到Claude请求格式、鉴权方式、错误处理都得重写一遍。LiteLLM是一个开源AI网关相当于统一代理层让你用OpenAI一种格式调用100多种LLM自带成本追踪、负载均衡和日志记录。它解决什么问题它面向要用两个及以上LLM厂商的开发者或团队解决三件事不用为每家厂商的SDK各写一套适配代码切换模型或厂商时不用改业务逻辑各项目的token花费不用人工对账单。你可以把它当Python SDK直接import也可以部署成团队共享的AI网关。三分钟上手安装并发起第一次调用三步跑通安装SDK设置厂商API密钥环境变量发起一次模型调用pip install litellm export OPENAI_API_KEY你的密钥具体调用代码放在文末实战部分就是一次函数调用。核心场景拆解场景一一个接口调用任意模型场景线上跑GPT想测试Claude的效果或故障时降级到更便宜的模型。步骤所有模型都走同一个completion()函数区别只在模型名前缀——openai/gpt-4o、anthropic/claude-sonnet-4-20250514、azure/gpt-4o消息体messages统一用OpenAI格式。效果改一行model参数就完成换厂商请求、响应、错误结构都保持OpenAI兼容已有OpenAI SDK代码只需替换导入方式即可迁移。场景二十分钟部署团队级AI网关场景团队多个项目各自持有API密钥花费没人统计还担心有人调了未授权的高价模型。步骤执行pip install litellm[proxy]安装网关在proxy_server_config.yaml中配置允许使用的模型清单model_list和主密钥运行litellm --config proxy_server_config.yaml启动客户端把OpenAI SDK的base_url指向网关并携带各自的虚拟密钥。效果在管理面板给每个项目或团队发独立虚拟密钥按密钥统计token消耗与花费重试、负载均衡、健康检查开箱即用还能给不同项目设置不同预算。 如果想把每次调用的token量、延迟、花费落到可查询的监控面板LiteLLM可以把调用日志同步到Langfuse等可观测工具动手实战一个能跑通的小示例import os from litellm import completion os.environ[OPENAI_API_KEY] 你的密钥 # 设置好你的key # 用OpenAI格式统一调用任意模型 response completion( modelgpt-4o, # 换成 anthropic/claude-sonnet-4-20250514 即可换厂商 messages[{role: user, content: 只用一个单词回复你好}], ) print(response.choices[0].message.content) # 模型回复文本 print(response.cost) # 本次调用的花费自动计算预期输出第一行是模型回复如你好第二行是一个美元金额数字约 0.0004 左右。注意两点响应结构和OpenAI SDK完全一致方便迁移旧代码response.cost是LiteLLM根据内置价格表自动算好的不用自己查单价。避坑指南4个最常遇到的报错 401认证失败现象调用直接抛 AuthenticationError。 原因LiteLLM按模型前缀找对应厂商的keyanthropic/开头的模型读的是ANTHROPIC_API_KEY不会去用OPENAI_API_KEY。 解决导出对应厂商的环境变量或在调用参数里直接传api_key。无效参数报错现象传了 temperature 等参数时报错。 原因目标模型不支持该参数但请求里带了它。 解决在配置中开启drop_paramsLiteLLM会自动剔除模型不认识的参数。成本显示为空现象response.cost是 None。 原因模型名和LiteLLM内置价格表对不上比如自定义模型的命名不规范。 解决用官方模型名自定义模型在配置里显式声明input_cost_per_token单价。网关请求全部401/403现象连网关的任何接口都报无权限。 原因网关开了master_key强制鉴权但请求头没带虚拟密钥。 解决请求头加Authorization: Bearer 你的虚拟密钥密钥在管理面板中创建。先挑项目里一处模型调用改成LiteLLM格式改一行model参数试试能不能换个厂商跑通。更多部署与配置细节见项目README。【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考