1 poin oleh GN⁺ 2 jam lalu | 1 komentar | Bagikan ke WhatsApp
  • HANDBOOK.md adalah benchmark 65 tugas yang mengukur apakah prosedur kerja sepanjang 20–124 halaman dapat membatasi perilaku agen bahkan dalam pekerjaan berdurasi panjang dan multi-alat
  • Di lingkungan keuangan, klaim medis, asuransi, logistik, dan SDM, pihak berwenang, ambang batas, dan prosedur diubah untuk setiap tugas sehingga agen harus membaca dokumen terkait secara langsung, bukan mendaur ulang aturan yang sudah familier
  • Hasil evaluasi terhadap 30 konfigurasi model dari 11 penyedia menunjukkan bahwa dalam penilaian ketat yang hanya lulus bila semua kriteria terpenuhi, konfigurasi terbaik pun hanya mencapai 36.2%, dan sebagian besar konfigurasi frontier berada di bawah 25%
  • Agen berulang kali menunjukkan pola memprioritaskan permintaan di dalam lingkungan dibanding kebijakan tingkat lebih tinggi, mengabaikan hasil pemeriksaan wajib, kehilangan aturan selama tugas panjang, atau melaporkan kepatuhan sebagai selesai padahal sebenarnya belum tercapai
  • Jika satu pelanggaran kriteria saja diizinkan, skor model terdepan hampir menjadi dua kali lipat, yang menunjukkan bahwa meski sebagian besar pekerjaan selesai, model tetap bisa melewatkan satu persyaratan penting yang krusial di lingkungan nyata

Benchmark yang mereplikasi pekerjaan perusahaan

  • HANDBOOK.md secara langsung mengevaluasi apakah dokumen kebijakan jangka panjang benar-benar mengendalikan tindakan lanjutan agen sampai akhir
    • Benchmark yang ada umumnya mengukur apakah tujuan tercapai, seperti menyelesaikan issue, menavigasi situs, atau menuntaskan alur kerja
    • Belum banyak evaluasi yang benar-benar mengukur apakah dokumen panjang yang mengikat tetap dapat membatasi tindakan saat bertentangan dengan permintaan langsung
    • Evaluasi kepatuhan kebijakan sebelumnya menggunakan kebijakan yang pendek dan berulang, sehingga model bisa saja mempelajari aturan dari paparan berulang tanpa membaca dokumen yang sedang diberikan
  • Ke-65 tugas mencakup 5 domain: keuangan, klaim medis, asuransi, logistik, dan SDM, serta 10 perusahaan virtual
    • Setiap lingkungan mencakup ruang kerja dengan spreadsheet, PDF, dan dokumen Office, serta layanan email tiruan, Slack, kalender, Jira, dan Shopify
    • Layanan eksternal disediakan sebagai alat Model Context Protocol(MCP)
    • Prompt bersifat sehari-hari, seperti “proses email yang belum dibaca hari ini sesuai SOP”, dan tingkat kesulitan muncul bukan dari permintaannya, melainkan dari dokumen yang mengaturnya
  • Prosedur operasi standar ditulis oleh pakar domain dengan panjang 20–124 halaman dan disediakan dalam format PDF, Word, dan HTML
    • Agen harus menemukan klausul yang berlaku dan mengingatnya sepanjang rata-rata sekitar 17 langkah penalaran dan 30 kali pemanggilan alat
    • Agen harus menerapkan secara tepat bukan hanya tindakan yang diwajibkan, tetapi juga kondisi ketika kebijakan mengharuskan penghentian
  • Dibuat total 10 handbook dasar, masing-masing 2 per domain, lalu nama pihak berwenang, ambang batas, dan rincian prosedur diubah di seluruh tugas
    • Karena kebijakan berbeda di setiap tugas, masalah ini tidak bisa diselesaikan hanya dengan pencocokan pola terhadap aturan yang sudah familier
  • Sebanyak 824 kriteria terprogram memeriksa keadaan akhir ruang kerja dan semua layanan eksternal
    • EXPECTED-OUTPUT memverifikasi apakah tindakan yang diwajibkan kebijakan benar-benar dilakukan
    • INCORRECT-BEHAVIOR memeriksa hingga kondisi jumlah yang tepat, apakah tidak ada tindakan terlarang maupun efek samping yang tidak diminta
    • Penilaian tidak menggunakan LLM judge
  • Tugas disediakan sebagai lingkungan terkontainerisasi berformat Harbor yang dapat diinisialisasi ulang, sehingga bisa digunakan bukan hanya untuk evaluasi tetapi juga sebagai lingkungan reinforcement learning

Hasil evaluasi dan kegagalan yang berulang

  • Dengan harness yang sama berbasis OpenHands, dievaluasi 30 konfigurasi model dari 11 penyedia
    • Dalam penilaian ketat yang hanya lulus bila semua kriteria terpenuhi, konfigurasi adaptive/max reasoning dari Claude Fable 5 mencatat hasil tertinggi, yaitu 36.2%
    • Sebagian besar konfigurasi model frontier tetap berada di bawah 25%
  • Jika kegagalan pada satu kriteria diizinkan, skor konfigurasi terdepan hampir menjadi dua kali lipat
    • Ini menunjukkan bahwa agen kerap menyelesaikan sebagian besar pekerjaan tetapi tetap melewatkan satu syarat wajib yang bisa sangat penting di lingkungan nyata
  • Selama proses kegagalan, pola yang mirip terus berulang terlepas dari domain, keluarga model, maupun pengaturan effort penalaran
    • Memprioritaskan permintaan yang tampak masuk akal di dalam lingkungan dibanding kebijakan
    • Setelah melakukan pemeriksaan wajib, tetap bertindak berlawanan dengan hasil pemeriksaan itu
    • Merusak atau kehilangan rincian aturan selama proses kerja yang panjang
    • Dalam laporan akhir, mengklaim telah mematuhi kebijakan yang sebenarnya tidak berhasil dipenuhi
  • Semua tugas, lingkungan, kriteria evaluasi, dan harness tersedia di repositori publik
    • Ini memungkinkan pengukuran atas asumsi di lingkungan deployment saat ini bahwa agen yang diberi kebijakan jangka panjang akan tetap mematuhinya sampai akhir

1 komentar

 
GN⁺ 2 jam lalu
Pendapat Hacker News
  • Meski diiklankan mendukung konteks 1 juta token, itu tidak berarti benar-benar disarankan untuk dipakai sebanyak itu atau akan berfungsi dengan baik
    Masalah ini kemungkinan akan terus berlanjut karena kuantisasi ekstrem pada model dan KV cache, sampler yang buruk, serta penghapusan opsi penyetelan. Menurut saya, dengan kendali langsung lewat inferensi lokal, sebagian besar cacat umum LLM bisa dihilangkan

    • LLM lokal yang bisa dijalankan di hardware konsumen juga punya cacat yang sama, dan mengutak-atik nilai konfigurasi tidak akan menyelesaikan semuanya
      Untuk meng-host sendiri Kimi K3, yang paling mendekati model garis depan, dibutuhkan anggaran mendekati harga satu rumah bagus di kota besar. Saya menyukai model lokal dan memakainya sampai kantor terasa panas oleh beban komputasi, tetapi anggapan bahwa LLM lokal menyelesaikan semua cacat umum hanyalah harapan kosong
      Justru model lokal maupun model besar yang tidak bisa dijalankan di rumah mengalami penurunan performa pada konteks panjang lebih parah daripada model garis depan, dan bahkan pada fp16/bf16 pun batas panjang konteks praktisnya lebih rendah
    • Saat mengembangkan agen AI di organisasi, kami hanya memakai maksimal 50% dari jendela konteks model, dan menyarankan agar model berkonteks besar tidak melewati 25%
      Jadi ketika melihat “jendela konteks 1 juta token”, saya menganggap rentang yang benar-benar bisa dipakai adalah 250 ribu token
    • Saya tidak paham mengapa masalahnya akan hilang hanya karena modelnya lokal. Ini bukan perbedaan antara cloud dan lokal, melainkan cacat semua LLM, dan model lokal yang diuji di sini juga gagal
    • Yang ditunjukkan benchmark needle-in-a-haystack hanyalah bahwa bagian tertentu dari konteks yang diperluas bisa “diakses atau dialamati”
      Namun saya tidak mengerti mengapa jumlah attention head tidak dibahas. Head itu terbatas, dan jumlah objek yang bisa difokuskan model secara bersamaan juga maksimal N, sehingga dukungan konteks panjang pasti punya batas atas. Semakin panjang konteksnya, semakin banyak hal yang berisiko kehilangan fokus dan semakin besar beban pengelolaan sumber daya head per token
    • Tahun lalu saya menguji model GPT-OSS 20B yang dikuantisasi 4-bit mxfp4; model itu mengklaim konteks 128k, tetapi performa recall mulai memburuk dari sekitar 32k karakter
      Saya menaruh hash sederhana sebelum teks pengisi dari file kamus dan meminta model di akhir prompt untuk hanya mengembalikan hash itu, tetapi setelah melewati 32k karakter ia menghasilkan karakter yang salah atau hash yang sepenuhnya berhalusinasi. Ukuran konteks besar saja tidak bisa dipakai untuk menilai kemampuan, kepatuhan terhadap prompt, atau kualitas lainnya
  • Model yang mendapat skor bagus di benchmark ini layak mengklaim kemampuan supermanusia. Sebab manusia pun sangat buruk ketika tiba-tiba menerima dokumen kebijakan panjang dan harus menerapkannya apa adanya
    Model memang tidak boleh terlalu diantropomorfiskan, tetapi penyebab kegagalannya bisa mirip dengan manusia. Working memory terbatas, jumlah hal yang bisa difokuskan sekaligus dan kedalaman penalaran juga ada batasnya, dan kebijakan di dunia nyata sering kali tidak ditulis untuk dieksekusi persis seperti dokumen atau tidak cukup menjelaskan kondisi pengecualian
    Pada manusia diterapkan proses yang setara dengan RLHF, berupa latihan kasus simulasi dan umpan balik praktik kerja. Kita tidak memberikan dokumen kebijakan 124 halaman kepada pegawai baru lalu berharap ia menerapkannya dengan tepat sejak tugas pertama atau mematuhinya secara stabil sepanjang bulan pertama

    • Bedanya, manusia belajar. Meski pegawai baru tidak bisa mengikuti kebijakan organisasi pada hari pertama, setelah 3 bulan atau 3 tahun hasilnya akan berbeda
      Sebaliknya, untuk LLM belum ada cara yang masuk akal untuk otomatis melakukan fine-tuning atau memperbaiki lingkungan eksekusinya agar lebih baik mencapai tujuan organisasi. Ia masih tetap dikuasai bobot umum dan kebijakan lingkungan eksekusi yang disetel untuk situasi rata-rata
    • Kebijakan perilaku seharusnya masuk ke bobot model, bukan ke konteks KV cache yang terus membesar
      Daripada menjejalkan dokumen kebijakan ke memori yang sempit, lebih tepat memasukkannya ke bobot yang sudah ada lewat online learning atau post-training. Saya penasaran apakah ada cara menghitung perubahan bobot dari konteks yang telah diproses lalu mengosongkan konteks, tanpa pada dasarnya terus melakukan pre-training di setiap giliran percakapan
    • Cara paling efektif bagi manusia bukan membawa seluruh dokumen deklaratif, melainkan merujuk bagian dokumen yang relevan dari skrip prosedur per tugas
      AI juga sepertinya akan bekerja jauh lebih baik jika penerapan teknologi agen pada pekerjaan seperti asuransi disusun dengan cara serupa
    • Mungkin penyebabnya adalah terlalu banyak kontradiksi dan ambiguitas dalam kebijakan. Manusia pun bisa berfungsi justru karena tidak menerapkan semua aturan sekaligus
    • Agar AI berkembang di tempat kerja, ia harus mengikuti prosedur secara harfiah, tetapi Claude Code sudah lupa instruksi “jangan commit” mulai giliran kedua
      Claude Code adalah lingkungan eksekusi umum yang buruk di atas model yang bagus, sehingga tidak cocok untuk prosedur birokratis, dan kemampuannya juga tampaknya terus memburuk sejak Opus 4.6 menjadi puncaknya
  • Claude mengikuti instruksi dengan sangat baik selama sekitar 10 menit, tetapi setelah itu tampaknya mengabaikan hal-hal yang sudah disampaikan sebelumnya
    Meski CLAUDE.md diberi instruksi yang jelas dan kuat seperti jangan menulis komentar raksasa dan manfaatkan fungsi yang sudah ada, dalam pekerjaan nyata ia melewatkannya dengan mengejutkan cepat. Sebaliknya, jika diingatkan lagi lewat prompt saat bekerja, hasilnya jauh lebih baik
    Kadang ia mengikuti dengan baik, kadang sepenuhnya mengabaikan dan merusak pekerjaan, jadi saya sedang menahan dorongan untuk terus menambahkan aturan ke CLAUDE.md

    • Yang dibahas tulisan ini bukan fenomena lupa prompt lima giliran sebelumnya, melainkan kepatuhan terhadap dokumen kebijakan. Justru tindakan terus menambahkan item ke CLAUDE.md lebih dekat dengan topik tulisan
    • Saya mendapat hasil bagus dengan hanya menaruh sedikit aturan global tingkat atas di Claude.md root, lalu menempatkan aturan spesifik di claude.md per modul pada subfolder
      Selain itu, saya memakai skill /code-review kustom berbasis aturan untuk memeriksa dan memaksa item yang terlewat saat implementasi
    • Instruksi statis menurut saya bukan dokumentasi penggunaan yang harus terus dirujuk, melainkan untuk menyetel model sebagai titik awal sesuai jenis proyek tersebut
      Peran untuk terus menyesuaikan diri dengan instruksi saat ini dipegang oleh lingkungan eksekusi coding, dan pada model lokal perbedaan ini terlihat sangat jelas
  • AI agen adalah kemampuan yang disuntikkan secara artifisial dengan melakukan reinforcement learning skala besar pada dataset agen khusus domain yang disintesis pada tahap pascapelatihan
    Jika tidak dipascapelatihan dengan panduan atau use case tertentu, ia tidak akan bekerja dengan benar. Alasan LLM sangat kuat untuk tugas agen coding juga karena pembuatnya memahami alur kerja itu secara mendalam dan dapat melatihnya dengan cukup
    Solusi sebenarnya mungkin adalah membuat fine-tuning yang mudah sesuai use case agen masing-masing, tetapi perusahaan besar harus membangun dataset raksasa tentang cara kerja internal mereka sendiri, dan sepertinya tidak ada yang ingin menjadi yang pertama
    Dalam konteks panjang, karena perluasan positional encoding RoPE, token awal sulit diambil kembali secara akurat; Kimi atau DeepSeek yang tidak menggunakannya pun mengompresi konteks awal secara kuat, sehingga informasi yang presisi hilang
    Pendekatan dasar seharusnya adalah menyusun tugas sekali jalan dengan system prompt besar yang dapat di-cache dan user prompt yang hanya berisi data dinamis, lalu memakai model termurah yang mampu mengerjakannya. Pertama buat graf prompt sekali jalan yang jelas dan bertahap, lalu gunakan agen jika itu tetap tidak menyelesaikan masalah; ini lebih akurat dan murah, tetapi lebih merepotkan dibanding menyerahkan semuanya ke AI

    • Saya penasaran apa sebenarnya yang dimaksud dengan graf prompt sekali jalan
    • Seperti lirik Kenny Rogers, “rahasia untuk bertahan adalah tahu apa yang harus dibuang dan apa yang harus disimpan,” manusia juga punya konteks terbatas seperti AI
      Bedanya, manusia setidaknya kadang bisa menilai informasi mana yang lebih penting dan memprioritaskannya agar tetap berada dalam konteks
    • Saya kira sudah banyak diketahui bahwa alasan Claude Code menjadi bagus dalam coding adalah karena Anthropic membeli data coding dalam jumlah besar dari perusahaan seperti Mercor
  • Kesimpulan dari “Lost in the Middle: How Language Models Use Long Contexts” https://arxiv.org/abs/2307.03172 yang terbit beberapa tahun lalu tampaknya masih berlaku hingga sekarang
    Ini adalah salah satu pengamatan inti bahwa hal tersebut mirip dengan batasan working memory manusia yang dibahas dalam “Engineering for Bounded Cognition”

  • Dokumen kebijakan yang panjang juga sulit bagi manusia. Tanpa pelatihan terpisah, kita tidak bisa mengingat semua panduan HR setebal 180 halaman, aturan pemadam kebakaran, aturan keselamatan OSHA, regulasi FCC, dan U.S. Code
    Jika risikonya besar sampai bisa masuk penjara bila bertindak keliru, kita akan memilih tidak bertindak, meski kebijakan mengizinkan pengecualian. Jika risikonya kecil, kita akan mengabaikan kebijakan sepenuhnya demi jalur termudah

    • Kalau begitu saya penasaran apa solusinya. Sepertinya di sini unsur diskresi hilang, dan mungkin diperlukan model terpisah untuk penilaian diskresioner
  • Karena AI terus melanggar aturan yang saya tulis dan membuat saya kesal, saya menyuruh Claude menelusuri catatannya sendiri, dan ternyata setelah sekali melanggar aturan, probabilitas pelanggaran tambahan meningkat
    Kebalikan dari few-shot learning yang membuatnya meniru contoh baik; semakin banyak pelanggaran aturan dan koreksi menumpuk dalam konteks, tampaknya justru makin besar kemungkinan ia melanggar
    Saya mencoba singkat dengan membuka sesi baru, dengan aturan dimasukkan ke prompt atau CLAUDE.md, atau tidak dimasukkan sama sekali; di sesi baru, Opus 4.8, 5, dan Fable semuanya mengikutinya dengan baik tanpa bergantung pada posisinya. Opus 4.8 yang dalam percakapan biasa selalu melanggar aturan pun sama
    Saya curiga konteks panjang merusak kepatuhan aturan, tetapi sulit mereproduksi percakapan panjang sehingga tidak bisa memverifikasinya; makalah ini menjawab pertanyaan itu. Bahkan ketika model menjalankan pemeriksaan aturan dan menemukan pelanggaran secara akurat, bagian narasinya kadang tetap bersikeras pada output salah sebelumnya
    Saat ini saya memperbaikinya dengan hook terpisah atau pemeriksaan pascaproses. Sebab jika menyerahkan koreksi kepada model itu sendiri saat generasi berlangsung, bagian narasi atau bagian generasi utama kadang menolak kesalahan aturan yang sudah ditemukannya sendiri

    • Sebelum LLM pun sudah ada masalah area terdekat yang belum diblokir, yaitu ketika kita memblokir satu masalah, segera muncul masalah lain yang berdekatan atau jalur lain yang kembali ke masalah yang sama
      Karena model bisa mempelajari perilaku jangka panjang baru, sulit mengubah hanya perilakunya tanpa mengubah konteks secara besar
  • Di Claude, saya memakai inject_rules.py sebagai hook UserPromptSubmit yang membaca RULES.md dan menempelkannya di depan setiap prompt, dan gejala aturan memudar saat konteks terisi berkurang
    Token prompt memang habis sedikit lebih cepat, tetapi total penggunaan token justru turun, dan ini juga bisa dipakai di Pro. Tidak sempurna, tetapi lebih baik; mengosongkan memori juga membantu agar Claude tidak mengarang hal-hal yang mengganggu perilaku yang diinginkan
    RULES_PATH menunjuk ke RULES.md, dan dibaca dengan encoding='utf-8-sig' untuk menghapus BOM. Setelah itu, JSON yang berisi hookSpecificOutput.hookEventName = "UserPromptSubmit" dan seluruh aturan di additionalContext dikirim ke stdout
    Di bagian pembuka tertulis bahwa aturan tetap berlaku pada giliran ini, dan sebelum mengangkat hal yang tidak diminta, jalankan lima pemeriksaan pada aturan 33. Jika terjadi OSError, ia diam-diam mengembalikan 0 sehingga giliran tersebut tetap berjalan meski tanpa file aturan

    • Saya penasaran apa kelebihannya dibanding pendekatan yang memeriksa output dengan hook respons lalu hanya menyuntikkan aturan ketika keluar jalur, alih-alih menyuntikkan semua aturan setiap kali
  • Tulisan ini juga menunjukkan adanya potensi masalah pada pengembangan berbasis spesifikasi berskala besar. Masalah yang belakangan belum bisa saya definisikan dengan jelas adalah implementasi agen yang perlahan menyimpang dari spesifikasi

    • Saya mengalami fenomena yang sama dan mulai menyebutnya vision drift
      Issue tracker buatan saya sendiri mendukung time travel pada board, sehingga cocok untuk masalah ini. Dengan perintah seperti :replay 4h, kita bisa melihat sekilas bagaimana alur kerja berubah selama beberapa jam terakhir dan checkout ke state sebelumnya yang diinginkan
      Detailnya saya rangkum di https://dev.to/ljtn/vision-drift-addressing-the-next-problem...
    • Drift antara spesifikasi besar dan implementasi agen sangat besar. Saya sudah banyak mencobanya, tetapi terlepas dari jenis modelnya, Fable maupun Sol melewatkan banyak detail dan menyimpang
      Saya sedang mengembangkan http://engine.build untuk menutup kesenjangan antara spesifikasi dan implementasi serta membuat implementasi sesuai dengan spesifikasi. Memang tidak memberi kepuasan yang sama seperti menyelesaikan masalah kompleks langsung dengan kode, tetapi menulis spesifikasi yang jelas dan memikirkan masalah secara mendalam juga cukup memuaskan
  • Saya menemukan perilaku ini beberapa bulan lalu saat memakai Sonnet 4.6. Di proyek pribadi, saya menerapkan aturan ketat pada komentar kode untuk mengurangi jumlah token
    Mulai dari versi tertentu, Claude mulai mengabaikan instruksi eksplisit di CLAUDE.md dan menyisipkan komentar raksasa yang merujuk ke tiket dan pekerjaan lain
    Setelah itu, saya mengembangkan seperti manajer lapangan di lini perakitan mobil. Sesi utama mengimplementasikan dengan pengetahuan seperti CLAUDE.md, sementara beberapa sub-agen yang sangat terspesialisasi hanya menangani satu aspek, misalnya menegakkan aturan seperti larangan/minimalisasi komentar atau mencerminkannya pada hasil akhir