00:00:00[MUSIK BERMAIN]
00:00:02Halo, nama saya Mario.
00:00:04Saya berasal dari tanah kelahiran Arnold Schwarzenegger,
00:00:06yang mungkin belum Anda sadari
00:00:09berdasarkan kemampuan bahasa Inggris saya yang sangat baik.
00:00:12Saya ingin mengawali ini dengan mengatakan bahwa kami
00:00:13telah berlarian bersama anak kami yang berusia empat tahun sepanjang hari
00:00:16di seluruh London.
00:00:17Jadi kami melihat dinosaurus, mumi, ke Nandos, tentu saja,
00:00:24dan hal-hal lain yang sudah saya lupakan.
00:00:26Saya sangat, sangat lelah.
00:00:28Dan jika Anda tidak mengerti apa pun yang saya katakan,
00:00:31angkat saja tangan Anda dan katakan, kakek, bangunlah.
00:00:36Alasan saya di sini sebenarnya adalah karena orang lain,
00:00:39yang juga ada di Cockneyville hari ini.
00:00:40Mari kita panggil dia Shteter Pineburger.
00:00:44Kembali ke tahun 2025, saya rasa sekitar bulan April,
00:00:53dia memberi tahu saya dan Armin Ronecha, yang mungkin juga Anda kenal
00:00:58lewat ketenaran Flask dan Sentry, bung, agen pengkodean itu,
00:01:02mereka benar-benar berfungsi sekarang.
00:01:04Dan saya seperti, oh, diamlah.
00:01:06Maaf, saya juga menggunakan kata-kata umpatan.
00:01:09Sama sekali tidak.
00:01:10Dan sebulan kemudian, kami bekerja sama di apartemen ini selama 24 jam
00:01:13semalaman dan membiarkan diri kami tenggelam oleh para clanker,
00:01:19oleh kode vibe, dan oleh vibe slop.
00:01:21Dan sejak saat itu, tidak ada satu pun dari kami yang benar-benar--
00:01:23kami tidak tidur lagi, pada dasarnya.
00:01:27Jadi kami membangun banyak hal, sangat banyak,
00:01:32yang sebagian besar sebenarnya tidak pernah kami gunakan, karena itulah hal baru di tahun 2025,
00:01:362026.
00:01:37Kami membangun banyak hal, tetapi kami tidak membangun banyak hal
00:01:39yang sebenarnya kami gunakan.
00:01:40Kami menulis banyak hal.
00:01:42Dan akhirnya, itu berpuncak pada pemikiran saya,
00:01:46hei, saya benci semua agen pengkodean atau harness yang ada.
00:01:50Seberapa sulitkah untuk menulisnya sendiri?
00:01:53Dan Peter seperti, oh, saya hanya ingin melakukan sesuatu.
00:01:56Mungkin tidak akan ada orang yang mendengarnya.
00:01:58Dan itu akan menjadi asisten pribadi,
00:02:01karena itulah yang selalu ingin saya miliki.
00:02:03Kebanyakan dari Anda mungkin tahu bagaimana ceritanya berlanjut.
00:02:05Jadi hari ini, saya akan menceritakan kisah saya yang jauh kurang mengesankan.
00:02:08Tapi saya harap saya bisa menyampaikan beberapa pembelajaran,
00:02:11seperti yang kita lihat di industri, yang berhasil saya kumpulkan
00:02:16dalam beberapa bulan terakhir.
00:02:17Jadi Pi.
00:02:19Pada awalnya, ada Cloud Code.
00:02:21Sebenarnya, ada aktivitas salin dan tempel dari JetGPT.
00:02:25Kita semua melakukannya di awal, tahun 2023.
00:02:27Lalu ada-- siapa yang ingat GitHub copilot yang asli?
00:02:32Ya, sebenarnya, berapa banyak dari Anda yang merupakan insinyur?
00:02:35Berapa banyak dari Anda yang menggunakan agen pengkodean,
00:02:37seperti Cursor, Cloud Code?
00:02:39Oke.
00:02:40Kontes popularitas, Cloud Code?
00:02:43Codex CLI?
00:02:45Cursor?
00:02:48Open--
00:02:48[TIDAK TERDENGAR]
00:02:49Ya.
00:02:50Open code?
00:02:50Anti-gravitasi.
00:02:51Oh, itu tidak banyak.
00:02:52Ada yang menggunakan ini?
00:02:55Saya suka Anda.
00:02:56Kita akan minum bir nanti.
00:02:58Bagaimanapun, jadi inilah yang sebenarnya terjadi pada tahun 2025
00:03:03dan sebelumnya.
00:03:04Dimulai dengan salin dan tempel dari JetGPT.
00:03:06Semuanya sebagian besar rusak.
00:03:07Kebanyakan hanya fungsi tunggal, hal-hal yang tidak ingin Anda tulis.
00:03:10Lalu Anda mendapatkan GitHub copilot di dalam Visual Studio
00:03:13Code Anda, di mana Anda tinggal klik, klik, klik menuju kebahagiaan,
00:03:15yang terkadang berhasil, namun sering kali tidak.
00:03:17Terkadang ia juga hanya akan [TIDAK TERDENGAR] membacakan kode GPL,
00:03:22seperti akar kuadrat terbalik John Carmack
00:03:25dan hal-hal seperti itu, yang sangat menyenangkan.
00:03:29Lalu ada Adir.
00:03:30Ada yang ingat Adir?
00:03:31Ya.
00:03:32Orang-orang tua.
00:03:33Halo.
00:03:33Ya.
00:03:37Rambut Anda beruban.
00:03:37Anda jelas tahu Adir.
00:03:41Ada juga AutoGPT.
00:03:43Mungkin tidak banyak.
00:03:44Ya, oke.
00:03:45Dia tahu segalanya.
00:03:48Dan akhirnya ada Cloud Code.
00:03:51Saya rasa mereka merilisnya di bulan November,
00:03:52sebenarnya, sebagai versi beta di tahun 2024.
00:03:55Tetapi itu benar-benar baru mulai lebih banyak digunakan, katakan lagi?
00:03:59Hanya di bulan Februari.
00:04:01Ya, Februari, Maret, kira-kira seperti itu, tahun 2025.
00:04:03Dan saya merasa, saya menyukainya.
00:04:05Ini luar biasa.
00:04:06Tim Cloud juga luar biasa.
00:04:07Mereka ada di media sosial.
00:04:08Dan mereka semua orang-orang yang sangat baik dan sangat berbakat.
00:04:13Dan mereka pada dasarnya menciptakan seluruh genre ini.
00:04:15Saya tahu ada pendahulu seperti Adir dan AutoGPT,
00:04:18tetapi tidak ada yang melakukan ini.
00:04:20Dan ini pada dasarnya adalah seluruh hal pencarian agen.
00:04:22Jadi daripada seperti cursor yang masuk ke basis kode Anda,
00:04:25mengindeks berbagai hal, menyusun AST, dan mengindeks itu juga.
00:04:29Dan itu agak tidak benar-benar berfungsi.
00:04:31Mereka hanya berkata, eh.
00:04:33Kami melatih model kami dengan penguatan
00:04:35untuk hanya menggunakan alat file, alat bash,
00:04:37untuk menjelajahi basis kode Anda secara ad hoc dan menemukan tempat-tempat yang
00:04:41perlu ditemukan untuk memahami kode tersebut dan kemudian memodifikasinya.
00:04:44Dan ini bekerja sangat baik sehingga, ya, kami
00:04:46berhenti tidur karena tiba-tiba
00:04:48kami bisa menghasilkan jauh lebih banyak kode daripada yang bisa kami lakukan sebelumnya secara manual.
00:04:52Saat itu, semuanya sederhana dan dapat diprediksi
00:04:54dan benar-benar sesuai dengan alur kerja saya dengan sempurna.
00:04:57Baiklah.
00:04:58Tapi kemudian mereka terjebak dalam perangkap yang mana sebagian besar dari kita
00:05:05mungkin juga akan mengalaminya.
00:05:06Para clanker bisa menulis begitu banyak kode.
00:05:08Kenapa tidak biarkan saja ia menulis semua fitur yang bisa Anda
00:05:11bayangkan, kan?
00:05:11Bukankah itu hebat?
00:05:12Mari tambahkan fitur ini, dan fitur itu,
00:05:14dan fitur ini, dan fitur itu.
00:05:15Dan akhirnya, Anda berakhir dengan milik Homer Simpson--
00:05:18Saya bahkan tidak tahu apa namanya.
00:05:20Saya menyebutnya pesawat luar angkasa.
00:05:21Dan Cloud Code sekarang menjadi pesawat luar angkasa.
00:05:23Ia melakukan begitu banyak hal yang mungkin sebenarnya hanya
00:05:26Anda gunakan sekitar 5% dari apa yang ditawarkannya.
00:05:28Anda hanya tahu sekitar 10% secara total.
00:05:30Dan sisanya, 90% yang tersisa,
00:05:33itu semacam materi gelap AI dan agen.
00:05:36Tidak ada yang tahu apa yang sebenarnya ia lakukan.
00:05:37Dan saya pribadi menganggap ini tidak sangat membantu
00:05:40karena saya masih berpikir bahwa Anda perlu
00:05:43tahu apa yang sedang dilakukan oleh agen tersebut.
00:05:45Orang ini mungkin tidak setuju sampai tingkat tertentu.
00:05:49Dan kita di sini di TESOL, dan mereka juga
00:05:51menyukai manajemen konteks atau rekayasa konteks,
00:05:54seperti yang kita sebut.
00:05:55Dan saya akhirnya menemukan bahwa Cloud Code bukanlah
00:05:58alat yang baik dalam hal observabilitas
00:06:01dan benar-benar mengelola konteks Anda.
00:06:04Lalu ada juga ini.
00:06:06Siapa yang suka ini tentang Cloud Code, seperti jumlah
00:06:09kedipan yang sangat banyak dan tidak bisa dijelaskan?
00:06:10Yah, sebenarnya, saya tahu cara menjelaskannya dan mengapa itu terjadi,
00:06:13tetapi mereka masih belum memperbaikinya.
00:06:15Ini Tarik.
00:06:16Dia benar-benar hebat.
00:06:16Saya suka dia.
00:06:17Dia adalah orang DevRel mereka, sebagian besar di Twitter, dan dia luar biasa.
00:06:21Tetapi terkadang dia juga mengatakan hal-hal yang patut dipertanyakan
00:06:24seperti, antarmuka pengguna terminal kami sekarang adalah mesin game.
00:06:27Nah, perlu Anda ketahui saya memiliki latar belakang pengembangan game.
00:06:30Dari situlah asal saya.
00:06:31Dan jika saya membaca sesuatu seperti ini,
00:06:32maka itu agak sedikit menyakiti saya
00:06:34karena itu hanyalah antarmuka pengguna terminal biasa, bung.
00:06:37Itu bukan mesin game.
00:06:38Percayalah padaku.
00:06:39Satu-satunya alasan Anda menganggapnya mesin game
00:06:41adalah karena Anda menggunakan React di antarmuka terminal Anda,
00:06:44dan butuh waktu sekitar 12 milidetik
00:06:45untuk menata ulang seluruh grafik antarmuka pengguna Anda.
00:06:49Jangan lakukan itu, kawan.
00:06:51Itu bukan mesin game, kan?
00:06:54Dan kemudian Mitchell, yang sedang menulis Ghosty,
00:06:56seperti, bung, itu menyinggung, kawan.
00:06:59Maksudnya, jangan salahkan Ghosty atau terminal lainnya.
00:07:02Kode Anda adalah sampah.
00:07:04Terminal dapat merender pada kecepatan sekitar ratusan
00:07:05bingkai per detik, sub-milidetik per bingkai.
00:07:09Jadi jangan lakukan itu, kan?
00:07:12Dan mereka akhirnya memperbaiki masalah kedipan tersebut.
00:07:15Tetapi kemudian hal-hal lain terjadi.
00:07:16Jadi seolah-olah mereka sepenuhnya menyerah pada pengkodean vibe.
00:07:20Dan Anda bisa merasakannya setiap hari saat menggunakan Cloud Code.
00:07:23Sekali lagi, saya tidak ingin mengecilkan upaya
00:07:27dan hasil kerja mereka.
00:07:28Cloud Code masih merupakan pemimpin kategori untuk alasan yang baik.
00:07:30Mereka menemukan hal ini, dan mereka melakukan pekerjaan yang hebat.
00:07:32Saya secara pribadi hanyalah orang tua
00:07:34yang menyukai alat-alat sederhana yang dapat diprediksi.
00:07:37Dan ini tidak sesuai lagi dengan alur kerja dan kebutuhan saya.
00:07:41Jadi ya.
00:07:42Selain itu, mereka melakukan banyak hal di latar belakang,
00:07:44memanipulasi konteks Anda.
00:07:46Saya membuat sekumpulan alat di musim panas 2025
00:07:50yang memungkinkan saya untuk mencegat permintaan yang dibuat
00:07:52ke backend mereka dari Cloud Code dan mencari tahu
00:07:55teks tambahan kecil seperti apa
00:07:58yang disuntikkan ke dalam kontak Anda di belakang layar.
00:08:00Dan semua itu sangat merugikan
00:08:01dan juga berubah setiap saat.
00:08:04Seperti setiap hari atau dua hari sekali, akan
00:08:06akan ada rilis baru di mana hal ini mengubah apa
00:08:08yang disisipkan pada titik tertentu, yang pada dasarnya mengacaukan
00:08:11alur kerja Anda yang sudah ada.
00:08:13Itu bukanlah alat yang stabil.
00:08:14Dan sekarang saya memahaminya dari perspektif mereka.
00:08:16Mereka perlu bereksperimen.
00:08:17Dan mereka memiliki basis pengguna yang besar.
00:08:18Sangat sulit untuk bereksperimen
00:08:19ketika Anda memiliki basis pengguna yang besar.
00:08:21Tapi mereka tidak peduli.
00:08:23Jadi kita semua harus menderita.
00:08:25Anda bekerja dengan alat baru ini.
00:08:27Anda mencoba membuat alur kerja yang dapat diprediksi.
00:08:31Lalu vendor alat tersebut mengubah satu hal kecil
00:08:35di balik layar yang membuat LLM menjadi
00:08:36kacau dengan alur kerja Anda yang sudah ada.
00:08:38Itu benar-benar tidak berkelanjutan.
00:08:39Saya butuh kendali atas hal itu.
00:08:40Saya tidak bisa mengandalkan mereka untuk menyediakan sesuatu yang stabil.
00:08:46Jadi saya yakin, sebagai konsekuensi dari desain UI,
00:08:52mereka perlu mengurangi jumlah visibilitas yang Anda miliki.
00:08:54Saya pribadi tidak terlalu menyukai hal itu.
00:08:56Tapi itu hanya preferensi pribadi.
00:08:57Saya mengerti bahwa kebanyakan orang akan
00:08:58puas dengan jumlah informasi
00:09:00yang akan disajikan oleh Cloud Code kepada Anda.
00:09:03Tidak ada pilihan model sama sekali, tentu saja,
00:09:06karena ini bisa dibilang alat asli dari Anthropic.
00:09:09Itu bukan sisi negatifnya, karena model Claude—
00:09:12Saya menyukainya.
00:09:13Model-model itu sangat bagus.
00:09:15Dan hampir tidak ada ekstensibilitas sama sekali.
00:09:17Dan Anda mungkin merasa ini agak lucu, karena mereka
00:09:19memiliki seluruh sistem hook dan semacamnya.
00:09:21Tetapi jika Anda membandingkannya dengan apa yang dimungkinkan oleh Pi,
00:09:25integrasinya tidak sedalam itu.
00:09:28Ini juga pada dasarnya berbasis pada menjalankan proses ketika
00:09:32peristiwa hook dimulai, yang mana sangat mahal jika Anda
00:09:36harus memulai proses tersebut berulang kali.
00:09:40Jadi akhirnya, saya mulai tidak menyukai Cloud Code,
00:09:42bukan karena alat itu buruk.
00:09:44Hanya saja alat itu tidak lagi cocok untuk saya.
00:09:47Alat itu menjadi cocok untuk lebih banyak orang selama periode tersebut.
00:09:50Jadi jelas, mereka melakukan hal yang benar, tapi bukan untuk saya,
00:09:54karena saya sudah tua.
00:09:56Lalu saya mulai mencari opsi lain.
00:09:59Dan ada Codex CLI, yang sangat tidak saya sukai.
00:10:01Awalnya, baik antarmuka pengguna maupun modelnya,
00:10:05itu telah berubah, setidaknya dalam hal modelnya.
00:10:08Codex sekarang sudah cukup bagus.
00:10:10Lalu ada AMP.
00:10:12Tim di baliknya dulu bekerja di Sourcegraph.
00:10:15Mereka memisahkan diri dari Sourcegraph.
00:10:20Dan mereka adalah insinyur yang sangat hebat.
00:10:21Mereka berhasil membangun kerangka pengodean komersial di mana
00:10:25mereka menghapus fitur alih-alih menambahkannya.
00:10:28Dan sebagian besar pilihan mereka sangat masuk akal bagi saya.
00:10:33Jadi ya, jika Anda mencari kerangka pengodean komersial,
00:10:36saya sangat merekomendasikan AMP kepada Anda, karena itu sangat bagus.
00:10:39Factory Troye, kurang lebih serupa, juga sangat bagus,
00:10:44meskipun mereka tidak se-eksperimental AMP.
00:10:47Dan kemudian ada OpenCode, yang merupakan kerangka
00:10:50pengodean sumber terbuka yang banyak digunakan orang.
00:10:53Jadi saya punya riwayat di dunia sumber terbuka.
00:10:55Saya sudah berkecimpung di sumber terbuka selama, ya, 17 tahun.
00:11:00Saya telah mengelola proyek sumber terbuka besar dan kecil.
00:11:04Jadi hal itu sangat berarti bagi saya.
00:11:05Maka saya pikir, saya akan mencoba OpenCode,
00:11:08karena itu terasa dekat dengan saya.
00:11:12Dan selain AMP, mereka memiliki salah satu tim yang paling
00:11:15membumi atau pragmatis di bidang ini.
00:11:16Mereka tidak membesar-besarkan fitur
00:11:18yang mungkin tidak akan pernah Anda gunakan.
00:11:20Mereka mencoba mempertahankan jalur utama yang
00:11:23sangat stabil.
00:11:26Dan mereka juga memiliki pemikiran yang cukup bagus
00:11:27tentang apa arti agen pengodean bagi kita
00:11:29sebagai sebuah profesi, yang secara pribadi bisa saya pahami.
00:11:32Masalah dengan OpenCode adalah alat ini juga tidak terlalu bagus
00:11:37dalam mengelola konteks Anda.
00:11:38Misalnya, pada setiap giliran, ia memanggil sessionCompaction.prune,
00:11:44yang melakukan hal berikut.
00:11:46Ia memangkas semua hasil sebelum 40.000 token terakhir.
00:11:52Nah, siapa di sini yang tahu apa itu prompt caching?
00:11:56Apa dampaknya terhadap prompt cache Anda?
00:11:58Jadi OpenCode dan Anthropic memiliki sejarah yang menarik.
00:12:05Dan akhirnya, Anthropic, menurut pendapat saya, dan memang benar,
00:12:11mengatakan, kawan, itu tidak akan terjadi.
00:12:14Dan tidak pernah ada pernyataan publik tentang hal ini.
00:12:17Tapi Tarek menjelaskannya di sini.
00:12:19Jika Anda datang ke gym dan tidak berperilaku baik serta menyalahgunakan
00:12:22infrastrukturnya, bisa dikatakan, Anda akan dilarang.
00:12:25Dan saya pikir—
00:12:27Saya tidak punya bukti untuk itu,
00:12:28tapi saya pikir itulah alasan mengapa
00:12:30ada permusuhan antara Anthropic dan OpenCode.
00:12:33Dan saya sangat setuju, atau setidaknya saya
00:12:36pikir Anthropic jelas berada di pihak yang benar di sini.
00:12:39Jangan mengacaukan infrastruktur.
00:12:42Lalu ada juga hal lain, seperti OpenCode
00:12:44yang hadir dengan dukungan LSP, Language Server Protocol,
00:12:46secara langsung.
00:12:48Kembali ke rekayasa konteks,
00:12:51katakanlah Anda memberikan tugas kepada agen Anda
00:12:53untuk memodifikasi sejumlah file.
00:12:55Apa artinya itu dalam praktiknya?
00:12:57Ia akan melakukan serangkaian pengeditan, satu demi satu,
00:13:02pada sejumlah file.
00:13:03Seberapa besar kemungkinannya setelah pengeditan pertama, dari 10 pengeditan,
00:13:09bisa dikatakan, kodenya akan bisa dikompilasi?
00:13:12Apa yang terjadi jika Anda memodifikasi kode Anda baris demi baris?
00:13:15Berapa lama waktu yang dibutuhkan untuk menjadi stabil lagi
00:13:17dan bisa dikompilasi dengan bersih?
00:13:19Tidak akan.
00:13:20Itu tidak akan terkompilasi setelah pengeditan pertama, mungkin tidak juga
00:13:22setelah pengeditan kedua, dan seterusnya.
00:13:24Jadi jika Anda kemudian berbalik dan berkata, hei, server LSP sayang,
00:13:28saya baru saja mengedit satu baris di file ini.
00:13:30Apakah ini rusak?
00:13:31Maka server LSP akan berkata, ya, ini benar-benar rusak.
00:13:34Dan apa yang dilakukan fitur ini adalah ia kemudian
00:13:36menyuntikkan kesalahan ini langsung setelah pemanggilan
00:13:39alat sebagai semacam umpan balik ke model.
00:13:43Oh, apa yang baru saja Anda lakukan itu salah.
00:13:45Dan modelnya akan seperti, apa-apaan ini?
00:13:47Saya belum selesai mengedit segalanya.
00:13:49Mengapa Anda memberi tahu saya hal ini?
00:13:50Jelas, ini tidak salah.
00:13:51Tetapi jika Anda melakukan ini cukup sering, model tersebut akan menyerah begitu saja.
00:13:54Dan itu menyebabkan hasil yang sangat buruk.
00:13:58Jadi saya bukan penggemar LSP.
00:13:59Saya pikir mengaktifkan hal itu adalah ide yang sangat buruk.
00:14:02Ada titik sinkronisasi alami
00:14:03di mana Anda ingin melakukan linting dan pemeriksaan tipe
00:14:06dan sebagainya.
00:14:07Dan itu adalah ketika agen menganggap pekerjaannya selesai, hanya pada saat itu.
00:14:10Ini telah berubah baru-baru ini.
00:14:14Ini adalah satu sesi OpenCode, di mana setiap pesan
00:14:20menjadi file JSON-nya sendiri.
00:14:22Setiap pesan tunggal menjadi file JSON-nya sendiri di disk.
00:14:26Itu menunjukkan kepada saya bahwa tidak banyak pemikiran yang diberikan
00:14:29ke dalam arsitektur dari keseluruhan hal tersebut.
00:14:31Dan jika saya kehilangan kepercayaan pada hal itu, saya tidak
00:14:33ingin menggunakan alat itu lagi.
00:14:35Sekali lagi, saya pikir timnya sebenarnya sangat bagus.
00:14:37Saya pikir mereka beriterasi dengan sangat cepat
00:14:39dan membangun sesuatu yang sangat berguna bagi banyak orang, tentu saja.
00:14:42Hanya saja, sekali lagi, keputusan-keputusan yang tidak akan saya ambil itulah yang
00:14:43membuat saya memutuskan untuk membangun milik saya sendiri.
00:14:46Lalu ada juga hal ini.
00:14:50OpenCode hadir dengan server secara default.
00:14:51Jadi arsitektur intinya berbasis pada server.
00:14:54Dan klien terhubung ke server tersebut.
00:14:56Dan antarmuka pengguna terminal adalah salah satu kliennya.
00:14:57Ada juga antarmuka desktop.
00:15:00Dan entahlah.
00:15:01Itu ternyata menjadi kerentanan keamanan
00:15:03dengan eksekusi kode jarak jauh yang tertanam secara default.
00:15:05Dan itu juga—jika Anda sangat bangga dengan
00:15:09infrastruktur server atau arsitektur server Anda,
00:15:12maka saya akan berasumsi Anda adalah insinyur dewasa yang
00:15:15memikirkan tentang keamanan juga.
00:15:18Dan rupanya, itu tidak terjadi.
00:15:20Dan ini sudah terbuka untuk waktu yang lama.
00:15:21Dan sekali lagi, saya tidak menyalahkan siapa pun di sini.
00:15:23Ini adalah hal-hal yang biasa terjadi jika Anda
00:15:25bekerja di industri yang beroperasi dengan kecepatan luar biasa
00:15:27yang belum pernah kita lihat sebelumnya.
00:15:31Hanya saja saya tidak ingin menggunakan alat itu jika hal tersebut ada.
00:15:33Jadi ini adalah pengamatan saya terkait pengodean
00:15:36yang ada saat ini.
00:15:42AMP dan Droid mungkin bisa saja saya gunakan.
00:15:42Tapi sekali lagi, tidak ada kendali.
00:15:45Dalam kasus AMP, mereka bahkan memutuskan model apa yang bisa Anda gunakan.
00:15:47Dan itu hanya model tunggal untuk satu jenis tugas.
00:15:50Dan itu bukan saya.
00:15:53Dalam hal Droid, saya pikir itu sedikit lebih terbuka.
00:15:55Tetapi pada saat saya mencobanya,
00:15:58itu tidak—
00:16:00Saya tidak melihat keuntungan besar dibandingkan Cloud Code.
00:16:02Lalu saya melihat tolok ukur untuk alasan yang sama sekali berbeda
00:16:07dan menemukan Terminal Bench.
00:16:10Siapa yang tahu apa itu Terminal Bench?
00:16:12Oke, pada dasarnya, ini adalah pengodean atau kerangka
00:16:15evaluasi agen, yang memiliki sejumlah penggunaan komputer dan tugas
00:16:20terkait pemrograman—
00:16:24maaf, sudah tua dan lelah karena anak umur 4 tahun.
00:16:24Ini memiliki sejumlah tugas penggunaan komputer dan pengodean
00:16:31yang harus dipenuhi oleh sebuah agen atau LLM
00:16:35di dalam kerangka agen.
00:16:39Saya rasa jumlahnya sekitar 82 atau lebih.
00:16:40Dan mereka sangat beragam.
00:16:43Mulai dari memperbaiki pengaturan jendela hingga mengodekan
00:16:44simulasi Monte Carlo atau semacamnya.
00:16:48Dan mereka memiliki papan peringkat.
00:16:51Dan di papan peringkat itu, Anda melihat kombinasi
00:16:52antara kerangka agen pengodean dan modelnya.
00:16:54Dan mereka memiliki agen pengodean sendiri yang disebut Terminus.
00:16:57Dan saya rasa itu brilian karena ini adalah
00:17:03salah satu kerangka dengan performa terbaik dalam tolok ukur tersebut.
00:17:06salah satu harness dengan performa terbaik dalam tolok ukur tersebut.
00:17:09Kita akan melihatnya nanti.
00:17:11Apa sebenarnya yang dilakukannya?
00:17:12Yah, yang didapatkan model hanyalah sesi TMUX.
00:17:17Dan yang bisa dilakukannya hanyalah mengirim ketukan tombol ke sana
00:17:19dan membaca kembali urutan kode VT yang dipancarkan.
00:17:23Jadi ini seperti antarmuka terkecil dan paling minimal
00:17:27yang bisa dimiliki sebuah model terhadap komputer Anda.
00:17:31Dan ini memberikan performa papan atas di seluruh papan peringkat.
00:17:36Jadi apa yang hal ini beritahukan kepada kita tentang harness agen pengodean yang ada?
00:17:39Apakah kita membutuhkan semua fitur ini agar model-model tersebut
00:17:41benar-benar bisa berperforma?
00:17:43Bagi saya pribadi, ini bukan hanya tentang model yang
00:17:48sebenarnya bagus.
00:17:49Ini juga tentang saya sebagai pengguna, manusia,
00:17:51memiliki cara untuk berinteraksi dengan agen saya, dengan model tersebut.
00:17:54Dan Terminus jelas bukan pengalaman pengguna atau pengalaman pengembang
00:17:58yang saya inginkan.
00:18:00Tapi itu memberi tahu kita bahwa semua fitur ini, semua harness pengodean
00:18:03mungkin tidak diperlukan untuk mendapatkan
00:18:08hasil yang baik dari para agen.
00:18:10Jadi tidak ada alat file, tidak ada sub-agen, tidak ada pencarian web, tidak ada apa-apa.
00:18:13Dua tesis didasarkan pada semua temuan ini.
00:18:16Kita berada dalam tahap mencoba-coba dan mencari tahu.
00:18:18Dan tidak ada yang tahu seperti apa agen pengodean yang sempurna
00:18:21atau seperti apa harness pengodean yang sempurna nantinya.
00:18:23Kita mencoba minimalisme sekaligus mencoba kawanan kapal ruang angkasa penuh,”
00:18:27tim agen, tanpa kendali, otonomi penuh,
00:18:30dan apa pun itu.
00:18:31Saya rasa itu belum selesai.
00:18:33Kita belum menjawab pertanyaan seperti apa ini
00:18:35seharusnya secara ideal dan apa yang akan menjadi standar
00:18:37industri.
00:18:38Dan hal kedua adalah kita butuh cara yang lebih baik
00:18:40untuk mencoba-coba dengan agen pengodean.
00:18:42Yaitu, kita membutuhkan mereka untuk bisa memodifikasi diri mereka sendiri
00:18:47dan menjadi lentur.
00:18:48Sehingga kita bisa bereksperimen dengan cepat dengan ide-ide
00:18:50dan melihat apakah ini sesuatu yang bisa kita jadikan seperti standar
00:18:53industri, alur kerja baru yang mungkin akan kita semua adaptasi.
00:18:58Jadi ide dasarnya adalah—
00:18:59dan ini sangat sederhana, bukan sains roket—
00:19:01hilangkan segalanya dan bangun inti minimal yang dapat diperluas.
00:19:05Ada beberapa kenyamanan makhluk hidup.
00:19:06Ini bukan papan yang kosong.
00:19:09Jadi itu adalah Pi.
00:19:10Dan moto umumnya adalah adaptasikan agen pengodean Anda
00:19:13dengan kebutuhan Anda, bukan sebaliknya.
00:19:16Ini dilengkapi dengan empat paket, sebuah paket AI, yang pada dasarnya
00:19:21hanyalah abstraksi sederhana atas berbagai penyedia, yang
00:19:24semuanya berbicara dengan protokol transportasi yang berbeda.
00:19:27Jadi sangat mudah untuk berbicara dengan semua penyedia
00:19:29dan berpindah-pindah di antara mereka dalam konteks atau sesi yang sama.
00:19:34Inti agen, yang hanyalah sebuah loop agen umum
00:19:36dengan lokasi perkakas, verifikasi,
00:19:38dan seterusnya.
00:19:39Dan streaming, antarmuka pengguna terminal
00:19:42yang berisi sekitar 600 baris kode dan bekerja dengan sangat baik,
00:19:47secara mengejutkan, karena ini tidak ditulis oleh clanker.
00:19:51Dan agen pengodean itu sendiri, yang merupakan SDK
00:19:54yang bisa Anda gunakan dalam mode headless
00:19:57atau agen pengodean antarmuka pengguna terminal penuh.
00:20:02Ini adalah seluruh petunjuk sistemnya.
00:20:05Tidak ada lagi yang lain di sana dibandingkan dengan petunjuk sistem
00:20:08[TIDAK TERDENGAR] pengodean lainnya.
00:20:10Itu dalam bentuk token.
00:20:13Ternyata model-model mutakhir dilatih RL secara intensif untuk mengetahui
00:20:16apa itu agen pengodean.
00:20:18Jadi mengapa Anda terus memberi tahu mereka bahwa mereka adalah agen pengodean
00:20:21dan bagaimana mereka harus melakukan tugas pengodean, kan?
00:20:27YOLO secara default, mengapa begitu?
00:20:30Kebanyakan harness agen pengodean saat ini memiliki dua mode.
00:20:33Entah agen bisa melakukan apa pun yang diinginkannya
00:20:36atau agen harus bertanya kepada Anda, apakah Anda benar-benar
00:20:40ingin menghapus file ini?
00:20:41Apakah Anda benar-benar ingin mencantumkan file di direktori ini,
00:20:44dan seterusnya?
00:20:44Dan ada berbagai nuansa di sini.
00:20:47Tapi pada akhirnya, ini bermuara pada pengguna
00:20:49perlu menyetujui tindakan oleh agen tersebut.
00:20:52Dan barulah kita aman.
00:20:53Dan saya rasa itu salah karena itu menyebabkan kelelahan.
00:20:55Dan orang-orang akan mematikannya sama sekali, mode YOLO,
00:20:58atau hanya duduk di sana dan menekan enter tanpa membaca apa pun.
00:21:01Jadi saya rasa itu bukan solusinya.
00:21:02Kontainerisasi juga bukan solusi
00:21:04jika Anda khawatir tentang pencurian data
00:21:06dan injeksi perintah.
00:21:07Tapi saya rasa itulah satu-satunya hal yang Anda—
00:21:10Saya rasa itu adalah dasar terbaik dibandingkan dengan pagar pembatas
00:21:14seperti persetujuan atau dialog.
00:21:17Ini hanya memiliki empat alat: baca file, tulis file,
00:21:19edit file di Bash.
00:21:21Bash adalah semua yang Anda butuhkan.
00:21:22Apa yang tidak ada di sana?
00:21:23Tidak ada MCP, tidak ada sub-agen, tidak ada rencana, tidak ada latar belakang,
00:21:25Bash, tidak ada daftar tugas bawaan.
00:21:26Inilah yang bisa Anda lakukan sebagai gantinya.
00:21:28Untuk MCP, gunakan alat CLI ditambah keterampilan,
00:21:30atau buat sebuah ekstensi, yang akan kita lihat sebentar lagi.
00:21:34Kenapa tidak ada sub-agen?
00:21:35Karena mereka tidak dapat diamati.
00:21:36Sebaliknya, gunakan tmux dan jalankan agennya lagi.
00:21:41Anda memiliki kendali penuh atas output dan input agen
00:21:44dan bisa melihat semua yang terjadi di sub-agen tersebut.
00:21:48Cukup menarik, spawn kode—
00:21:50mode tim sekarang juga melakukan hal yang persis seperti ini.
00:21:55Tidak ada mode rencana, tulis saja file plan.md.
00:21:57Anda memiliki artefak yang persisten alih-alih
00:21:59beberapa UI yang tidak rapi yang tidak benar-benar
00:22:02cocok dengan viewport terminal Anda.
00:22:04Dan Anda bisa menggunakannya kembali di beberapa sesi.
00:22:07Tidak perlu Bash latar belakang, kita punya tmux.
00:22:09Itu adalah hal yang sama.
00:22:11Dan tidak ada daftar tugas bawaan, tulis saja todo.md.
00:22:13Hal yang sama.
00:22:14Atau bangun semua ini sendiri sesuai keinginan Anda.
00:22:17Dan inilah yang dimungkinkan oleh Py, dengan menjadi sangat mudah diperluas.
00:22:21Jadi Anda bisa memperluas alat, secara kustom.
00:22:22Anda bisa memberi LLM alat yang Anda tentukan sendiri.
00:22:26Saya rasa tidak ada harness agen pengodean lain
00:22:28yang menawarkannya saat ini, kecuali jika Anda melakukan fork open code.
00:22:31Anda tidak perlu melakukannya di sini.
00:22:32Anda cukup menulis file TypeScript sederhana,
00:22:34dan itu akan dimuat secara otomatis.
00:22:37Anda juga bisa menulis UI kustom.
00:22:39Keterampilan jelas ada dalam templat perintah mereka, tema.
00:22:43Dan Anda bisa membungkus semua itu, menaruhnya di NPM atau Git,
00:22:46dan menginstalnya dengan satu perintah, yang sangat bagus.
00:22:49Dan semuanya dimuat ulang secara otomatis.
00:22:51Jadi saya mengembangkan ekstensi saya sendiri yang
00:22:53spesifik untuk proyek atau tugas di Py di dalam proyek tersebut.
00:22:59Dan saat agen memodifikasi ekstensi tersebut, saya tinggal memuat ulang.
00:23:05Dan itu segera memperbarui semua kode yang sedang berjalan,
00:23:10yang mana sangat menyenangkan.
00:23:11Dan dalam praktiknya, itu berarti Anda bisa melakukan pemadatan kustom.
00:23:14Saya rasa itu salah satu hal yang harus lebih banyak dieksperimen
00:23:16oleh orang-orang, karena semua implementasi pemadatan
00:23:19saat ini tidak bagus.
00:23:21Gerbang izin, Anda bisa dengan mudah mengimplementasikannya
00:23:23dalam 50 baris kode, dan mencakup
00:23:24apa yang dilakukan harness agen lainnya jika Anda menginginkannya.
00:23:27Penyedia kustom, daftarkan proksi dari model yang dihosting sendiri.
00:23:31Saya tidak peduli.
00:23:32Anda tidak perlu saya untuk melakukan ini untuk Anda.
00:23:33Anda bisa melakukannya, dan sebenarnya, clanger Anda bisa melakukannya untuk Anda.
00:23:37Atau timpa alat bawaan apa pun.
00:23:38Modifikasi cara kerja baca, tulis, edit, dan bash.
00:23:41Saya tidak peduli.
00:23:42Saya punya versi baca, tulis, edit, dan bash
00:23:43yang bekerja melalui SSH pada mesin jarak jauh.
00:23:47Bagi saya, itu butuh lima menit untuk diimplementasikan, tapi itu berhasil.
00:23:51Dan Anda punya akses TUI penuh, jadi Anda sebenarnya bisa
00:23:54menulis UI yang sepenuhnya kustom di agen pengodean.
00:23:58Cloud Code Shipped/Ngomong-ngomong, butuh lima menit bagi seseorang
00:24:02untuk mereplikasi itu di Py dengan fitur lebih banyak.
00:24:05PyMessenger, saya tidak tahu apa yang dilakukannya,
00:24:07tapi sepertinya, itu seperti ruang obrolan untuk beberapa agen Py
00:24:10yang kemudian berkomunikasi, yang kemudian memiliki UI kustom.
00:24:13Kita bisa melihat apa yang mereka lakukan, dan ya, itu berhasil saja.
00:24:18Atau PyMess, kalau Anda bosan, mainkan saja game
00:24:23selagi agennya sedang berjalan, kan?
00:24:24Anda bisa melakukannya.
00:24:25Atau PyAnnotate, buka situs webnya
00:24:28yang sedang Anda kerjakan saat ini, dan beri anotasi di front end,
00:24:31dan berikan umpan balik kepada agen secara langsung.
00:24:35Masukkan kembali ke dalam konteks, biarkan dia memodifikasi hal tersebut.
00:24:39Atau sesuatu yang saya gunakan adalah File Switch It.
00:24:42Saya tidak ingin beralih ke IDE atau editor.
00:24:43Saya hanya ingin melihat sekilas file yang telah dimodifikasi.
00:24:46Jadi semua ini adalah ekstensi.
00:24:48Tidak ada satu pun dari ini yang bawaan, dan orang-orang biasanya butuh
00:24:50beberapa menit hingga sore hari
00:24:52untuk membangun semua ini sesuai keinginan mereka.
00:24:56PyWavic bilang, juga tidak tahu apa yang dilakukannya.
00:25:00Py juga dilengkapi dengan struktur pohon.
00:25:01Saya tidak akan menjelaskan itu.
00:25:03Lihat saja di py.dev.
00:25:04Sesi Anda adalah sebuah pohon, bukan daftar obrolan linear.
00:25:07Jadi pada dasarnya Anda bisa melakukan beberapa agen
00:25:09dengan membaca semua file di direktori,
00:25:11meringkas ini, kembali ke akar percakapan saya,
00:25:14membawa ringkasan tersebut, dan melakukan pekerjaan yang sebenarnya.
00:25:19Tidak ada yang disuntikkan di belakang Anda.
00:25:22Agen, keterampilan, pelacakan biaya penuh.
00:25:24Banyak harness tidak melakukan ini di sini.
00:25:26Open code tidak melakukannya dengan baik.
00:25:29Ekspor HTML, format JSON, aliran JSON headless, bla, bla.
00:25:33Apakah ini benar-benar berhasil?
00:25:34Yah, terminal bench.
00:25:35Biarkan saya perbesar di sini.
00:25:36Saya tidak bisa.
00:25:37Ini luar biasa.
00:25:38Inilah py tepat di belakang terminus 2 menggunakan cloud opus 4.5.
00:25:45Itu terjadi di bulan Oktober saat py bahkan belum punya pemadatan.
00:25:49Waktunya demo, lewati itu, langsung melawan para clanker
00:25:51karena mereka merusak sumber terbuka.
00:25:54Jika Anda terkait dengan proyek orang ini,
00:25:56maka Anda akan mendapati ratusan orang datang dari OpenClaw
00:26:02ke repositori Anda dan membanjiri Anda dengan clanker, fill, fence law.
00:26:06Jadi saya harus menciptakan beberapa langkah pencegahan.
00:26:09Saya menciptakan liburan OSS.
00:26:11Jadi saya menutup masalah dan PR selama beberapa minggu
00:26:14dan mengerjakan berbagai hal sendiri.
00:26:16Apa pun yang penting pasti akan dilaporkan nanti
00:26:20atau di Discord.
00:26:21Dan kemudian saya juga mengimplementasikan skema akses kustom
00:26:26di mana saya punya file markdown di repositori tersebut.
00:26:28Jika seseorang membuka PR tanpa nama akun mereka
00:26:32tercantum dalam file markdown tersebut, PR akan ditutup otomatis.
00:26:34Saya tidak peduli.
00:26:35Pertama-tama, perkenalkan diri Anda dengan suara manusia melalui sebuah issue.
00:26:39Tulis issue yang tidak lebih panjang dari tampilan layar
00:26:42karena apa pun yang lebih dari itu kemungkinan besar adalah hukum clankers.
00:26:45Dan setelah Anda melakukannya, saya senang untuk— terlihat oke bagi saya, Anda.
00:26:47Jadi Anda masuk ke file itu dan sekarang bisa mengirimkan PR
00:26:50ke repositori tersebut.
00:26:51Yang saya minta hanyalah verifikasi manusia.
00:26:53Dan Mitchell dari Ghosty kemudian mengambil ini dan membangun
00:26:57sebuah proyek bernama Vouch, yang lebih mudah diterapkan
00:27:00pada repositori sumber terbuka Anda sendiri.
00:27:02Dan itulah Pi.
00:27:03Silakan dan cobalah.
00:27:05Itu saja dari saya.
00:27:06[TEPUK TANGAN]
00:27:07[MUSIK DIMAINKAN]