LiteLLM Proxy (LLM Gateway)
| Eigenschaft | Details |
|---|---|
| Beschreibung | LiteLLM Proxy ist ein OpenAI-kompatibler Gateway, der es Ihnen ermöglicht, über eine einheitliche API mit mehreren LLM-Anbietern zu interagieren. Verwenden Sie einfach das Präfix litellm_proxy/ vor dem Modellnamen, um Ihre Anfragen über den Proxy zu leiten. |
| Provider-Routing in LiteLLM | litellm_proxy/ (fügen Sie dieses Präfix zum Modellnamen hinzu, um alle Anfragen an litellm_proxy zu leiten - z.B. litellm_proxy/ihr-modellname) |
| LiteLLM Gateway einrichten | LiteLLM Gateway ↗ |
| Unterstützte Endpunkte | /chat/completions, /completions, /embeddings, /audio/speech, /audio/transcriptions, /images, /rerank |
Erforderliche Variablen​
os.environ["LITELLM_PROXY_API_KEY"] = "" # "sk-1234" your litellm proxy api key
os.environ["LITELLM_PROXY_API_BASE"] = "" # "https://:4000" your litellm proxy api base
Verwendung (Nicht-Streaming)​
import os
import litellm
from litellm import completion
os.environ["LITELLM_PROXY_API_KEY"] = ""
# set custom api base to your proxy
# either set .env or litellm.api_base
# os.environ["LITELLM_PROXY_API_BASE"] = ""
litellm.api_base = "your-openai-proxy-url"
messages = [{ "content": "Hello, how are you?","role": "user"}]
# litellm proxy call
response = completion(model="litellm_proxy/your-model-name", messages)
Verwendung - api_base, api_key pro Anfrage übergeben​
Wenn Sie api_base dynamisch festlegen müssen, übergeben Sie es stattdessen in completions - completions(...,api_base="ihre-proxy-api-base")
import os
import litellm
from litellm import completion
os.environ["LITELLM_PROXY_API_KEY"] = ""
messages = [{ "content": "Hello, how are you?","role": "user"}]
# litellm proxy call
response = completion(
model="litellm_proxy/your-model-name",
messages=messages,
api_base = "your-litellm-proxy-url",
api_key = "your-litellm-proxy-api-key"
)
Verwendung - Streaming​
import os
import litellm
from litellm import completion
os.environ["LITELLM_PROXY_API_KEY"] = ""
messages = [{ "content": "Hello, how are you?","role": "user"}]
# openai call
response = completion(
model="litellm_proxy/your-model-name",
messages=messages,
api_base = "your-litellm-proxy-url",
stream=True
)
for chunk in response:
print(chunk)
Embeddings​
import litellm
response = litellm.embedding(
model="litellm_proxy/your-embedding-model",
input="Hello world",
api_base="your-litellm-proxy-url",
api_key="your-litellm-proxy-api-key"
)
Bilderzeugung​
import litellm
response = litellm.image_generation(
model="litellm_proxy/dall-e-3",
prompt="A beautiful sunset over mountains",
api_base="your-litellm-proxy-url",
api_key="your-litellm-proxy-api-key"
)
Audio-Transkription​
import litellm
response = litellm.transcription(
model="litellm_proxy/whisper-1",
file="your-audio-file",
api_base="your-litellm-proxy-url",
api_key="your-litellm-proxy-api-key"
)
Text-to-Speech​
import litellm
response = litellm.speech(
model="litellm_proxy/tts-1",
input="Hello world",
api_base="your-litellm-proxy-url",
api_key="your-litellm-proxy-api-key"
)
Rerank​
import litellm
import litellm
response = litellm.rerank(
model="litellm_proxy/rerank-english-v2.0",
query="What is machine learning?",
documents=[
"Machine learning is a field of study in artificial intelligence",
"Biology is the study of living organisms"
],
api_base="your-litellm-proxy-url",
api_key="your-litellm-proxy-api-key"
)
Integration mit anderen Bibliotheken​
LiteLLM Proxy funktioniert nahtlos mit Langchain, LlamaIndex, OpenAI JS, Anthropic SDK, Instructor und mehr.
Erfahren Sie, wie Sie LiteLLM Proxy mit diesen Bibliotheken verwenden →
Alle SDK-Anfragen an LiteLLM Proxy senden​
Verwenden Sie dies, wenn Sie LiteLLM Proxy von einer beliebigen Bibliothek / Codebasis aus aufrufen, die bereits das LiteLLM SDK verwendet.
Diese Flags leiten alle Anfragen über Ihren LiteLLM Proxy, unabhängig vom angegebenen Modell.
Wenn aktiviert, verwenden Anfragen LITELLM_PROXY_API_BASE mit LITELLM_PROXY_API_KEY zur Authentifizierung.
Option 1: Global im Code festlegen​
# Set the flag globally for all requests
litellm.use_litellm_proxy = True
response = litellm.completion(
model="vertex_ai/gemini-2.0-flash-001",
messages=[{"role": "user", "content": "Hello, how are you?"}]
)
Option 2: Über Umgebungsvariable steuern​
# Control proxy usage through environment variable
os.environ["USE_LITELLM_PROXY"] = "True"
response = litellm.completion(
model="vertex_ai/gemini-2.0-flash-001",
messages=[{"role": "user", "content": "Hello, how are you?"}]
)
Option 3: Pro Anfrage festlegen​
# Enable proxy for specific requests only
response = litellm.completion(
model="vertex_ai/gemini-2.0-flash-001",
messages=[{"role": "user", "content": "Hello, how are you?"}],
use_litellm_proxy=True
)