Speculative Uncertainty (SU) 2026: Arsitektur Draft-Model Cross-Likelihood Scoring, Phase-Aware Span Disentanglement, dan Pre-Execution Veto Gate pada Autonomous Coding Agents
Analisis arsitektur sistemik riset frontier frontier AI (arXiv:2609.05274, September 2026): Mengapa coding agents komersial black-box kerap mengalami kegagalan berbiaya tinggi akibat fenomena confidently wrong? Speculative Uncertainty (SU) membalik paradigma speculative decoding dengan memanfaatkan open-weight draft model kecil untuk mengevaluasi lintasan token agen utama dalam satu kali forward pass tanpa logit atau aktivasi internal. Melalui pemisahan fase token penalaran dan eksekusi (Phase-Aware Disentanglement) serta pre-execution veto gate, SU memangkas tingkat error eksekusi sebesar 6–8% dan menghemat biaya token deployment 14–19% pada SWE-bench Verified dan DA-Code.

Dalam lanskap autonomous software engineering modern tahun 2026, autonomous coding agents (seperti Devin, SWE-agent, OpenHands, hingga Claude Code) telah berevolusi dari sekadar generator snippet menjadi orkestrator yang mampu mengeksekusi bash command, memodifikasi file AST, hingga menjalankan test suites secara mandiri. Namun, di balik benchmark kelulusan yang impresif, tim engineering di seluruh dunia berhadapan dengan satu pola kegagalan paling mahal: fenomena Confidently Wrong. Agen black-box menghasilkan rencana atau perintah destruktif dengan tingkat kepercayaan diri semu yang tinggi, memicu siklus execute-fail-retry berkepanjangan yang membakar token dan mengotori git history.
Executive Architectural Summary
Riset frontier dari Konstantin Grotov & Valentin Malykh (arXiv:2609.05274, September 2026) memperkenalkan Speculative Uncertainty (SU): paradigma kuantifikasi ketidakpastian non-invasif yang membalik prinsip speculative decoding. Tanpa memerlukan akses logit internal, bobot model, atau sampling berulang yang membebani latensi, SU memanfaatkan open-weight draft model kompak (seperti Qwen3-4B) untuk mengevaluasi token yang telah di-generate oleh agen primer (seperti Claude 3.5 Sonnet atau Qwen3-Coder-480B) dalam satu kali forward pass deterministik. Melalui pemisahan fase reasoning vs action (Phase-Aware Disentanglement) dan penerapan Pre-Execution Veto Gate, SU memotong tingkat kegagalan eksekusi sebesar 6–8 persentase poin dan memangkas konsumsi token produksi hingga 14–19% di SWE-bench Verified dan DA-Code.
1. Dilema Kuantifikasi Ketidakpastian pada Black-Box Coding Agents
Mengapa mengukur ketidakpastian (uncertainty quantification) pada coding agent berskala produksi begitu sulit? Kendala utamanya berakar pada dua batasan fundamental arsitektur software engineering modern:
Model frontier komersial paling andal dioperasikan di balik closed API tanpa eksposur logit, gradien, atau aktivasi internal. Metode white-box probing konvensional mustahil diterapkan di lingkungan ini.
Teknik self-consistency atau Monte Carlo rollouts menuntut sampling $N$ lintasan per langkah interaksi. Pada horizon agentic 20–50 langkah, biaya API dan latensi membengkak secara eksponensial.
Aksi keliru yang dieksekusi ke runtime (misalnya syntax error pada regex sed atau file overwrite salah) mengotori context window dan memicu retry loop berulang yang menguras budget konteks.
Pendekatan konvensional seperti Verbalized Confidence (meminta LLM menuliskan tingkat keyakinannya 0–100%) terbukti sangat buruk di ranah coding, mencatat metrik discriminative AUROC hanya berkisar 0.57 – 0.61 (hampir mendekati lemparan koin acak). Agen cenderung mengalami overkonfidensi sistemik ketika menghasilkan syntax command shell yang cacat.
2. Paradigma Inverted Speculative Decoding: Mengevaluasi Tanpa Logit Primer
Terobosan inti dari riset Grotov & Malykh (2026) adalah membalik arsitektur Speculative Decoding. Jika dalam speculative decoding konvensional model kecil bertindak sebagai generator draf dan model besar bertindak sebagai verifikator logit, maka dalam Speculative Uncertainty (SU) alur kerjanya dibalik:
Biarkan agen primer $p$ (misalnya Claude 3.5 Sonnet) menghasilkan output token alur penalaran dan aksi secara normal. Kemudian, sebuah small open-weight draft model $q$ (seperti Qwen3-4B) dijalankan dalam mode Teacher-Forcing terhadap token $y_t$ yang telah diproduksi tersebut.
3. Phase-Aware Span Disentanglement: Memisahkan Noise Penalaran dari Eksekusi Aksi
Kelemahan fatal metode kalibrasi umum adalah memperlakukan seluruh token dalam trajektori secara seragam. Dalam agentic coding, lintasan interaksi terbagi tajam ke dalam dua fase ortogonal:
-
Reasoning Span ($r_i$): Teks bebas refleksi atau pemikiran internal (misalnya tag
<thought>). Fase ini secara alami memiliki entropi tinggi dan diversitas gaya bahasa yang luas. Divergensi logit di sini wajar terjadi dan mencerminkan eksplorasi ide. -
Action Span ($a_i$): Perintah terstruktur yang dikirim ke runtime (misalnya JSON tool-call
execute_bash({"command": "git checkout -b fix"})). Fase ini memiliki entropi deterministik yang rendah. Ketidaksepakatan kecil antara agen dan draft model pada fase ini merupakan indikator kuat adanya kesalahan sintaksis, nama file halusinasi, atau argumen invalid.
Jika kedua fase dicampur aduk (SU-Uniform), fluktuasi entropi pada fase reasoning akan menutupi (masking) sinyal deviasi kritis pada fase aksi, menurunkan kemampuan prediksi kegagalan hingga -6 AUROC. SU mengekstraksi 8 statistik per sinyal ($s, g, H$) untuk masing-masing fase secara independen sepanjang jendela lookback $k=3$ langkah, menghasilkan vektor fitur 50-dimensi $\phi(\mathcal{W}_i) \in \mathbb{R}^{50}$.
// Speculative Uncertainty (SU) & Draft-Model Veto Gate Kernel
// Berdasarkan Prinsip Arsitektur Riset arXiv:2609.05274 (September 2026)
// Inverted Speculative Decoding untuk Black-Box Agent Uncertainty Quantification
export type TokenPhase = 'reason' | 'action';
export interface TrajectoryToken {
token: string;
tokenId: number;
phase: TokenPhase;
draftLogProb: number; // log q(y_t | x, y_ {
if (values.length === 0) return;
const n = values.length;
let sum = 0;
let min = Infinity;
let max = -Infinity;
for (let i = 0; i < n; i++) {
const v = values[i];
sum += v;
if (v < min) min = v;
if (v > max) max = v;
}
const mean = sum / n;
let varSum = 0;
let skewSum = 0;
for (let i = 0; i < n; i++) {
const diff = values[i] - mean;
varSum += diff * diff;
skewSum += diff * diff * diff;
}
const variance = varSum / Math.max(1, n - 1);
const std = Math.sqrt(variance);
const skewness = std > 0 ? (skewSum / n) / Math.pow(std, 3) : 0;
// Trend: regresi linear kemiringan (slope) sederhana
let trend = 0;
if (n > 1) {
let num = 0, den = 0;
const xMean = (n - 1) / 2;
for (let i = 0; i < n; i++) {
num += (i - xMean) * (values[i] - mean);
den += (i - xMean) * (i - xMean);
}
trend = den !== 0 ? num / den : 0;
}
const p10Count = Math.max(1, Math.floor(n * 0.1));
const first10Mean = values.slice(0, p10Count).reduce((a, b) => a + b, 0) / p10Count;
const last10Mean = values.slice(Math.max(0, n - p10Count)).reduce((a, b) => a + b, 0) / p10Count;
features[baseIdx + 0] = mean;
features[baseIdx + 1] = variance;
features[baseIdx + 2] = max;
features[baseIdx + 3] = min;
features[baseIdx + 4] = skewness;
features[baseIdx + 5] = trend;
features[baseIdx + 6] = first10Mean;
features[baseIdx + 7] = last10Mean;
};
// Reasoning Phase (0 - 23)
summarizeSignal(reasonTokens.map(t => -t.draftLogProb), 0); // s_reason
summarizeSignal(reasonTokens.map(t => t.draftTop1LogProb - t.draftLogProb), 8); // g_reason
summarizeSignal(reasonTokens.map(t => t.draftEntropy), 16); // H_reason
// Action Phase (24 - 47)
summarizeSignal(actionTokens.map(t => -t.draftLogProb), 24); // s_action
summarizeSignal(actionTokens.map(t => t.draftTop1LogProb - t.draftLogProb), 32); // g_action
summarizeSignal(actionTokens.map(t => t.draftEntropy), 40); // H_action
// Length Spans (48 - 49)
features[48] = reasonTokens.length;
features[49] = actionTokens.length;
return features;
}
/**
* Inferensi Pre-Execution Veto Gate
* Menghitung probabilitas kegagalan eksekusi sebelum command dieksekusi di OS sandbox
*/
public evaluateStepVeto(stepIndex: number, windowSteps: StepWindow[]): VetoGateDecision {
const phi = this.extractPhaseAwareFeatures(windowSteps);
let logit = this.bias;
for (let i = 0; i < 50; i++) {
logit += this.weights[i] * phi[i];
}
const failureLikelihood = 1 / (1 + Math.exp(-logit));
const isVetoed = failureLikelihood >= this.vetoThreshold;
// Evaluasi dominasi fase untuk panduan replan
const actionRiskContribution = this.weights[26] * phi[26] + this.weights[34] * phi[34];
const reasonRiskContribution = this.weights[2] * phi[2] + this.weights[10] * phi[10];
let dominantFailurePhase: 'reason' | 'action' | 'neutral' = 'neutral';
if (actionRiskContribution > reasonRiskContribution * 1.5) {
dominantFailurePhase = 'action';
} else if (reasonRiskContribution > actionRiskContribution * 1.5) {
dominantFailurePhase = 'reason';
}
return {
stepIndex,
failureLikelihood: Number(failureLikelihood.toFixed(4)),
isVetoed,
threshold: this.vetoThreshold,
dominantFailurePhase,
recommendation: isVetoed
? (failureLikelihood > 0.88 ? 'ESCALATE_TO_ORACLE' : 'HALT_AND_REPLAN')
: 'EXECUTE',
};
}
}
4. Analisis Komparasi Benchmark: SWE-bench Verified & DA-Code
Riset ini menguji performa model open-weight Qwen3-Coder-480B dan closed-source commercial frontier Claude 3.5 Sonnet yang dijalankan di bawah scaffold OpenHands. Evaluasi dilakukan pada benchmark industri terstandar: SWE-rebench, SWE-bench Verified, dan DA-Code:
| Arsitektur Kuantifikasi Uncertainty | Tipe Model | AUROC (SWE-Bench) | P@R80 | Execution Error Drop | Token Cost Saving |
|---|---|---|---|---|---|
| Verbalized Confidence (Self-Prompt) | Black-Box | 0.57 | 0.24 | 0.0% (Baseline) | 0.0% |
| Agent Log-Prob Baseline (Last-TP / Global-TP) | White-Box Only | 0.69 – 0.72 | 0.36 | -2.4% | -4.1% |
| SU-Uniform (Tanpa Pemisahan Fase) | Black-Box Proxy | 0.71 | 0.42 | -4.1% | -8.7% |
| SU + Phase-Aware Disentanglement (Draft: Qwen3-4B) | Black-Box Proxy | 0.77 | 0.51 | -6.0% s/d -8.0% | -14.0% s/d -19.0% |
| HTC (Holistic Trajectory Calibration — Theoretical Ceiling) | White-Box Ceiling | 0.82 | 0.58 | -7.2% | -16.5% |
5. Pre-Execution Veto Gate: Menghentikan Kerusakan Sebelum Eksekusi Runtime
Kekuatan praktis terbesar dari sinyal Speculative Uncertainty bukanlah sekadar angka metrik di atas kertas, melainkan kemampuannya dikonsumsi langsung oleh kebijakan downstream runtime. Riset ini mengimplementasikan kebijakan Pre-Execution Veto Gate:
-
Pencegahan Siklus Execute-Fail-Retry: Saat model mengusulkan action $a_i$ dengan $P(\text{failure}) ge \tau_{\text{veto}}$, gate membatalkan panggilan tool sebelum sistem operasi mengeksekusinya. Agen langsung menerima umpan balik sintaksis untuk melakukan replanning lokal tanpa merusak state git atau membuang token eksekusi.
-
Generalisasi Cross-Agent Zero-Shot: Draft model Qwen3-4B yang dilatih pada trajektori Qwen3-Coder-480B dapat langsung ditransfer untuk mengawasi agen tertutup Claude 3.5 Sonnet tanpa perlu retraining, mempertahankan nilai AUROC impresif sebesar 0.69 (jauh melampaui baseline tanpa supervisi sebesar 0.60).
-
Overhead Latensi Minimal: Karena draft model berukuran kecil (4B parameter) dan dievaluasi dalam mode batch single-forward pass terhadap sequence token yang sudah ada, penambahan latensi per turn hanya berada pada kisaran <45 ms, jauh lebih cepat daripada memanggil API verifikator kedua.
6. Panduan Arsitektur & Rekomendasi Deployment untuk Software Engineering Teams
Bagi arsitek sistem dan tim AI engineering yang ingin mengintegrasikan Speculative Uncertainty ke dalam infrastruktur agentic coding mereka (baik berbasis Claude Code, OpenCode, maupun platform internal):
1. Pasang Draft Model Ringan di Sisi Gateway / Edge
Tempatkan draft model 3B–7B parameter (seperti Qwen2.5-Coder-7B atau Llama-3.2-3B) pada instance GPU edge yang sama dengan gateway agent. Lakukan scoring token stream secara asinkron saat respon dari provider LLM komersial selesai diterima.
2. Bedakan Bobot Veto Berdasarkan Risiko Tindakan
Terapkan ambang batas $\tau_{\text{veto}}$ yang dinamis: gunakan ambang rendah ($\tau = 0.50$) untuk tindakan berisiko tinggi seperti perintah rm, git reset --hard, atau penulisan migrasi database, dan ambang lebih toleran ($\tau = 0.75$) untuk operasi baca (read-only grep/cat).
3. Kembalikan Uncertainty Attribution ke Prompt Replan
Ketika veto diaktifkan, sertakan diagnosis spesifik pada prompt perbaikan, misalnya: "Aksi tool command Anda dibatalkan oleh safety gate karena terdeteksi divergensi sintaksis parameter yang tinggi pada argumen path." Hal ini memandu agen melakukan koreksi terarah tanpa kehilangan progres sebelumnya.
Referensi & Sumber Terverifikasi
- [1]How to Speculate about Uncertainty in Agentic Coding? A Draft-Model Gate Method(arXiv:2609.05274 [cs.LG, cs.SE, cs.AI] — Konstantin Grotov, Valentin Malykh)
- [2]OpenHands: An Open Platform for AI Software Developers as Generalist Agents(arXiv:2407.16741 / OpenHands Team & All-Hands AI)
- [3]SWE-bench: Can Language Models Resolve Real-World GitHub Issues?(International Conference on Learning Representations (ICLR 2024) — Carlos E. Jimenez et al. (Princeton University))
- [4]Holistic Trajectory Calibration for LLM Agent Decision Uncertainty (HTC)(arXiv:2601.14502 / Microsoft Research & Tsinghua University)
- [5]Qwen2.5-Coder & Qwen3 Technical Report: Frontier Code Intelligence and Agentic Foundations(Qwen Team, Alibaba Group)
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

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.

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.

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.