Headroom: Alat Netflix yang Membuat Agen AI 10x Lebih Murah
BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology
Transcript
00:00:00Ini adalah Headroom, alat sumber terbuka yang memadatkan semua yang dibaca agen AI Anda,
00:00:04yaitu panggilan alat, file kode, dan RAG, sebelum mencapai LLM, yang berarti Anda bisa mengurangi token
00:00:09sebanyak 60 atau bahkan 95% untuk mendapatkan jawaban yang sama persis. Dan bagian cerdasnya adalah, ini bisa dibalik, jadi
00:00:14model dapat meminta kembali informasi lengkapnya kapan pun ia benar-benar membutuhkannya. Namun kompresi
00:00:18biasanya berarti Anda kehilangan sesuatu, jadi bagaimana cara menghapus sebagian besar konteks dan tetap mendapatkan
00:00:23jawaban yang tepat? Ini benar-benar pertanyaan yang menarik, jadi klik subscribe dan mari kita cari tahu.
00:00:31Jika Anda pernah menggunakan harness seperti ClaudeCode, Anda tahu itu menggunakan banyak token. Setiap panggilan alat
00:00:35bisa membuang log JSON yang sangat besar, yang sebagian besar adalah noise, sehingga mengalihkan dari informasi penting,
00:00:40dan semua ini dimasukkan ke dalam jendela konteks, yang itulah yang Anda bayar.
00:00:45Terutama jika Anda menggunakan sesuatu seperti Opus dalam mode UltraCode, yang menjalankan alur kerja dinamis,
00:00:50menjalankan sub-agen paralel tanpa batasan token. Inilah mengapa Tejas Chopra, seorang pengembang senior di Netflix,
00:00:57menciptakan Headroom, yang bekerja dengan mendeteksi jenis konten dan menyimpan informasi penting.
00:01:01Jadi untuk array JSON, ia menyimpan anomali dan kasus tepi, ia memiliki kompresor kode yang membaca
00:01:06pohon sintaksis sebenarnya, dan saat membaca log build, ia menyimpan kegagalan dan membuang tes yang berhasil.
00:01:11Namun inilah bagian yang menarik. Untuk teks biasa, Headroom menggunakan modelnya sendiri yang disebut CompressBase,
00:01:17yang dilatih sendiri oleh Tejas hanya untuk kompresi, dan model ini berjalan secara lokal di mesin Anda.
00:01:22Headroom mengklaim telah menghemat sekitar $700.000 dalam bentuk token bagi penggunanya,
00:01:26dan yang sangat cerdas adalah ia meninggalkan remah roti di dalam teks yang dipadatkan,
00:01:30yang berisi hash yang dapat digunakan model untuk mengambil data yang tidak dipadatkan jika ia benar-benar membutuhkannya.
00:01:35Sekarang, jika Anda sudah menonton video James tentang Caveman, itu juga mengurangi konteks,
00:01:39tapi dari arah yang berlawanan, dan saya akan menjelaskan lebih lanjut tentang itu nanti di video.
00:01:43Tapi untuk saat ini, mari kita lihat contoh dasar Headroom untuk memahami cara kerjanya.
00:01:46Jadi, Headroom bekerja dengan menggunakan server Python yang berada di antara aplikasi Anda,
00:01:50ini bisa berupa kode yang dirayapi, dan misalnya, server anthropic.
00:01:54Jadi ketika hasil panggilan alat kembali, proksi memadatkannya menggunakan Rust di baliknya,
00:01:59dan hanya mengirim versi yang dipadatkan ke API.
00:02:01Jadi Anda bisa menginstal server dengan pip, tapi saya akan menggunakan uv dan memastikan versi Python
00:02:06adalah 3.12, karena tidak akan berfungsi pada versi yang lebih baru dari itu.
00:02:09Kemudian jalankan perintah proksi headroom dari pustaka ini, yang memicu proksi pada port ini.
00:02:14Headroom juga memiliki SDK TypeScript atau Python,
00:02:17dan untuk demo, kita akan menggunakan yang Python untuk membuat aplikasi menggunakan SDK clawed.
00:02:22Jadi kita bisa menginstal keduanya seperti ini, dan kemudian kita siap untuk menjalankan aplikasi.
00:02:25Nah, rencananya adalah menunjukkan cara menggunakan Headroom dengan clawed code nanti,
00:02:29tapi saya hanya ingin menunjukkan cara kerjanya di balik layar terlebih dahulu.
00:02:32Jadi untuk aplikasi ini, kita memiliki prompt pengguna untuk membaca semua file log dan mengetahui kesalahannya,
00:02:36serta akar penyebabnya. Dan dari sini, kita akan memalsukan panggilan alat.
00:02:40Jadi kita akan meminta clawed membuat panggilan alat bash untuk melakukan cat pada file log server,
00:02:44yang berisi sekumpulan log palsu dan diimpor di sini.
00:02:47Dan kemudian kita akan mengembalikan hasil panggilan alat.
00:02:49Nah, alasan kita tidak memberikan file teks langsung ke Headroom
00:02:52adalah karena itu hanya memadatkan output panggilan alat.
00:02:54Jadi di sini kita tentukan modelnya dan di bawahnya, kita menggunakan fungsi headroom compress
00:02:59untuk mengambil pesan dengan model untuk penghitungan token yang akurat.
00:03:02Headroom sebenarnya tidak menggunakan Haiku.
00:03:04Dan kemudian kita berikan URL dasar proksi.
00:03:06Dan kemudian kita memiliki banyak log kontrol untuk tujuan pengujian,
00:03:08menunjukkan pesan sebelum dan sesudah headroom,
00:03:11dan beberapa log kontrol lagi yang menunjukkan persentase penghematan.
00:03:13Dan setelah itu, kita meneruskan pesan yang dipadatkan dari headroom ke clawed code,
00:03:17yang juga berisi prompt pengguna.
00:03:18Jadi sekarang jika kita menjalankan file itu, kita bisa melihat headroom telah menghemat 98% token.
00:03:23Jadi ini adalah token sebelum dan ini adalah token setelahnya.
00:03:26Jadi ia menghemat lebih dari 17.000 token.
00:03:28Dan terlihat jelas saat kita melihat sebelum dan sesudahnya.
00:03:31Jadi jika kita gulir ke atas, ini adalah sebelum, jadi ini yang biasanya dikirim ke clawed code.
00:03:35Kita mendapatkan prompt pengguna, panggilan alat, dan respons alat, yaitu seluruh file log.
00:03:39Dan jika kita melihat di sini apa yang dikirim headroom, kita bisa melihat kita mendapatkan pesan pengguna dan panggilan alat yang sama,
00:03:43tapi respons alatnya jauh lebih sedikit.
00:03:45Dan apa yang dilakukannya di sini adalah menggunakan kompresi statistik untuk membuang token yang redundan.
00:03:50Jadi ia telah menghapus 419 log informasi serupa dan memadatkannya menjadi sebuah ringkasan.
00:03:54Nah di sini kita bisa melihat di bawah headroom memberi tahu clawed bahwa ini adalah output yang dipadatkan.
00:03:58Ia bisa mengambilnya menggunakan hash ini.
00:04:00Nah di sini kita melihat salah satu kerugian langsung dari headroom adalah clawed berpikir ia tidak memiliki
00:04:05cukup informasi untuk menyelesaikan tugas, tapi sebenarnya sudah cukup.
00:04:08Jadi apa yang akan kita lakukan adalah menjalankan file kita lagi.
00:04:10Dan kita bisa melihat bahwa kali ini kita masih mendapatkan penghematan 98%, tapi kita memiliki lebih banyak informasi dari clawed.
00:04:16Mari kita coba demo lain.
00:04:17Seperti biasa, kita perlu menjalankan proksi headroom, tapi kali ini saya memberinya lebih banyak parameter.
00:04:21Jadi di sini kita bisa melihat saya menambahkan nilai ML, yang menggunakan model kompresi lokal untuk memadatkan teks biasa.
00:04:26Dan saya telah menambahkan kode untuk membuat kompresor yang sadar kode tersedia.
00:04:30Dan kemudian saya menambahkan flag code aware untuk mengaktifkannya.
00:04:32Jadi sekarang kita bisa melihatnya diaktifkan di sini.
00:04:34Kemudian saya akan menjalankan clawed code, tapi pertama-tama saya akan mengatur URL dasar ke proksi.
00:04:39Dan dengan itu, saya akan memberikan prompt kepada clawed untuk membaca setiap file TS di proyek ini
00:04:44dan memberi saya gambaran mendalam tentang apa yang dilakukan proyek ini dengan kutipan ke kode yang relevan.
00:04:49Dan setelah beberapa saat, ia memberi saya respons yang mengatakan telah membaca semua file TypeScript
00:04:53di lima paket dan memberi saya gambaran umum default.
00:04:56Tapi jika kita menjalankan perintah context slash, yang sudah saya lakukan sebelumnya, kita bisa melihat ia menggunakan 89,1k token.
00:05:02Nah saya sebenarnya pergi dan menjalankan prompt serupa di clawed tanpa menggunakan headroom.
00:05:06Dan jika kita gulir ke bawah ke bagian bawah dan melihat di mana kita menyebabkan perintah sub konteks,
00:05:10ini menggunakan sedikit lebih banyak token.
00:05:11Nah, saya tidak yakin mengapa ia memilih untuk menggunakan jendela konteks opus 1 juta di sini.
00:05:16n telah memilih jendela konteks 200k di sini, tapi kita bisa melakukan curl endpoint ini pada format dengan jq
00:05:21untuk melihat dengan tepat di mana kompresi dari proksi tersebut.
00:05:23Nah, ini berisi banyak informasi, jadi butuh beberapa saat bagi saya untuk menemukannya.
00:05:26Tapi jika kita gulir ke atas, kita bisa melihat berapa banyak token yang dihemat oleh kompresi headroom
00:05:30dan bahkan melihat berapa banyak uang yang dihemat oleh kompresi tersebut.
00:05:32Nah, tentu saja, semua ini hanya dari satu prompt.
00:05:35Tapi bayangkan jika saya memiliki beberapa sesi clawed code yang berjalan dan saya memiliki headroom memadatkan semua panggilan alat.
00:05:39Bayangkan berapa banyak lagi token yang akan saya hemat.
00:05:42Saya juga ingin menunjukkan bahwa ketika saya menjalankan prompt yang tepat dengan upaya rendah pada opus,
00:05:46headroom sebenarnya tidak membuat penghematan token apa pun.
00:05:49Baru saat saya pindah dari rendah ke sedang, penghematan token terlihat jelas.
00:05:53Jadi mungkin jika saya berada di tinggi, x-tinggi, atau bahkan maksimal, maka itu akan menghemat lebih banyak token.
00:05:57Tapi bagaimanapun, itu adalah gambaran singkat tentang headroom.
00:06:00Dan tentu saja, ada begitu banyak fitur lain yang bisa saya bahas,
00:06:03seperti memori lintas-agen, yang membiarkan clawed, codex, dan harness lainnya
00:06:07berbagi konteks yang dipadatkan yang sama persis.
00:06:09Headroom Learn, yang menambang sesi gagal Anda untuk mengetahui apa yang dipadatkannya
00:06:12terlalu keras dan belajar sehingga ia tidak melakukan kesalahan yang sama di masa depan,
00:06:15serta integrasi dengan SDK populer.
00:06:18Tapi ada satu hal yang cukup penting untuk dipertimbangkan tentang Headroom.
00:06:21Setiap kali model tidak mendapatkan informasi yang dibutuhkan
00:06:24dan meminta Headroom untuk menyediakan data lengkap, ia melakukan perjalanan pulang pergi kedua,
00:06:28yang berarti Anda akhirnya menggunakan lebih banyak token dengan Headroom dalam beberapa kasus daripada tanpa.
00:06:33Tapi saya rasa ini adalah keuntungan menggunakan fitur Headroom Learn,
00:06:36yang mencoba untuk mencegah hal itu terjadi lagi di masa depan.
00:06:39Tapi ingat ketika saya berbicara tentang Caveman di awal video?
00:06:42Nah, Caveman mengurangi token dengan menginstruksikan model untuk merespons dalam fragmen pendek,
00:06:46membuang kata-kata pengisi dan sebagainya.
00:06:48Tapi seperti yang baru saja Anda lihat di demo, Headroom menyusutkan apa yang dibaca model
00:06:51sebelum itu mencapai model.
00:06:52Jadi satu memotong output sementara yang lain memotong input,
00:06:56yang berarti secara teknis Anda bisa menggunakannya bersama-sama untuk penghematan token maksimal,
00:07:00jika Anda benar-benar peduli untuk menghemat token sebanyak itu.
Community Posts
No posts yet. Be the first to write about this video!
Write about this video