Rework Academy • Live Bootcamp

Transformer Architecture

& LLM Fundamentals


Dari Bag-of-Words menuju Large Language Model yang bisa kamu panggil lewat API

Self-Attention • Hugging Face • Gemini API

Hands-on • 150 menit

Yang Akan Kamu Pelajari

📜 Evolusi pendekatan NLP 6.1 • 30′
🧠 Arsitektur Transformer 6.2 • 40′
🤖 Large Language Models 6.3 • 30′
🛠️ Inference & Parameter 6.4 • 40′
📖 Istilah penting (attention, token, temperature)
🛠️ Tools: Hugging Face, Gemini API
🔗 Keterkaitan sesi sebelumnya
🚀 Langkah selanjutnya

Prasyarat & Kontinuitas

Sudah dipelajari di Sesi 1–5

  • Pemahaman intuitif Neural Network & embedding.
  • Keterbatasan RNN & kemunculan Transformer (Sesi 5.2).
  • Environment Python, VS Code, & koneksi Gemini API dari Sesi 1.4.

✅ Tidak ada instalasi baru — pastikan environment & koneksi Gemini API masih aktif sebelum sesi.

Target yang Akan Kamu Capai

Memahami bottleneck RNN (lupa konteks) vs Transformer (konteks paralel) dalam kerangka evolusi NLP.
Memahami mekanisme Self-Attention & struktur Encoder-Decoder.
Memahami apa itu LLM, cara training-nya, & limitasinya (hallucination, bias).
Mengatur parameter temperature, top-p, max tokens untuk mengontrol output model.

6.1 Evolusi Model NLP

Pendekatan NLP berkembang melalui beberapa generasi. Hari ini kita melengkapi peta evolusi yang sudah disinggung di Sesi 5.

Bag-of-Words
RNN / LSTM
Transformer

Tag: Baru Recap dari 5.2 Recap dari 5.2

Generasi Paling Awal: Bag-of-Words

Pendekatan statistik sederhana yang merepresentasikan teks hanya berdasarkan kemunculan kata (frekuensi), tanpa memperhatikan urutan.

Contoh 1

"Kucing mengejar tikus"

Contoh 2

"Tikus mengejar kucing"

Kedua kalimat dianggap identik oleh Bag-of-Words, karena kata penyusunnya sama meski urutannya berbeda.

Keterbatasan Bag-of-Words

  • Tidak memahami konteks & urutan — sering salah menangkap makna.
  • Makna kalimat yang bergantung pada susunan kata menjadi hilang.
  • Hanya melihat "ada kata apa", bukan "kata itu bermakna apa".
Catatan: Perbandingan teknis Bag-of-Words vs embedding modern akan dibahas mendalam di Sesi 7. Di sini kita cukup paham keterbatasan dasarnya.

Generasi Berikutnya: RNN

RNN memproses teks kata demi kata secara berurutan sambil membawa informasi dari kata sebelumnya — jadi sudah bisa memperhitungkan urutan (berbeda dengan BoW).

Recap dari Sesi 5.2: Namun RNN cenderung "lupa" konteks dari kata yang jauh di awal kalimat ketika kalimatnya sangat panjang.
Kata 1
Kata 2
Kata 3
...

RNN "Lupa" vs Transformer "Terlihat"

Perhatikan kalimat panjang yang merujuk ke kata di bagian awal:

"Anak yang kemarin diberi hadiah itu akhirnya ... kembali ke rumah setelah sekian lama."

🔴 RNN

Memproses urut → saat sampai di akhir kalimat, bobot kata di awal memudar / "lupa".

🟢 Transformer

Memproses seluruh kata secara paralel → kata di awal tetap "terlihat" penuh.

Peta Evolusi Lengkap

Generasi 1

Bag-of-Words

Tidak paham urutan
Generasi 2

RNN / LSTM

Paham urutan, tapi mudah lupa konteks panjang
Generasi 3

Transformer

Paham urutan & konteks secara paralel

Kini saatnya membedah mekanisme internal Transformer secara teknis.

6.2 • Arsitektur Transformer

⬇️ Membedah detail teknis yang dulu hanya disinggung intuitif di Sesi 5.2 ⬇️

Self-Attention • Multi-Head • Positional Encoding • Encoder-Decoder

Self-Attention Mechanism

Memungkinkan model menghitung tingkat relevansi antara setiap kata dengan seluruh kata lain dalam kalimat yang sama.

  • Model "memutuskan" kata mana yang paling penting untuk diperhatikan saat memahami makna suatu kata.
  • Menghasilkan attention score antar pasangan kata — skor tinggi = keterkaitan makna kuat.
Kenapa penting? Inilah yang membuat Transformer bisa "menghubungkan" kata yang relevan meski posisinya berjauhan.

Multi-Head Attention

Transformer tidak hanya menghitung satu jenis hubungan antar kata, melainkan beberapa "kepala perhatian" (heads) secara bersamaan.

Head 1

Fokus pada hubungan subjek–predikat.

Head 2

Fokus pada hubungan kata sifat–objek.

Head N

Menangkap aspek konteks lain yang berbeda.

Multi-head membuat Transformer memahami konteks kalimat secara lebih kaya.

Positional Encoding

Karena Transformer memproses seluruh kata secara paralel, model kehilangan informasi urutan asli kata-kata tersebut.

  • Positional Encoding "menandai" posisi setiap kata dalam kalimat.
  • Meski diproses paralel, model tetap tahu urutan yang sebenarnya.
  • Mempertahankan keunggulan pemahaman urutan RNN, tanpa kelemahan pemrosesan berurutan yang lambat.

Encoder vs Decoder

🧠 Encoder

Membaca & memahami teks input secara menyeluruh → menghasilkan representasi kaya konteks.

✍️ Decoder

Menghasilkan output (teks baru) berdasarkan representasi encoder, kata demi kata berurutan.

Beberapa model populer memakai kombinasi berbeda: encoder-only (pemahaman teks) vs decoder-only / encoder-decoder (generative).

Visualisasi Self-Attention (Live)

Lihat bagaimana kata yang jauh tetap saling terhubung.

adik yang membeli buku semakin tebal garis = semakin kuat bobot perhatian
  • Garis tebal menghubungkan kata yang relevan secara makna, meski posisinya tidak bersebelahan.
  • Setiap kata "memperhatikan" kata lain dengan bobot berbeda.

Papan Visualisasi Live

🖊️ Buka papan visualisasi:

Excalidraw

6.3 • Large Language Models

⬇️ Dari arsitektur menuju produk jadi yang dipakai industri ⬇️

Apa itu LLM • Bagaimana dilatih • Model Card • Keterbatasan

Apa Itu Large Language Model?

Model deep learning berbasis arsitektur Transformer yang dilatih menggunakan dataset teks dalam skala sangat besar.

Kata "Large" merujuk pada skala parameter model & skala data yang dipakai untuk melatihnya.

Arsitektur Transformer
+
Miliaran token
+
Komputasi besar

Bagaimana LLM Dilatih?

  • Dilatih menggunakan miliaran token dari berbagai sumber internet: artikel, buku, halaman web, kode, dan teks lain.
  • Membutuhkan resource komputasi & finansial sangat besar.
  • Menghubungkan ke Sesi 5.3: alasan AI Engineer tidak melatih model dari nol.
Kenapa penting? Memahami skala training menjelaskan kenapa kita lebih sering memakai model (inference) daripada membuat model (training).

Contoh LLM Populer

OpenAI

GPT series (ChatGPT).

Google

Gemini — dipakai di sesi ini.

Meta

Llama (open-weight).

Anthropic

Claude.

Mistral

Model open-weight populer.

Lanskap

Pemain utama ekosistem LLM.

Membaca Model Card di Hugging Face

Buka Hugging Face → pilih model populer (misal Llama atau Mistral).

Deskripsi model — arsitektur, ukuran parameter, tujuan dibuat.
Data training — sumber data yang dipakai (jika dipublikasikan).
Limitations — keterbatasan yang dicantumkan pembuat model.
Penting: Aktivitas ini hanya membaca dokumentasi di browser — model TIDAK didownload/dijalankan lokal (ukurannya puluhan GB, tidak realistis untuk sesi 150 menit).

Tiga Keterbatasan Utama LLM

💬 Hallucination

Menghasilkan informasi meyakinkan tapi faktual salah (misal "mengarang" referensi yang tidak ada).

⚖️ Bias model

Mewarisi bias dari data internet (hubungan ke Sesi 4.4).

📉 Ketergantungan kualitas data

Output kurang andal jika data training kurang representatif.

🔍 Dan lain-lain

Tidak boleh dianggap selalu benar.

6.4 • Inference & Model Usage

⬇️ Berinteraksi langsung dengan LLM lewat API ⬇️

Training vs Inference • Tokenization • Parameter • Live Coding Gemini

Training vs Inference

🏋️ Training

Melatih model dengan data besar — dilakukan penyedia model.

⚡ Inference

Memakai model terlatih untuk menghasilkan output dari prompt — ini yang paling sering dilakukan AI Engineer.

Sebagai AI Engineer, umumnya kamu akan lebih sering berada di sisi inference — namun training/fine-tuning juga bisa dilakukan.

Tokenization

LLM tidak memproses teks langsung — harus dipecah menjadi token dulu. "Lihat dulu, baru coding."

"Data+ Engineering+ is+ fun"

Kalimat dipecah menjadi unit-unit kecil (token) — bisa berupa kata utuh, sebagian kata, atau tanda baca.

Tiga Parameter Utama

🌡️ Temperature

Pengatur "kreativitas"/keacakan output: rendah = deterministik & konsisten, tinggi = variatif & kreatif.

🔢 Max tokens

Batas maksimum panjang output — mengontrol biaya & mencegah output bertele-tele.

🎯 Top-p sampling

Model hanya memilih dari kumpulan kata dengan total probabilitas tertentu (misal 90%) — membatasi kata aneh tanpa terlalu deterministik.

Live Coding: Memanggil Gemini API

import google.generativeai as genai

genai.configure(api_key="PASTE_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")

# Prompt fix yang sudah disiapkan & diuji sebelumnya
prompt = "Selesaikan cerita pendek ini: ..."

response = model.generate_content(
    prompt,
    generation_config={
        "temperature": 0.2,      # rendah → konsisten
        "max_output_tokens": 200,
        "top_p": 0.9,
    },
)
print(response.text)
Kenapa penting? Verifikasi koneksi API key dari Sesi 1.4 masih aktif — pakai satu prompt fix yang sama agar perbandingan hasil adil.

Eksperimen Temperature

Jalankan prompt fix yang sama dengan nilai temperature berbeda:

🌡️ Rendah (≈0) — output konsisten, to-the-point. Ulangi → hasil stabil/serupa.
🌡️ Tinggi (≈1+) — output variatif, kreatif, kadang tak terduga. Ulangi → hasil berbeda tiap kali (non-deterministik).

Rendah = butuh konsistensi (ekstraksi data terstruktur). Tinggi = butuh kreativitas (brainstorming, penulisan kreatif).

Recap

Perjalanan yang kamu pelajari:

Bag-of-Words
RNN/LSTM
Transformer
LLM & Inference

Memahami arsitektur = mampu memakai & mengontrol LLM dengan bijak.

Langkah Selanjutnya

  • Bandingkan Bag-of-Words vs embedding secara teknis di Sesi 7.
  • Pelajari fine-tuning & prompt engineering lebih dalam.
  • Eksplorasi Model Card berbagai model di Hugging Face.
  • Bangun aplikasi yang memanfaatkan API LLM.

Fondasi kuat membuka banyak peluang di AI Engineering.

Terima Kasih!

Ada pertanyaan?