51 poin oleh GN⁺ 2025-11-07 | 2 komentar | Bagikan ke WhatsApp
  • Agen LLM adalah struktur teknologi yang lebih mudah dipahami cara kerjanya jika langsung diimplementasikan, bukan sekadar dipahami sebagai konsep
  • Hanya dengan beberapa puluh baris kode Python, Anda bisa membuat agen percakapan menggunakan OpenAI Responses API, dan dengan menambahkan fitur pemanggilan alat (tool call), agen dapat bertindak secara otonom
  • Inti dari agen adalah loop pemanggilan berulang ke LLM yang stateless, dan percakapan multi-putaran diwujudkan dengan mengelola konteks percakapan secara langsung
  • Context Engineering adalah persoalan nyata setingkat tugas pemrograman, yang membutuhkan perancangan untuk mengoptimalkan input, output, dan deskripsi alat dalam batas token
  • Saat ini, desain agen adalah ruang masalah rekayasa perangkat lunak yang terbuka, sehingga pengembang individu pun bisa mencoba pendekatan baru lewat eksperimen

Kesederhanaan dalam Menulis Agen

  • Agen LLM dapat diimplementasikan hanya dengan OpenAI Responses API tanpa konfigurasi yang rumit
    • Dalam kode contoh, daftar context digunakan untuk menyimpan percakapan antara pengguna dan model, lalu dipanggil berulang untuk menghasilkan respons percakapan seperti ChatGPT
  • Dengan membuat dua konteks yang memiliki “kepribadian baik” dan “kepribadian buruk”, Anda bisa mensimulasikan percakapan multi-kepribadian
    • LLM tidak memiliki state, dan kesinambungan percakapan dipertahankan melalui array string (context) yang dikelola pengguna
  • Bahkan dengan struktur sesederhana ini, percakapan multi-putaran tetap bisa diwujudkan, sambil memberi pengalaman langsung tentang cara kerja LLM

Integrasi Alat dan Operasi Otonom

  • Tambahkan fungsi ping sebagai alat pada agen untuk memeriksa status koneksi jaringan
    • OpenAI API meminta definisi alat dalam format JSON, dan ketika LLM meminta pemanggilan alat sesuai kebutuhan, kode Python akan menjalankannya lalu mengirimkan kembali hasilnya
    Iklan
  • Bahkan tanpa instruksi eksplisit, LLM secara otomatis melakukan ping ke beberapa host (google.com, www.google.com, 8.8.8.8)
    • Ini menunjukkan bahwa hanya dengan “izin menggunakan alat”, LLM sudah dapat melakukan penilaian otonom
  • Seluruh loop pada dasarnya hanyalah struktur “permintaan pemanggilan alat → eksekusi → pengembalian hasil”, sehingga operasi agen otonom dapat diwujudkan tanpa logika kontrol yang rumit

Aplikasi Nyata dan Kritik terhadap MCP

  • Meski kode contohnya sederhana, ia dapat diperluas secara praktis dengan menggabungkan alat tambahan (seperti traceroute) atau penyimpanan konteks berbasis SQLite
  • MCP (Multi-Context Protocol) hanyalah antarmuka plugin untuk Claude Code atau Cursor, bukan teknologi yang wajib
    • Jika langsung menangani API, fungsi yang sama dapat dibuat tanpa MCP
  • MCP hanya berguna di lingkungan yang tidak memberi kendali atas kode, dan bahkan bisa membatasi fleksibilitas arsitektur agen
  • Keamanan LLM memang kompleks, tetapi struktur yang aman tetap bisa dirancang lewat konteks yang dipisahkan dan pembatasan alat
Iklan

Pentingnya Context Engineering

  • “Prompt engineering” adalah konsep yang dibesar-besarkan, tetapi context engineering adalah masalah pemrograman yang nyata
    • Jumlah token dalam context window terbatas, dan input, output, serta deskripsi alat semuanya memakan ruang
    • Jika batas ini terlampaui, kualitas respons model menjadi tidak stabil
  • Sebagai solusi, Anda dapat membuat sub-agent dengan konteks dan alat yang berbeda-beda, lalu merancang agar mereka saling merangkum dan bertukar informasi
    • Struktur seperti ini bisa dikembangkan menjadi berbagai eksperimen seperti jaringan agen berbentuk pohon atau kompresi berbasis ringkasan real-time
  • Bahkan ide yang kompleks pun memiliki kesederhanaan yang memungkinkan implementasi dalam 30 menit

Masalah Rekayasa yang Terbuka dan Nilai Eksperimen

  • Saat ini banyak startup sedang mengembangkan agen untuk deteksi kerentanan, dan pengembang individu juga bisa melakukan eksperimen yang sama
  • Desain agen mencakup tugas rekayasa yang belum terselesaikan seperti berikut
    • Keseimbangan antara nondeterminisme dan pemrograman terstruktur
    • Verifikasi terhadap dunia nyata (ground truth) dan pencegahan penghentian loop terlalu dini
    • Format pertukaran data antar agen multi-tahap (JSON, SQL, Markdown, dan lain-lain)
    • Alokasi token dan pengendalian biaya
  • Masalah-masalah ini bukan hanya untuk riset berskala besar, melainkan bidang yang bisa dieksplorasi lewat eksperimen individu, dan setiap iterasi bisa dicoba dalam hitungan puluhan menit
  • Pada akhirnya, pengalaman membuat agen secara langsung adalah titik awal untuk memahami teknologi LLM

2 komentar

 
[Komentar ini disembunyikan.]
 
GN⁺ 2025-11-07
Komentar Hacker News
  • Banyak sekali hal yang ingin dikerjakan. Saya ingin membuat CPU sendiri dari gerbang NAND di breadboard, dan juga ingin membuat CDN dengan Rust, tapi waktunya tidak cukup
    Sebagai gantinya saya mencoba membuat LLM dengan mengikuti tutorial Karpathy, dan rasanya cukup bagus untuk melakukan eksperimen kecil seperti ini sedikit demi sedikit

    • Rasanya seperti kurva yang tidak ada ujungnya. Dulu saya pernah membuat komputer 8-bit di breadboard, lalu sekarang malah tenggelam dalam pelatihan terbang (PPL)
      Setiap kali merasa “sekarang sudah selesai”, rasanya garis finis makin menjauh. Pada akhirnya orang seperti kita mungkin memang tipe yang tidak pernah benar-benar puas
    • Di bagian awal TFA dijelaskan betapa mudahnya ini dilakukan. Itulah poin utama tulisannya
  • Contohnya memang memakai GPT-5, tetapi antarmuka query-nya sudah berada di level standar industri
    Misalnya kalau menghubungkan OpenRouter.ai, kita bisa dengan mudah mengganti model dan penyedia saat runtime
    Ada juga model gratis (misalnya DeepSeek), tetapi lambat dan terbatas. Meski begitu, tetap sangat bagus untuk eksperimen

  • Beberapa bulan lalu saya pernah membuat sendiri sebuah agen dengan Ruby. Sangat menyenangkan
    Logika intinya hanya empat baris, dan secara konsep sangat sederhana sampai mengejutkan

    until mission_accomplished? or given_up? or killed?
      determine_next_command_and_inputs
      run_next_command
    end
    
  • Dua tahun lalu saya membuat agen dalam 25 baris PHP, dan waktu itu bahkan belum ada tool calling, tetapi tetap bekerja cukup baik
    LLM terasa bagi saya seperti alat manipulasi teks UNIX seperti sed atau awk — strukturnya adalah diberi input dan perintah, lalu mengeluarkan output
    Jika panggilan LLM seperti ini digabungkan dan diberi loop atau percabangan, hasilnya bisa menjadi sistem yang cukup kuat
    Kode terkait: hubcap, llm

    • Saya sangat menyukai hubcap. Meski kodenya sedikit, hasilnya mengesankan
      Saya sangat terinspirasi setelah membaca tulisan Simon Willison
  • Bagian tentang membuat sendiri alternatif Claude Code terasa sangat relevan. Membuat agen coding yang bisa memperbaiki dirinya sendiri adalah pengalaman yang nyaris seperti sihir
    Modelnya bisa diganti dengan bebas, dan jika memakai model cepat seperti Cerebras, perbedaannya sangat terasa bahkan dalam tool calling interaktif
    Kalau ditambah memori, pengenalan suara, dan semacamnya, efisiensinya jadi jauh lebih tinggi. Ini bisa dibuat dalam hitungan menit dan benar-benar menyenangkan

    • Saya penasaran model pengenalan suara apa yang dipakai. Whisper terasa lambat dan kurang akurat, sedangkan model audio GPT terlalu sering memberi respons penolakan
      Model Google kualitasnya rendah, dan model Mistral memang cepat tetapi kadang malah merespons teks
      Akibatnya kadang yang tertulis bukan ucapan saya, melainkan arus kesadaran dari LLM itu sendiri
    • Saya sangat suka ungkapan “build your own lightsaber”
      Awalnya saya membuatnya untuk memahami struktur internalnya, tetapi ternyata lebih sederhana dari dugaan, jadi sekarang saya menambahkan sendiri fitur yang saya inginkan
      Fitur bisa ditambahkan lebih cepat daripada produk yang dibuat tim. Agen punya struktur yang sangat sederhana
    • Saya tidak tahu harus mulai dari mana untuk belajar. Ini juga pertama kalinya saya mendengar Cerebras. Saat ini saya hanya memakai Copilot di VS Code
      Saya penasaran apakah ini berbasis model lokal
    • Cerebras sekarang menyediakan glm 4.6. Masih sangat cepat, dan sekarang juga jauh lebih pintar
  • Tulisan ini membuat saya ingin membangun kembali filosofi Unix — alat yang melakukan satu hal dengan baik
    Ini bukan cuma membuat agen menjadi sederhana, tetapi juga meningkatkan keamanan

    • Pada 2021 saya pernah membuat agen untuk menguji koneksi jaringan, dan saat agen diberi alat dasar seperti ping, dig, traceroute, hasilnya cukup bagus
      Memang tidak sesempurna sistem telemetri buatan manusia, tetapi 90% tingkat kegunaan bisa dicapai jauh lebih mudah
    • Kita juga bisa membayangkan kumpulan alat dengan tujuan terbatas yang diekspos langsung ke manusia
    • Untuk melakukan satu hal dengan baik justru diperlukan lebih banyak alat, dan seiring itu kemampuan memahami konteks juga ikut membesar
      Ukuran ideal LLM tampaknya berada di titik tengah yang sedikit lebih besar daripada alat Unix tradisional
  • Saya jadi bertanya, “apakah memang harus membuat agen?”
    Dalam situasi semua penyedia AI sedang merugi, saya ragu apakah model pendapatan yang berkelanjutan benar-benar mungkin

    • Kalau membuatnya sendiri, kita bisa memahami secara intuitif cara kerja agen dan keterbatasannya. Itulah intinya
    • Ini cuma tulisan tentang bereksperimen dengan teknologi demi kesenangan. Tidak ada hubungannya dengan monetisasi
      Logikanya mirip seperti mengangkat kerugian Astral sebagai alasan untuk tidak memakai Python
    • Tidak semua perusahaan AI merugi.
      Mereka butuh dana karena biaya pelatihan model berikutnya besar, tetapi tahap inferensi itu menguntungkan
    • Kita juga bisa menjadi penyedia AI sendiri
    • Komentar ini terasa punya sedikit kelelahan emosional. Saya jadi penasaran apakah penulisnya developer yang sudah sangat senior
  • Bagian tentang context engineering sangat mengena bagi saya
    Saya sedang membuat asisten pribadi, dan dibanding agen umum, ia punya lebih banyak memori, pelacakan tugas, dan kemampuan pemecahan masalah
    Saya mendesain beberapa agen agar saling berbicara untuk menyelesaikan masalah, dan agen pertama berperan sebagai pengawas manajemen tugas
    Semakin dalam proses ini berjalan, semakin berubah menjadi masalah rekayasa
    Detailnya saya tulis di posting blog saya

    • Kedengarannya proyek yang sangat keren
  • Semua orang suka membuat agen, tetapi benci melakukan debugging
    Awalnya semuanya berjalan seperti sihir, lalu pelan-pelan kegagalan probabilistik menumpuk dan menjadi sulit direproduksi
    Setiap langkah butuh 0,5 detik, jadi untuk memeriksa di mana letaknya salah, kita harus menunggu 10–20 menit setiap kali

    • Karena itu saya membuat alat eksekusi paralel, untuk menjalankan kode yang sudah diperbaiki ratusan kali
      Saya juga memutar ulang skenario lama untuk memastikan tidak ada yang rusak
  • Saya membuat MCP berdasarkan kode yang disediakan: gurddy-mcp.fly.dev
    Kode sumbernya bisa dilihat di repositori GitHub