Актуализирано на 25 сеп 2025
6 мин
# Pythonpip install litellm# Node.jsnpm install litellm# Пример: използване на OpenAI + Anthropic + Mistralexport OPENAI_API_KEY=sk-...export ANTHROPIC_API_KEY=sk-ant-...export MISTRAL_API_KEY=sk-mis-...from litellm import completionresp = completion(model="gpt-4o-mini", # или "anthropic/claude-3-5-sonnet", "mistral/mistral-large"messages=.---## Стрийминг, Инструменти и JSON Режим### Стрийминг на отговори```pythonfrom litellm import completionfor chunk in completion(model="gpt-4o-mini",messages=.### Отчет за разходи и използвани токениLiteLLM може да проследява употребата на токени и да изчислява разхода на заявка, модел или проект. С проксито можете да експортирате статистиките към логове, табла или биллингови системи. Това е безценно при смесване на доставчици с различни тарифи.---## LiteLLM Прокси (LLM Шлюз)Ако сте екип или платформа, проксито е истинска сила: централизирана услуга с маршрутизиране, автентикация, лимити, логване и наблюдение. Работите с него чрез OpenAI API интерфейс, така че кодът ви почти не се променя.### Стартиране на проксито```bash# най-простото локално изпълнениеlitellm --port 4000/v1/chat/completions. Насочете съществуващия си OpenAI клиент към ` и сте готови.config.yaml:model_list:- model_name: gpt-4o-minilitellm_params:model: openai/gpt-4o-miniapi_key: ${OPENAI_API_KEY}- model_name: claude-3-5-sonnetlitellm_params:model: anthropic/claude-3-5-sonnetapi_key: ${ANTHROPIC_API_KEY}router:strategy: simple_weightedroutes:- model: gpt-4o-miniweight: 0.6- model: claude-3-5-sonnetweight: 0.4rate_limits:requests_per_minute: 120logging:level: infosink: stdoutauth:api_keys:- key: svc-app-123litellm --config config.yaml --port 4000from openai import OpenAIclient = OpenAI(base_url=" api_key="svc-app-123")resp = client.chat.completions.create(model="gpt-4o-mini",messages=.---## Разширено маршрутизиране: латентност, цена или надеждностМожете да реализирате маршрутизиращи стратегии като:- Теглово кръгово разпределение за A/B тестове на модели- Приоритет по най-ниска латентност според региона- Маршрутизиране според цена за некритични крайни точки- Задействане на резервен модел при грешки или повторни опитиС политика на маршрутизиране можете да кажете: „Предпочитам евтини, но при трудни заявки преминавам към премиум.“ Това осигурява висока наличност и предвидими бюджети.---## Предпазни механизми, Модерация и СигурностДобавяйте междинен софтуер за пред- и постобработка, който премахва PII, прилага филтри за безопасност или модерира отговорите преди връщане на клиента. Комбинирайте вградена модерация на доставчика (напр. OpenAI, Google) със собствена политика в проксито. Пример: изисквайте JSON схема за валидиране и повторно задаване при невалидни отговори.---## Наблюдение и Логване- Активирайте логване на заявки и отговори с цензуриране.- Експортирайте метрики към Prometheus/Grafana или вашия APM.- Проследявайте латентност, токени и разходи по крайни точки и потребители.Това превръща „рулетката на моделите“ в управляема услуга с SLO и бюджети.---## Реални модели на употреба1) Устойчивост с множество доставчици- Основен модел: бърз и евтин; резервен: високоточен при грешки 429/5xx.- Ползи: по-добра наличност, контрол на разходите и стабилно качество.2) Актуализации чрез feature флагове- Контролирайте разпространение на нов модел до 5% от трафика; следете метриките; увеличавайте при стабилност.3) Продуктови нива- Безплатен план към малки модели; Pro към премиум модели.4) Регистри и шаблони на заявки- Централизирайте заявките в проксито, за да получавате подобрения без преинсталиране на услуги.5) Отчетност и бюджети за екипи- Следете разходи по API ключ; налагайте меки и твърди лимити за екип или продукт.---## Контролен списък за сигурност и съответствие- Съхранявайте ключовете в мениджър на тайни; използвайте ги чрез променливи на средата в конфигурацията.- Включете редация на заявки и премахване на PII в логовете.- Използвайте API ключове на ниво услуга за проксито; въртете ги редовно.- Задайте лимити и квоти за организацията.- Добавете разрешителни и забранителни списъци за модели и крайни точки.---## Отстраняване на проблеми: Бързи решения- „Unauthorized“ през проксито: Проверете `auth.api_keys` и че клиентът използва правилния `base_url` и ключ.- Моделът не е намерен: Уверете се, че `model_list` съдържа посоченото име.- Таймаути: Увеличете `timeout` или насочете към регион с по-ниска латентност.- Странни отговори: Активирайте JSON схема и валидация; добавете повторни опити и резерви.- Внезапни скокове в разходите: Включете кеширане; насочете голям трафик към по-евтини модели; задавайте квоти на ключ.За по-задълбочено изучаване и последни функции, официалната документация се обновява често и си заслужава да бъде отметната. Уроците като този на DataCamp са чудесни за практическо усвояване, а видеокурсът за начинаещи помага да видите концепциите в действие.---## Обединяване: Примерна структура на приложение (Python FastAPI)```python# app.pyfrom fastapi import FastAPIfrom pydantic import BaseModelfrom litellm import completionimport osclass ChatReq(BaseModel):question: strapp = FastAPI()@app.post("/ask")async def ask(req: ChatReq):resp = completion(model=os.getenv("DEFAULT_MODEL", "gpt-4o-mini"),messages=.### ЧЗВВ1: Какво е LiteLLM и защо да го използвам вместо директните SDK на доставчици?LiteLLM е OpenAI-съвместим шлюз за над 100 LLM модела, с единен API и ментална моделна рамка. Намалява зависимостта от доставчици, опростява маршрутизацията и добавя операции като кеширане, повторни опити и проследяване на разходи.В2: Как да използвам LiteLLM с OpenAI SDK?Насочете базовия URL на SDK на LiteLLM проксито и използвайте API ключа на проксито. Кодът ви остава същият, като проксито сменя доставчици или модели прозрачно.В3: Може ли LiteLLM да стриймва отговори и да връща JSON?Да. Използвайте `stream=True` за получаване на токени в поток, и `response_format` с JSON схема за налагане на структурирани резултати при всички доставчици.В4: Как да контролирам разходите при различни LLM доставчици?Активирайте логване на употребата и оценка на разходи, добавете кеширане, задайте лимити и насочвайте голям трафик към по-евтини модели през проксито. Следете с табла за бюджети и SLO.В5: Подходящ ли е LiteLLM за екипи в продукция?Да. Проксито осигурява автентикация, лимити, маршрутизация, наблюдение и предпазни междинни слоеве. То е проектирано като LLM шлюз, централизиращ управлението, запазвайки OpenAI-съвместимост на приложенията.
Как да овладеете ChatPDF: По-бързи прозрения от обемисти документи

Най-добрата алтернатива на X Auto-Translation за бързи и точни документи

Преводът с AI на Samsung не е наличен в Иран? Практически решения

Инструменти за превод на персийски: практическо ръководство за по-бърза и точна работа

Най-добрата алтернатива на Grok за задълбочени, цитирани изследвания

Топ 15 функции на AI генератор на изображения, които наистина ще използвате