Lewati ke konten utama

Llama 4 dengan vLLM: Panduan Disertai Proyek Demo

Pelajari cara menerapkan dan menggunakan LLaMA 4 Scout dari Meta dengan vLLM di RunPod untuk penyelesaian teks dan inferensi multimodal.
Diperbarui 28 Sep 2026  · 12 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Model LLaMA 4 terbaru dari Meta, Scout dan Maverick, dibuat untuk penalaran konteks panjang, pemahaman multimodal, serta inferensi yang efisien dalam skala besar. Dipadukan dengan vLLM, mesin inferensi ber-throughput tinggi dengan API yang kompatibel dengan OpenAI, model-model ini menjadi praktis untuk aplikasi dunia nyata.

Dalam artikel ini, saya akan memandu Anda men-deploy LLaMA 4 Scout pada instance multi-GPU RunPod menggunakan vLLM dan menyajikannya melalui endpoint API lokal atau jarak jauh yang kompatibel dengan OpenAI. Kita akan membahas penyiapan model, deployment, dan interaksi API menggunakan input teks maupun gambar.

Di akhir tutorial, Anda juga akan memiliki dua demo lengkap:

  1. Demo penyelesaian teks: Antarmuka sederhana untuk bercakap dengan LLaMA 4 menggunakan kode Python yang kompatibel dengan OpenAI dan mengeksplorasi kemampuan konteks panjang.
  2. Demo visi multimodal: Antarmuka yang menerima input teks dan gambar menggunakan dukungan multimodal vLLM dan mengembalikan respons penalaran visual berbasis bukti dari LLaMA 4.

Kami selalu mengabari pembaca tentang kabar terbaru AI lewat The Median, buletin gratis setiap Jumat yang merangkum kisah-kisah kunci dalam sepekan. Berlangganan dan tetap tajam hanya dalam beberapa menit setiap minggu:

Mengapa Menggunakan LLaMA 4 di vLLM?

vLLM (virtual large language model) adalah kerangka kerja inferensi LLM yang dioptimalkan, awalnya dikembangkan di Sky Computing Lab UC Berkeley, yang memperkenalkan PagedAttention, sistem manajemen memori baru yang meminimalkan fragmentasi memori GPU dan memungkinkan caching key-value yang efisien untuk sekuens yang sangat panjang. Untuk mempelajari lebih lanjut, lihat tutorial ini tentang vLLM.

Inilah alasan vLLM adalah mesin ideal untuk menyajikan LLaMA 4:

  1. Throughput tinggi, latensi rendah: cache KV bertingkat (paged) vLLM memungkinkan inferensi efisien, bahkan dengan konteks panjang.
  2. Siap multimodal dan konteks panjang: Mendukung gambar dan hingga konteks 10M token untuk model Scout.
  3. Kompatibel dengan OpenAI: Anda dapat menggunakan SDK dan alat OpenAI tanpa modifikasi.
  4. Terukur dan efisien GPU: vLLM memanfaatkan penuh banyak GPU—termasuk H100, A100, dan MI300X—dengan paralelisme tensor dan memori untuk inferensi ber-throughput tinggi.

Hosting LLaMA 4 Scout di RunPod Dengan vLLM

Pada bagian ini, kita akan membahas cara menyediakan instance multi-GPU bertenaga di RunPod, men-deploy model LLaMA 4 Scout dari Meta menggunakan vLLM, dan membuka API yang kompatibel dengan OpenAI untuk inferensi lokal maupun jarak jauh.

Langkah 1: Siapkan lingkungan RunPod Anda 

Sebelum meluncurkan model, pastikan akun RunPod Anda sudah siap:

  • Masuk ke RunPod.io dan konfigurasikan penagihan Anda.
  • Tambahkan setidaknya $25 ke saldo Anda agar dapat menjalankan instance GPU besar selama proyek ini.

Langkah 2: Deploy pod dengan GPU H100 NVL

Sekarang, mari sediakan pod yang mampu menjalankan model LLaMA 4 Scout 17B:

  1. Buka bagian Pods dan klik "Deploy a Pod."
  2. Saring GPU berdasarkan VRAM, atur minimum ke 80 GB, lalu pilih opsi H100 NVL. Catatan: LLaMA 4 Scout memerlukan setidaknya 24 GB VRAM. Untuk performa optimal, kita akan menggunakan 4x H100 NVL.

H100 NVL GPU RunPod for Llama 4

  1. Gulir ke bawah dan beri nama pod Anda, misalnya "LLAMA4_DEMO".
  2. Di bawah Template, klik "Change Template" dan pilih PyTorch 2.4.0.
  3. Klik "Edit Template", atur Container Disk dan Volume Disk ke 1000 GB, lalu terapkan override.
  4. (Opsional) Tambahkan access token Hugging Face Anda ke environment variables untuk mengunduh model.

Edit Template for template overrides in RunPod for running Llama 4

  1. Atur GPU Count ke 4, lalu klik "Deploy On-Demand."

GPU Counts settings for runpod pytorch 2.4.0

Tunggu beberapa menit hingga pod selesai disediakan.

Provisioned Pod

Langkah 3: Sambungkan ke pod Anda

Saat tombol "Connect" berubah menjadi ungu, klik tombol tersebut. Anda akan melihat beberapa opsi koneksi—Anda bisa:

  • Membuka terminal JupyterLab untuk menjalankan perintah shell.
  • Atau menggunakan port SSH atau HTTP jika ingin kendali jarak jauh.

Langkah 4: Instal vLLM dan pustaka yang dibutuhkan

Di terminal dalam pod Anda, instal vLLM dan dependensinya. Instal vLLM dan pustaka lainnya di dalam lingkungan pod.

pip install -U vllm
pip install transformers accelerate pillow #optional

Langkah 5: Jalankan LLaMA 4 Scout pada vLLM

Selanjutnya, kita meluncurkan server model LLaMA 4 Scout dengan perintah berikut:

VLLM_DISABLE_COMPILE_CACHE=1 vllm serve meta-llama/Llama-4-Scout-17B-16E-Instruct \
--tensor-parallel-size 4 \
--max-model-len 100000 --override-generation-config='{"attn_temperature_tuning": true}'

Perintah ini melakukan hal-hal berikut:

  • Menonaktifkan compile cache vLLM untuk waktu mulai yang lebih cepat.
  • Menjalankan model pada 4 GPU menggunakan tensor parallelism.
  • Mengatur panjang konteks maksimum 100.000 token karena keterbatasan memori. Catatan - Jika Anda ingin menjalankan model dengan panjang konteks 10M, Anda memerlukan setidaknya 8 x GPU H100.
  • Mengaktifkan konfigurasi attention temperature tuning untuk meningkatkan akurasi pada inferensi konteks panjang.

Setting up vLLM for Llama 4

Downloading model shards for Llama 4

Sekarang API Anda berjalan pada port 8000, buat Jupyter Notebook baru dalam lingkungan pod yang sama.

Penyelesaian Teks dengan Llama 4 Scout

Dalam demo ini, kita akan berinteraksi dengan model LLaMA 4 Scout yang di-host secara lokal dan disajikan melalui vLLM menggunakan skrip Python sederhana. Model dibuka melalui API, memungkinkan kita membangun asisten percakapan yang mendukung dialog multi-giliran.

Langkah 1: Prasyarat

Kita akan menggunakan OpenAI Python SDK resmi untuk berkomunikasi dengan API vLLM dan pustaka Colorama untuk output terminal berwarna. Anda dapat memasang keduanya dengan:

pip install openai colorama

Setelah terpasang, impor modul yang diperlukan:

from openai import OpenAI
from colorama import Fore, Style, init

Langkah 2: Inisialisasi klien

Kita mengonfigurasi klien OpenAI agar mengarah ke server vLLM yang berjalan secara lokal. Jika deployment Anda tidak memerlukan kunci API (perilaku default untuk run lokal), isikan "EMPTY" sebagai kuncinya:

# Initialize colorama
init(autoreset=True)
# Set up client
openai_api_key = "EMPTY"  
openai_api_base = "http://localhost:8000/v1"
client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

Kode ini menginisialisasi pustaka Colorama untuk keluaran terminal berwarna dengan reset otomatis setelah setiap cetak. Lalu menyiapkan klien yang kompatibel dengan OpenAI menggunakan kelas OpenAI, diarahkan ke API vLLM yang di-host secara lokal.

Langkah 3: Mulai loop chat

Berikutnya, kita membuat loop sederhana agar dapat berinteraksi terus-menerus dengan model. Riwayat percakapan dipertahankan di setiap giliran, memungkinkan perilaku dialog multi-giliran.

# Initialize message history
messages = [
    {"role": "system", "content": "You are a helpful assistant."}
]
print("Start chatting with the assistant! Type 'exit' or 'quit' to end.\n")
while True:
    user_input = input(f"{Fore.BLUE}User: {Style.RESET_ALL}")
    if user_input.strip().lower() in ["exit", "quit"]:
        print("Exiting chat. Goodbye!")
        break
    messages.append({"role": "user", "content": user_input})
    chat_response = client.chat.completions.create(
        model="meta-llama/Llama-4-Scout-17B-16E-Instruct",
        messages=messages,
    )
    assistant_message = chat_response.choices[0].message.content
    print(f"{Fore.GREEN}Assistant: {assistant_message}\n{Style.RESET_ALL}")
    messages.append({"role": "assistant", "content": assistant_message})

Antarmuka chat berbasis terminal yang sederhana diinisialisasi dengan riwayat percakapan dan prompt sistem, menerima input pengguna secara terus-menerus dalam loop. Setiap pesan pengguna ditambahkan ke riwayat dan dikirim ke model Llama-4-Scout-17B-16E-Instruct melalui pemanggilan API client.chat.completions.create().

Respons model dicetak dalam warna hijau menggunakan Colorama dan ditambahkan kembali ke riwayat, memungkinkan dialog multi-giliran hingga pengguna mengetik "exit" atau "quit".

Text completion demo for Llama 4 scout on vLLM

Pada bagian berikutnya, kita akan melihat cara menjalankan inferensi multimodal dengan input gambar + teks menggunakan API yang sama.

Inferensi Gambar dan Teks Multimodal dengan LLaMA 4 Scout

Dalam demo ini, kita akan melihat cara mengirim input gambar dan teks sekaligus ke model LLaMA 4 Scout yang di-host melalui vLLM menggunakan kapabilitas multimodal bawaannya. Ini memungkinkan Anda melakukan penalaran visual, pembuatan caption gambar, atau tanya jawab multimodal—semuanya melalui satu API yang kompatibel dengan OpenAI.

Langkah 1: Prasyarat

Contoh ini menggunakan OpenAI SDK untuk terhubung ke server vLLM. Jika belum terpasang, jalankan:

pip install openai

Lalu impor modul yang diperlukan: 

from openai import OpenAI

Langkah 2: Siapkan klien API

Hubungkan ke server vLLM lokal Anda menggunakan antarmuka yang kompatibel dengan OpenAI. Jika server Anda tidak memerlukan autentikasi, gunakan "EMPTY" sebagai kunci API.

openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"
client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

Cuplikan kode di atas menginisialisasi klien yang kompatibel dengan OpenAI untuk inferensi lokal menggunakan server vLLM. api_key disetel ke "EMPTY" (tanpa autentikasi), dan base_url diarahkan ke endpoint API vLLM lokal.

Langkah 3: Kirim prompt multimodal

Sekarang kita akan mengirim prompt chat yang mencakup gambar dan instruksi teks. LLaMA 4 Scout akan memproses gambar bersamaan dengan pertanyaan dan mengembalikan respons deskriptif.

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": image_url1}},
            {"type": "text", "text": "Can you describe what's in this image?"}
        ]
    }
]
chat_response = client.chat.completions.create(
    model="meta-llama/Llama-4-Scout-17B-16E-Instruct",  
    messages=messages,
)
print("Response:", chat_response.choices[0].message.content)

Setelah inferensi multimodal menggunakan model LLaMA 4 Scout berjalan, kita menyusun input bergaya chat yang berisi URL gambar dan prompt teks, diformat mengikuti skema chat OpenAI. Metode client.chat.completions.create() digunakan untuk mengirim permintaan multimodal ke model, yang memproses gambar beserta teks pendampingnya untuk menghasilkan respons kontekstual.

Multimodal demo

Multimodal demo

Kesimpulan

Dalam tutorial ini, kita meng-host model LLaMA 4 Scout dari Meta menggunakan vLLM di RunPod, sehingga dapat diakses melalui endpoint yang kompatibel dengan OpenAI untuk inferensi teks dan multimodal. Dengan menggabungkan throughput tinggi vLLM dan infrastruktur bertenaga dari RunPod, kita membuat setup yang hemat biaya untuk menyajikan LLM mutakhir dengan kemampuan konteks panjang dan visi.

Untuk mempelajari lebih lanjut tentang LLaMA 4 dan vLLM, lihat:


Aashi Dutt's photo
Author
Aashi Dutt
LinkedIn
Twitter

Saya adalah Google Developers Expert di ML (Gen AI), Kaggle 3x Expert, dan Women Techmakers Ambassador dengan pengalaman lebih dari 3 tahun di bidang teknologi. Saya ikut mendirikan startup health-tech pada 2020 dan sedang menempuh studi magister ilmu komputer di Georgia Tech dengan spesialisasi machine learning.

Topik
Kecerdasan Buatan
Large Language Models

Pelajari AI lewat kursus-kursus ini!

Program

Llama Fundamentals

4 jam
Coba gunakan Llama 3 untuk menjalankan inferensi pada model yang telah dilatih sebelumnya, menyesuaikan model tersebut pada dataset kustom, dan mengoptimalkan kinerjanya.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

Lihat SelengkapnyaLihat Selengkapnya