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

Helicone: Cara Monitor dan Kontrol Semua LLM Call di Produksi

Helicone: Cara Aku Memonitor dan Mengontrol Semua LLM Call di Produksi Temen-temen, kalau kalian sudah mulai serius bang...

OpenRouter: Satu API untuk Ratusan LLM (OpenAI, Anthropic, Google, Meta, Mistral)

OpenRouter: Satu API untuk Ratusan LLM (OpenAI, Anthropic, Google, Meta, Mistral) Halo temen-temen, ketemu lagi sama aku...

Tutorial Lengkap Guidance: Constrained Generation dan Structured Output dari LLM

Tutorial Lengkap Guidance: Constrained Generation dan Structured Output dari LLM Halo temen-temen, di tutorial kali ini ...

Tutorial Zep: Memori Jangka Panjang untuk AI Agent dengan Temporal Knowledge Graph

Zep: Bikin AI Agent Punya Memori Jangka Panjang dengan Temporal Knowledge Graph Temen-temen, pernah ngobrol sama chatbot...