更新于 2025年9月25日
7 分钟
/v1/chat/completions 端点。pip install litellmexport OPENAI_API_KEY=sk-...# 可选:更多提供商export ANTHROPIC_API_KEY=...export GOOGLE_API_KEY=...from litellm import completionresp = completion(model="gpt-4o", # 或 "azure/gpt-4o", "anthropic/claude-3-5-sonnet", "gemini/gemini-1.5-pro"messages=.- 运行上面的快速入门代码。- 目标:通过 LiteLLM 发出你的第一个与 OpenAI 兼容的请求。- 实践构建者- 阅读 DataCamp 教程,并通过流式传输和重试扩展示例。- 添加两个提供商并测试回退。- 团队/生产所有者- 学习官方入门指南。- 启动代理,添加可观测性和成本跟踪。- 实施速率限制和 PII 编辑策略。—## 深入探讨:你每周都会使用的模式### OpenAI 兼容性作为接口契约- 将 OpenAI 的 API 形状视为你的应用程序契约。所有请求都发送到你的 LiteLLM 代理的 `/v1/*` 端点。- 通过配置而不是代码来更换模型(例如,`gpt-4o` → `claude-3-5`)。### 按用例进行模型路由- 对延迟敏感的路径:路由到快速、更便宜的模型。- 推理路径:路由到更高质量的模型,用于检索增强生成 (RAG) 或工具使用。- 隐私路径:路由到本地/Ollama 以处理 PII 片段。### 成本防护栏- 使用 `user_id`/`team` 标记请求。- 设置每个团队/模型的预算。- 将令牌使用情况记录到中央存储并发出异常警报。### 弹性- 启用带抖动的重试。- 配置每个提供商的超时和重复失败时的断路器。- 定义提供商优先级和显式回退。### 可观测性- 捕获请求/响应元数据、延迟直方图和模型/版本。- 在日志中编辑密钥/PII。- 关联跨服务的跟踪,以快速找到慢速调用。—## LiteLLM 代理配置示例(生产就绪入门)```yaml# config.yamlmodel_list:- model_name: gpt-4olitellm_params:model: openai/gpt-4oapi_key: ${OPENAI_API_KEY}- model_name: claude-3-5-sonnetlitellm_params:model: anthropic/claude-3-5-sonnetapi_key: ${ANTHROPIC_API_KEY}- model_name: gemini-1.5-prolitellm_params:model: google/gemini-1.5-proapi_key: ${GOOGLE_API_KEY}defaults:timeout: 30smax_tokens: 1024routing:- name: low-latencymodels: .- 一篇实用、以示例驱动的文章。- 用于入门和代理最佳实践的官方 LiteLLM 文档。—## 行动计划:你的未来 7 天第 1-2 天:完成速成课程和快速入门;发出你的第一个代理请求。第 3-4 天:添加第二个提供商和流式传输;设置超时、重试。第 5 天:使用配置启动代理;按用例(延迟 vs 推理)进行路由。第 6 天:添加日志记录、成本跟踪和编辑。第 7 天:负载测试;模拟提供商故障;验证回退。—## 主要收获- LiteLLM 是无需供应商锁定的多提供商 LLM 应用程序的最快路径。- 从与 OpenAI 兼容的接口开始,然后升级到代理以进行治理。- 尽早投资于路由、弹性和可观测性——你将在第二周而不是第六个月需要它们。- 上面的教程涵盖了你每天将使用的 80%;其余的是你产品的独门秘方。### 常见问题解答Q1: 哪个 LiteLLM 教程最适合初学者?首先观看 YouTube 上的 LiteLLM 速成课程,以获得快速的可视化演练,然后阅读官方入门指南以了解代理。DataCamp 教程提供了你可以复制的实际示例。Q2: 如何将 LiteLLM 用作与 OpenAI 兼容的代理?运行 LiteLLM 代理并将你的 SDK 的基本 URL 指向代理的 `/v1` 端点。将提供商详细信息保留在 LiteLLM 配置中,以便你的应用程序代码保持可移植性。Q3: LiteLLM 可以在 OpenAI、Anthropic 和 Gemini 之间自动路由吗?可以。在 LiteLLM 配置中定义模型和路由策略,以按延迟、成本或质量在提供商之间切换。你还可以设置回退以提高可靠性。Q4: 如何使用 LiteLLM 启用流式传输和工具/函数调用?通过 LiteLLM 使用与 OpenAI 兼容的 API,并启用 `stream=True`(或你的 SDK 中的 SSE)。对于工具调用,请遵循 OpenAI 函数调用格式——LiteLLM 将其转发到目标提供商。Q5: 使用 LiteLLM 控制成本的最快方法是什么?通过代理集中请求,启用使用情况日志记录,并实施每个密钥的速率限制和预算。将不同的工作负载路由到成本优化的模型并固定版本以避免意外。