LiteLLM: Universal API Gateway untuk 100+ Model LLM

# LiteLLM: Universal API Gateway untuk 100+ Model LLM Dalam dunia AI yang berkembang pesat, kita dihadapkan dengan puluhan penyedia LLM (Large Language Model) seperti OpenAI, Anthropic, Google Gemini...

By Ruby Abdullah · · tutorial
LiteLLMLLMAPI GatewayOpenAIPython

LiteLLM: Universal API Gateway untuk 100+ Model LLM

Dalam dunia AI yang berkembang pesat, kita dihadapkan dengan puluhan penyedia LLM (Large Language Model) seperti OpenAI, Anthropic, Google Gemini, Cohere, Ollama, dan masih banyak lagi. Setiap penyedia memiliki format API, autentikasi, dan parameter yang berbeda-beda. Bayangkan jika Anda bisa memanggil semua model tersebut dengan satu interface yang seragam. Itulah yang ditawarkan oleh LiteLLM.

LiteLLM adalah library Python open-source yang menyediakan unified interface untuk memanggil 100+ model LLM menggunakan format OpenAI API. Dengan LiteLLM, Anda cukup menulis kode sekali dan bisa berpindah antar provider tanpa mengubah kode sama sekali.

Mengapa LiteLLM?

Berikut beberapa alasan mengapa LiteLLM menjadi pilihan populer:

  • Unified API: Satu format pemanggilan untuk semua provider
  • 100+ Model: Mendukung OpenAI, Anthropic, Google, Cohere, Ollama, HuggingFace, dan lainnya
  • OpenAI-Compatible Proxy: Jalankan proxy server yang kompatibel dengan OpenAI API
  • Fallback & Retry: Otomatis berpindah ke model lain jika satu model gagal
  • Cost Tracking: Lacak biaya penggunaan setiap model
  • Load Balancing: Distribusikan request ke beberapa model/provider
  • Streaming: Dukungan streaming response bawaan
  • Production Ready: Router untuk deployment produksi skala besar

Instalasi dan Setup

Instalasi LiteLLM

Instal LiteLLM menggunakan pip:

pip install litellm

Untuk fitur proxy server, instal dengan dependensi tambahan:

pip install 'litellm[proxy]'

Konfigurasi API Key

Sebelum mulai, siapkan API key dari provider yang ingin Anda gunakan. Simpan sebagai environment variable:

# OpenAI

export OPENAIAPIKEY="sk-your-openai-key"

Anthropic

export ANTHROPICAPIKEY="sk-ant-your-anthropic-key"

Google Gemini

export GEMINIAPIKEY="your-gemini-key"

Atau gunakan file .env

Anda juga bisa menggunakan file .env dan memuat dengan python-dotenv:

from dotenv import loaddotenv

loaddotenv()

Basic Completion Calls

Memanggil OpenAI GPT

import litellm

Panggil OpenAI GPT-4o

response = litellm.completion(

model="gpt-4o",

messages=[

{"role": "system", "content": "Kamu adalah asisten yang membantu."},

{"role": "user", "content": "Jelaskan apa itu machine learning dalam 2 kalimat."}

]

)

print(response.choices[0].message.content)

Memanggil Anthropic Claude

# Panggil Anthropic Claude - cukup ganti nama model!

response = litellm.completion(

model="anthropic/claude-sonnet-4-20250514",

messages=[

{"role": "user", "content": "Jelaskan apa itu neural network dalam 2 kalimat."}

]

)

print(response.choices[0].message.content)

Memanggil Google Gemini

# Panggil Google Gemini

response = litellm.completion(

model="gemini/gemini-2.0-flash",

messages=[

{"role": "user", "content": "Apa perbedaan supervised dan unsupervised learning?"}

]

)

print(response.choices[0].message.content)

Memanggil Ollama (Model Lokal)

# Panggil model lokal via Ollama

response = litellm.completion(

model="ollama/llama3",

messages=[

{"role": "user", "content": "Tulis fungsi Python untuk menghitung fibonacci."}

],

apibase="http://localhost:11434"

)

print(response.choices[0].message.content)

Unified Interface - Satu Kode, Banyak Provider

Keunggulan utama LiteLLM adalah Anda bisa membuat fungsi generic yang bekerja dengan provider mana pun:

import litellm

def tanyaai(pertanyaan: str, model: str = "gpt-4o") -> str:

"""Fungsi universal untuk bertanya ke AI model mana pun."""

response = litellm.completion(

model=model,

messages=[

{"role": "user", "content": pertanyaan}

],

Artikel Terkait

Tutorial TRL: Post-Training LLM dengan SFT, DPO, dan Reward Modeling

Post-Training LLM dengan TRL: SFT, Reward Modeling, dan DPO Setelah sebuah base language model selesai dipretraining, mo...

Tutorial Axolotl: Fine-Tuning LLM Berbasis Konfigurasi YAML

Fine-Tuning LLM Berbasis Konfigurasi dengan Axolotl Kebanyakan proyek fine-tuning dimulai dengan cara yang sama: seseora...

Tutorial PydanticAI: Framework Agent LLM yang Type-Safe

Membangun Agen LLM yang Type-Safe dengan PydanticAI PydanticAI adalah framework agen dari tim di balik Pydantic, diranca...

Tutorial Unsloth: Fine-Tuning LLM yang Cepat dan Hemat Memori

Fine-Tuning LLM Secara Efisien dengan Unsloth Dahulu, melakukan fine-tuning model bahasa besar membutuhkan server multi-...