LiteLLM — это open-source слой, который даёт единый интерфейс в формате OpenAI к 100+ LLM-провайдерам: библиотека Python (completion()) и self-hosted Proxy / AI Gateway с virtual keys, учётом spend и Admin UI. Фокус-ключ: litellm. Канон: docs.litellm.ai. Соседи: Ollama API, Open WebUI, ИИ-автоматизация.

Новичку важно не путать два режима: SDK в коде и Proxy как сервис. Ниже — сравнение и первый маршрут без выдуманных тарифов в рублях.

SDK vs Proxy: что брать

Режим Как ставят Кто вызывает Порт / точка Когда нужен
Python SDK uv add litellm ваш скрипт / агент нет сервера один проект, смена провайдера в коде
Proxy (Gateway) CLI / Docker + config.yaml любой OpenAI-клиент по умолчанию 0.0.0.0:4000 команда, бюджеты, единый endpoint
Прямой OpenAI SDK openai ваш код api.openai.com только один облачный провайдер
Ollama без шлюза Ollama app curl / SDK Ollama localhost:11434 локально, без мульти-провайдера

Источник: docs.litellm.ai Getting Started (uv add litellm; Proxy на :4000; 100+ LLM; Router retry/fallback; virtual keys). Сверка: 2026-10-06. Цены провайдеров в ₽ не фиксируем.

Первый вызов через SDK

Официальный путь: установить пакет, задать ключ провайдера в окружении, вызвать completion() с префиксом модели (openai/…, anthropic/…, ollama/…). Ответ всегда в формате OpenAI Chat Completions.

uv add litellm

# пример OpenAI (ключ в OPENAI_API_KEY)
from litellm import completion
import os

os.environ["OPENAI_API_KEY"] = "your-api-key"
response = completion(
  model="openai/gpt-4o-mini",
  messages=[{"role": "user", "content": "Привет, коротко кто ты?"}],
)
print(response.choices[0].message.content)

# локальный Ollama (ключ не нужен, сервис должен быть запущен)
response = completion(
  model="ollama/llama3",
  messages=[{"role": "user", "content": "Привет"}],
  api_base="http://localhost:11434",
)

Имена конкретных облачных моделей берите из кабинета провайдера и актуальной доки LiteLLM: в документации встречаются плейсхолдеры под текущие линейки. Не копируйте устаревший id модели из старых гайдов.

Proxy: OpenAI-клиент на localhost:4000

  1. Поднимите gateway (CLI litellm --model … или Docker с config.yaml по Quickstart).
  2. Укажите upstream-ключи в env / конфиге.
  3. В клиенте поставьте base_url="http://0.0.0.0:4000" (или ваш хост) — любой код под OpenAI работает без переписывания провайдеров.
  4. Для команд включите virtual keys и бюджеты в Admin UI, когда появится несколько людей/сервисов.
import openai
client = openai.OpenAI(api_key="anything", base_url="http://0.0.0.0:4000")
response = client.chat.completions.create(
  model="your-model-name",
  messages=[{"role": "user", "content": "Напиши короткий чеклист"}],
)
print(response.choices[0].message.content)

Типичные ошибки

  • Ждать «один ключ LiteLLM вместо всех провайдеров» — gateway не отменяет оплату upstream.
  • Путать LiteLLM Proxy с самим vLLM/Ollama: это маршрутизатор, не движок инференса.
  • Стучаться в :4000, пока proxy не запущен; или в Ollama :11434 без ollama serve.
  • Фиксировать рублевые тарифы OpenAI/Anthropic в статье — смотрите биллинг провайдера.
  • Ставить Proxy «на всякий случай» для одного скрипта — сначала SDK.

FAQ: LiteLLM

Что такое LiteLLM простыми словами?

LiteLLM — open-source библиотека и LLM Gateway: один OpenAI-подобный интерфейс к 100+ провайдерам (OpenAI, Anthropic, Vertex, Bedrock, Ollama и др.). Есть Python SDK (completion) и Proxy Server с virtual keys. Канон: docs.litellm.ai.

Чем LiteLLM отличается от прямого вызова OpenAI SDK?

OpenAI SDK говорит с одним провайдером. LiteLLM даёт единый completion()/proxy для многих бэкендов, единый формат ответа, retry/fallback через Router и опционально spend tracking на gateway.

Как установить LiteLLM?

Для SDK: uv add litellm (или pip). Для полного AI Gateway с Admin UI — Quickstart через контейнер по docs.litellm.ai. CLI-прокси: litellm —model …, по умолчанию порт 4000.

Нужен ли отдельный ключ на каждый провайдер?

Да: ключи провайдеров (OPENAI_API_KEY, ANTHROPIC_API_KEY и т.д.) задаёте в окружении. Proxy может выдавать свои virtual keys командам — это уже слой gateway, не замена ключей upstream.

Можно ли подключить локальный Ollama через LiteLLM?

Да. В SDK: model=’ollama/llama3′ и api_base=’http://localhost:11434′. Ответ всё равно в формате OpenAI Chat Completions.

Когда брать Proxy, а когда только SDK?

SDK — если один Python-проект. Proxy (LLM Gateway) — если команде нужен общий OpenAI-compatible endpoint, бюджеты на ключи, логи и Admin UI без правок в каждом клиенте.

Вывод

LiteLLM — способ не переучивать API под каждого вендора: SDK для кода, Proxy для команды на :4000. Старт: uv add litellm, один completion(), потом при необходимости gateway. Когда нужна система обучения под интеграции — форматы на странице обучения.

Артём Денисов — эксперт Нетологии и автор курса Яндекс Практикума по промпт-инжинирингу. Сверяет LiteLLM с docs.litellm.ai (SDK, Proxy :4000, Ollama).

Хотите нейросети под свои задачи, а не «для всех»?

Когда базовых гайдов уже мало, помогает разбор под вашу работу. Наставничество, курсы и подписка Артёма Денисова — все форматы на странице обучения. Соседи по стеку — Ollama API и ИИ-автоматизация.