NS
NEWSAINT
ai-eng• 8 MIN READ•16 September 2026

Codebook Agent 2026: Arsitektur Amortized Topology Design, VQ-Codebook Compression, dan Reranking Tanpa Pesan untuk Sistem Multi-Agent LLM

Bedah mendalam makalah riset UCLA arXiv:2609.02264 (September 2026, Jinxi Yu, Yubei Li, Eric Hanchen Jiang, Zhi Zhang, Dong Liu, Wenxiao Zhao, Levina Li, Kai-Wei Chang, Ying Nian Wu): Mengapa pembuatan topologi komunikasi multi-agent berbasis generative decoders (variational, autoregressive, diffusion) dan graph neural networks (GNN) salah kaprah dan memboroskan token. Membongkar arsitektur Codebook Agent: kompresi topologi berimbalan tinggi ke dalam 16 diskrit kode VQ-VAE, prior reward-weighted MLP, dan execution-grounded proxy yang memangkas latensi seleksi ke 2.4 ms, menurunkan konsumsi token 21.9%–33.2%, serta memimpin seluruh 6 benchmark penalaran dan coding dengan rerata skor 84.62%.

N
Ervareza Naurian Novantila
Lead Architect & Founder NEWSAINT
Fact-Checked & Verified
Ilustrasi Arsitektur Teknis 16:9 Codebook Agent 2026: Arsitektur Amortized Topology Design, VQ-Codebook Compression, dan Reranking Tanpa Pesan untuk Sistem Multi-Agent LLM

Ringkasan Eksekutif & Temuan Inti

Riset terkini dari University of California, Los Angeles (UCLA) dalam makalah frontier arXiv:2609.02264 (September 2026) berjudul "Codebook Agent: Amortized Topology Design for LLM Multi-Agent Systems" membongkar kelemahan fundamental pada paradigma perancangan graf komunikasi agen otonom saat ini. Peneliti menemukan bahwa pendekatan dominan yang memperlakukan sintesis topologi sebagai conditional graph generation (menggunakan variational, autoregressive, atau diffusion decoders) berbasis Graph Neural Networks (GNN) bertumpu pada tiga asumsi keliru.

Fakta empiris membuktikan: (1) Ruang topologi yang berhasil lolos filter reward secara alami mengalami kolaps hanya ke sekitar enam graf unik terlepas dari apakah kapasitas model diperbesar dari 8 hingga 64; (2) Jumlah sisi graf (edge count) justru berkorelasi negatif (Pearson r ≈ -0.4) terhadap konsumsi token aktual—sehingga algoritma yang memangkas sisi graf demi "efisiensi struktural" justru melipatgandakan biaya inferensi LLM; dan (3) Mekanisme message-passing GNN bersifat adjacency-invariant pada tim homogen yang mendominasi benchmark industri, menjadikannya buta struktur dan tidak mampu merangking graf kandidat.

Sebagai solusinya, peneliti memperkenalkan Codebook Agent: arsitektur amortized feed-forward tiga komponen yang mengompresi topologi unggul ke dalam 16 kode diskrit VQ-VAE, memetakan query ke distribusi prior terbobot imbalan (reward-weighted MLP), dan melakukan reranking kandidat terbaik hanya dengan satu siklus batched pass MLP proxy. Tanpa search loop iteratif dan tanpa message passing saat test-time, Codebook Agent menorehkan akurasi tertinggi di seluruh 6 benchmark (rerata 84.62% melampaui GTD 83.02%), menghasilkan keputusan topologi dalam waktu 2.4 milidetik, serta memangkas pemakaian token LLM sebesar 21.9% hingga 33.2%.

1. Tiga Asumsi Palsu pada Generative Multi-Agent Topology Designers

Dalam kurun 2024 hingga 2026, orkestrator multi-agent seperti GPTSwarm, G-Designer, ARG-Designer, dan GTD mengusung filosofi bahwa setiap prompt pengguna yang berbeda memerlukan topologi komunikasi kustom yang digenerasikan secara kontinu di atas ruang matriks ketetanggaan N × N. Alur standarnya selalu seragam: decoder generatif (berbasis VAE, Autoregressive, atau Denoising Diffusion) melakukan pencarian acak, lalu Graph Neural Network (GNN) melakukan message passing pada profil agen untuk menilai kandidat mana yang memiliki edge count terendah dan utilitas tertinggi.

Eksperimen ketat tim UCLA membuktikan bahwa resep ini salah kaprah karena bertumpu pada premis fiktif:

Premis Fiktif 1: Ruang Desain Topologi Bermanfaat Berbentuk Kontinu Luas

Kenyataan: Topologi yang mampu menyelesaikan tugas secara konsisten mengalami kolaps ke dalam hanya sekitar 6 graf unik. Meningkatkan kapasitas codebook dari 8 menjadi 64 tidak memunculkan variasi baru yang bermanfaat; slot tambahan tetap kosong atau hanya mereplikasi subgraf identik. Komputasi mahal yang dihabiskan untuk menjelajahi manifold ketetanggaan kontinu terbuang percuma pada ruang solusi yang tidak pernah dihuni oleh masalah.

Premis Fiktif 2: Edge Count Berbanding Lurus dengan Biaya Inferensi

Kenyataan: Semua sistem terdahulu memakai jumlah sisi (edge count |E|) sebagai proksi biaya struktural. Padahal, pengukuran langsung pada log eksekusi membuktikan korelasi negatif Pearson r ≈ -0.4. Ketika graf dibuat terlalu jarang (sparse), agen kehilangan konteks awal dari rekan kerjanya, sehingga menghasilkan penjelasan rantai penalaran yang jauh lebih panjang dan berputar-putar untuk mengoreksi miskomunikasi. Meminimalisir sisi graf justru memaksimalkan tagihan token LLM.

Premis Fiktif 3: GNN Message-Passing Mampu Membedakan Struktur pada Tim Homogen

Kenyataan: Dalam benchmark standar di mana para agen berbagi profil atau sistem prompt yang setara (misalnya sekelompok MathSolvers atau PythonExperts), representasi awal simpul x_i = x_j. Dalam kondisi ini, lapisan agregasi GNN menghasilkan nilai skalar yang identik untuk graf manapun (adjacency-invariant). Ratusan langkah sampling difusi terpandu pada akhirnya hanya menghasilkan tebakan konstan.

2. Paradoks Konsumsi Token: Mengapa Graf Jarang Justru Mencekik Anggaran

Salah satu kontribusi analitis terpenting dari makalah ini adalah pembedahan paradoks biaya token. Perhatikan perbandingan dinamika berikut:

┌────────────────────────────────────────────────────────────────────────────────────────┐ │ PARADOKS BIAYA KOMUNIKASI MULTI-AGENT │ ├────────────────────────────────────────────────────────────────────────────────────────┤ │ 1. Paradigma Lama (Sparsitas Struktural): │ │ Tujuan: Minimalkan |E| (Sisi Graf) │ │ Akibat: Agen hulu & hilir terputus -> Diskusi bertele-tele -> Penalaran berulang │ │ Hasil: Token Completion Meledak (+48% token pada GSM8K, r = -0.4) │ │ │ │ 2. Paradigma Codebook Agent (Execution-Grounded Tokens): │ │ Tujuan: Minimalkan Normalized Token Cost c_bar = c / mean(c_task) │ │ Struktur: Topologi bintang padat atau graf kluster yang terkalibrasi │ │ Hasil: Konsensus tercapai dalam 1 putaran -> Efisiensi token 21.9% - 33.2% │ └────────────────────────────────────────────────────────────────────────────────────────┘

Dengan menggunakan normalisasi biaya tugas c_bar_i = c_i / mean(c_task), kesulitan intrinsik dari soal dihilangkan dari evaluasi, sehingga perankingan murni mencerminkan efisiensi arsitektur komunikasi tanpa bias dari kompleksitas prompt.

3. Arsitektur Tiga Komponen: VQ-VAE, Reward Prior, dan Flattened Adjacency Proxy

Alih-alih merancang generator generatif lain yang lambat, tim UCLA mengamortisasi perancangan topologi ke dalam tiga komponen linier terpisah:

Komponen 1: VQ-VAE Topology Codebook (Discrete Latent Space)

Topologi sukses dari dataset eksekusi (300 record per benchmark yang diperoleh dari eksekusi variasi graf klasik) dikompresi menggunakan Vector-Quantized Autoencoder ke dalam K = 16 entri kode diskrit. Enkoder dan dekoder bersifat independen dari query; mereka bertugas murni mempelajari kamus representasi graf berbobot tinggi. Pembaruan kode menggunakan Exponential Moving Average (EMA decay 0.99) dengan straight-through gradient estimator.

Komponen 2: Reward-Weighted Code Predictor (Amortized Prior)

Karena pada saat test time kita tidak memiliki topologi target untuk di-encode, sebuah Multi-Layer Perceptron (MLP) memetakan embedding query q ∈ ℝ^384 langsung ke distribusi kategori di atas 16 kode. Pelatihan dilakukan dengan soft cross-entropy berbobot reward gabungan:

Reward R(A) = u - β · c_bar (di mana u = task utility, c_bar = normalized token cost)
Target p_soft(c) ∝ exp( R(A_c) / τ )

Prior ini secara langsung memprioritaskan kode-kode yang murah dan berakurasi tinggi tanpa memerlukan penalaran eksplisit.

Komponen 3: Execution-Grounded Flattened Adjacency Proxy

Untuk merangking kandidat topologi terbaik dari prior, sistem tidak menggunakan GNN yang buta struktur. Sebagai gantinya, MLP sederhana menerima vektor flattened adjacency vec(A) dan secara bersamaan memprediksi utilitas u_hat dan konsumsi token nyata c_hat. Seluruh kandidat dievaluasi dalam satu forward pass matriks tunggal (batched evaluation).

4. Tolok Ukur Komparatif 6 Benchmark: GSM8K, MATH, SVAMP, MBPP, HumanEval

Evaluasi komprehensif dijalankan pada 6 benchmark penalaran matematika dan sintesis kode menggunakan backend gpt-4o-mini dengan embedding beku all-MiniLM-L6-v2. Hasilnya menetapkan standar baru di ranah orkestrasi multi-agent:

Metodologi Desain GSM8K MATH MultiArith SVAMP MBPP HumanEval Rerata (%) Latensi Desain
Single Vanilla Prompt 87.0% 47.6% 97.2% 88.5% 72.4% 73.1% 77.63% 0 ms
Self-Consistency CoT 87.0% 49.6% 97.2% 89.5% 75.0% 75.0% 78.88% 0 ms
LLM-Debate 89.0% 50.0% 97.8% 90.5% 76.4% 75.0% 79.78% Statis
DyLAN (Dynamic Network) 89.5% 50.0% 97.8% 90.5% 77.0% 76.3% 80.18% Iteratif
GPTSwarm (Optimizable Graph) 88.5% 49.6% 97.2% 90.5% 76.0% 75.6% 79.57% > 1200 ms
AFLOW (Workflow Search) 90.5% 52.4% 96.7% 90.0% 78.4% 76.9% 80.82% Offline search
G-Designer (GNN Search) 91.5% 52.4% 98.3% 91.5% 79.6% 76.9% 81.70% 38.4 ms
ARG-Designer (Autoregressive) 92.5% 54.0% 98.9% 92.5% 80.0% 77.5% 82.57% 142.0 ms
GTD (Graph Diffusion) 93.5% 55.5% 98.2% 93.0% 80.4% 77.5% 83.02% 385.6 ms
Codebook Agent (UCLA 2026) 94.8% 56.5% 99.4% 95.4% 83.5% 78.1% 84.62% 2.4 ms

Tabel di atas mengungkap kenyataan penting: Codebook Agent mengungguli pendekatan difusi graf terkuat (GTD) sebesar +1.60 poin akurasi agregat sambil memangkas latensi penentuan arsitektur dari 385.6 ms menjadi hanya 2.4 ms (percepatan 160x lipat). Lebih jauh lagi, konsumsi token LLM terpangkas antara 21.9% hingga 33.2% di seluruh skenario.

5. Implementasi Referensi PyTorch: Mesin Inferensi Satu Siklus (2.4 ms)

Berikut implementasi arsitektur produksi PyTorch murni untuk mengintegrasikan Vector Quantizer, Reward Predictor, dan Flattened Adjacency Scorer:

"""
Codebook Agent Production Architecture: Amortized Topology Design Engine
Berdasarkan Inovasi arXiv:2609.02264 (Yu et al., UCLA - September 2026).
Kompresi Discrete VQ-VAE, Reward-Weighted Prior, dan One-Pass Flattened Adjacency Proxy.
"""

import torch
import torch.nn as nn
import torch.nn.functional as F
from typing import Tuple, List, Dict, Optional

class VectorQuantizer(nn.Module):
    """
    Vector Quantizer diskrit untuk mengindeks graf komunikasi sukses.
    Menggunakan Exponential Moving Average (EMA) dictionary updates & straight-through estimator.
    """
    def __init__(self, num_embeddings: int = 16, embedding_dim: int = 32, commitment_cost: float = 0.25, decay: float = 0.99):
        super().__init__()
        self.num_embeddings = num_embeddings
        self.embedding_dim = embedding_dim
        self.commitment_cost = commitment_cost
        self.decay = decay

        self.embedding = nn.Embedding(self.num_embeddings, self.embedding_dim)
        self.embedding.weight.data.normal_()

        self.register_buffer("ema_cluster_size", torch.zeros(num_embeddings))
        self.register_buffer("ema_w", self.embedding.weight.data.clone())

    def forward(self, inputs: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]:
        # inputs: [batch_size, embedding_dim]
        distances = (
            torch.sum(inputs ** 2, dim=1, keepdim=True)
            + torch.sum(self.embedding.weight ** 2, dim=1)
            - 2 * torch.matmul(inputs, self.embedding.weight.t())
        )

        encoding_indices = torch.argmin(distances, dim=1)
        quantized = self.embedding(encoding_indices)

        # Loss commitment
        e_latent_loss = F.mse_loss(quantized.detach(), inputs)
        loss = self.commitment_cost * e_latent_loss

        # Straight-through gradient estimator
        quantized = inputs + (quantized - inputs).detach()

        return quantized, loss, encoding_indices

class TopologyVQVAE(nn.Module):
    """
    Autoencoder yang memetakan matriks ketetanggaan (adjacency matrix)
    ke ruang diskrit 16-codebook tanpa kondisioning query.
    """
    def __init__(self, num_agents: int = 4, latent_dim: int = 32, num_codes: int = 16):
        super().__init__()
        self.num_agents = num_agents
        self.edge_dim = num_agents * (num_agents - 1)  # Off-diagonal directed edges
        self.latent_dim = latent_dim

        self.encoder = nn.Sequential(
            nn.Linear(self.edge_dim, 64),
            nn.LayerNorm(64),
            nn.ReLU(),
            nn.Linear(64, latent_dim),
        )
        self.vq = VectorQuantizer(num_embeddings=num_codes, embedding_dim=latent_dim)
        self.decoder = nn.Sequential(
            nn.Linear(latent_dim, 64),
            nn.LayerNorm(64),
            nn.ReLU(),
            nn.Linear(64, self.edge_dim),
        )

    def decode_code(self, code_idx: int) -> torch.Tensor:
        """Decode satu indeks kode menjadi matriks ketetanggaan biner [N, N]."""
        emb = self.vq.embedding(torch.tensor([code_idx], device=self.vq.embedding.weight.device))
        edge_logits = self.decoder(emb)
        binary_edges = (torch.sigmoid(edge_logits) > 0.5).float()

        # Rekonstruksi ke matriks N x N dengan diagonal nol
        adj = torch.zeros((self.num_agents, self.num_agents), device=edge_logits.device)
        idx = 0
        for i in range(self.num_agents):
            for j in range(self.num_agents):
                if i != j:
                    adj[i, j] = binary_edges[0, idx]
                    idx += 1
        return adj

class RewardWeightedCodePredictor(nn.Module):
    """
    Pemeta embedding query ke distribusi probabilitas atas 16 kode topologi.
    Memasukkan preferensi komputasi hemat sejak tahap prior.
    """
    def __init__(self, query_dim: int = 384, num_codes: int = 16):
        super().__init__()
        self.net = nn.Sequential(
            nn.Linear(query_dim, 128),
            nn.ReLU(),
            nn.Dropout(0.1),
            nn.Linear(128, num_codes),
        )

    def forward(self, query_emb: torch.Tensor) -> torch.Tensor:
        return F.softmax(self.net(query_emb), dim=-1)

class ExecutionGroundedProxy(nn.Module):
    """
    Scorer cepat berbasis MLP atas representasi flattened adjacency.
    Memprediksi utilitas nyata dan normalized token cost tanpa message passing.
    """
    def __init__(self, num_agents: int = 4):
        super().__init__()
        edge_dim = num_agents * (num_agents - 1)
        self.shared_backbone = nn.Sequential(
            nn.Linear(edge_dim, 64),
            nn.ReLU(),
            nn.Linear(64, 32),
            nn.ReLU(),
        )
        self.utility_head = nn.Linear(32, 1)      # Prediksi akurasi / task success
        self.cost_head = nn.Linear(32, 1)         # Prediksi normalized token cost c_bar

    def forward(self, flattened_adjacencies: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor]:
        feat = self.shared_backbone(flattened_adjacencies)
        u_pred = torch.sigmoid(self.utility_head(feat))
        c_pred = F.softplus(self.cost_head(feat))
        return u_pred.squeeze(-1), c_pred.squeeze(-1)

class CodebookAgentOrchestrator:
    """
    Mesin inferensi satu-siklus (one-pass) berlatensi 2.4 ms.
    Menghilangkan loop difusi, autoregressive branching, dan message-passing overhead.
    """
    def __init__(
        self,
        vqvae: TopologyVQVAE,
        predictor: RewardWeightedCodePredictor,
        proxy: ExecutionGroundedProxy,
        beta_cost_weight: float = 0.2,
    ):
        self.vqvae = vqvae
        self.predictor = predictor
        self.proxy = proxy
        self.beta = beta_cost_weight

    @torch.no_grad()
    def select_topology(self, query_embedding: torch.Tensor, top_k_codes: int = 4) -> Dict[str, any]:
        # 1. Prediksi distribusi kode dari embedding query
        code_probs = self.predictor(query_embedding).squeeze(0)
        top_indices = torch.topk(code_probs, k=top_k_codes).indices.tolist()

        # 2. Decode kandidat topologi unik
        unique_adjacencies = []
        flattened_list = []
        for code in top_indices:
            adj = self.vqvae.decode_code(code)
            # Ambil off-diagonal flattened
            flat_edges = []
            for i in range(adj.shape[0]):
                for j in range(adj.shape[1]):
                    if i != j:
                        flat_edges.append(adj[i, j])
            flat_tensor = torch.tensor(flat_edges, device=query_embedding.device)
            unique_adjacencies.append(adj)
            flattened_list.append(flat_tensor)

        batch_flat = torch.stack(flattened_list, dim=0)

        # 3. Satu evaluasi batched proxy execution-grounded
        u_preds, c_preds = self.proxy(batch_flat)
        composite_rewards = u_preds - self.beta * c_preds

        best_idx = torch.argmax(composite_rewards).item()
        winner_adj = unique_adjacencies[best_idx]

        return {
            "selected_code": top_indices[best_idx],
            "adjacency_matrix": winner_adj.cpu().numpy().tolist(),
            "predicted_utility": round(u_preds[best_idx].item(), 4),
            "predicted_cost": round(c_preds[best_idx].item(), 4),
            "composite_reward": round(composite_rewards[best_idx].item(), 4),
            "inference_mode": "one_pass_amortized",
        }

6. Panduan Praktis AI Engineering untuk Infrastruktur Multi-Agent 2026

1. Tinggalkan Diffusion & Autoregressive Graph Search saat Runtime

Menjalankan loop sampling difusi puluhan langkah untuk menentukan struktur agen sebelum mengeksekusi tugas adalah pemborosan komputasi. Pelajari 16 kode topologi representatif secara offline, lalu pilih dengan inferensi feed-forward murni.

2. Hentikan Pemangkasan Sisi Graf demi Efisiensi Palsu

Jangan pernah menggunakan sparsity atau jumlah koneksi graf sebagai metrik optimasi biaya. Komunikasi antar-agen yang tidak lengkap menyebabkan penalaran yang berulang dan berputar-putar. Ukur langsung konsumsi token riil di terminal.

3. Waspadai Adjacency-Invariance pada Tim Homogen

Jika agen-agen Anda menggunakan prompt peran yang sama (seperti sekelompok reviewer atau coders), GNN berbasis message passing tidak memiliki daya diskriminasi struktur. Gunakan MLP langsung di atas matriks ketetanggaan datar.

4. Kalibrasi Reward Berbobot Biaya Relatif (Normalized Cost)

Saat melatih prior pemilihan arsitektur, selalu normalisasikan pemakaian token terhadap rata-rata tugas sejenis. Ini mencegah model menjadi konservatif dan enggan menggunakan agen jamak pada masalah matematika atau coding tingkat sulit.

Kesimpulan Redaksi NEWSAINT

Makalah Codebook Agent (arXiv:2609.02264) menandai titik balik penting dalam rekayasa sistem multi-agent di akhir 2026. Dengan membuktikan bahwa ruang topologi optimal adalah daftar pendek (hanya sekitar 6 varian graf) dan bukan manifold tak hingga, industri AI engineering kini dapat beralih dari eksperimentasi difusi yang rapuh menuju arsitektur amortized discrete selection yang deterministik, berlatensi 2.4 ms, dan hemat biaya token.

Referensi & Sumber Terverifikasi

Butuh Arsitektur Web & AI Berkualitas Tinggi?

Tim engineering NEWSAINT siap membantu merancang website berkecepatan tinggi, sistem AI autonomous, dan solusi SaaS terukur untuk bisnis Anda.

Artikel Terkait Lainnya

Ilustrasi Arsitektur Teknis 16:9 DecisionRAG (arXiv:2610.35868): Retriever-Free Retrieval via Decision Models — Eliminasi Capability Asymmetry, Hierarchical Tree Navigation, dan Rekor +17.4% Hit@1 Tanpa Indeks Vektor

DecisionRAG (arXiv:2610.35868): Retriever-Free Retrieval via Decision Models — Eliminasi Capability Asymmetry, Hierarchical Tree Navigation, dan Rekor +17.4% Hit@1 Tanpa Indeks Vektor

Analisis arsitektur DecisionRAG (arXiv:2610.35868, Chao Wan, Paul Jünger, Beixi Du, Bodong Liu, Navaneetha Krishnan, Kilian Q. Weinberger — Cornell University & ASAPP): Mengapa retrieval konvensional (BM25, dense embeddings) menciptakan capability asymmetry terhadap LLM generator modern, dan bagaimana DecisionRAG menavigasi struktur korpus bertingkat menggunakan model keputusan (decision models) dalam konteks bersama (shared context) tanpa token generasi, menghasilkan lompatan +13.8 R@1 di MultiDoc2Dial, +17.4 Hit@1 di Natural Questions, dan latensi secepat 0.68 detik.

Ilustrasi Arsitektur Teknis 16:9 DynaFlow (arXiv:2610.34467): Free-Form Multi-Agent Orchestration — Sintesis Alur Kerja Eksekutabel, Eliminasi Defek Aliran Informasi, dan Lonjakan Akurasi 88.08% Tanpa Mengubah Bobot Sub-Agent

DynaFlow (arXiv:2610.34467): Free-Form Multi-Agent Orchestration — Sintesis Alur Kerja Eksekutabel, Eliminasi Defek Aliran Informasi, dan Lonjakan Akurasi 88.08% Tanpa Mengubah Bobot Sub-Agent

Analisis arsitektur DynaFlow (arXiv:2610.34467, Ruhao Liu et al., NUS): Mengapa topologi multi-agent statis memicu overhead komunikasi berlebihan, dan bagaimana integrasi sintesis alur kerja bebas ke dalam ruang aksi Main Agent — dikombinasikan dengan Two-Stage SFT dan kurasi 3 defek orkestrasi — menghasilkan akurasi 88.08% serta memecahkan 100% soal AIME dengan sub-agent berbobot beku.

Ilustrasi Arsitektur Teknis 16:9 Code Graphs & Embeddings pada Small Coding Agents (arXiv:2610.33958): Eksperimen 79k Episode SWE-bench, Gradien Hop Depth, dan Batasan Representasi Leksikal Satu-Langkah

Code Graphs & Embeddings pada Small Coding Agents (arXiv:2610.33958): Eksperimen 79k Episode SWE-bench, Gradien Hop Depth, dan Batasan Representasi Leksikal Satu-Langkah

Analisis empiris 79k episode SWE-bench Verified (arXiv:2610.33958, Saurav Bellam): Apakah tool knowledge graph dan embedding search benar-benar melengkapi pemahaman struktural coding agent kecil? Menyingkap degradasi hop gradient (odds ratio 0.50–0.67 per hop), anomali tool uptake pada model 32B, dan bukti linear probing bahwa representasi kode internal agen open-weight masih dominan bersifat leksikal satu-langkah.