Saya Berhenti Menggunakan Grep dan Agen Saya Menjadi 10x Lebih Cepat

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Jadi, ada plugin MCP bernama Claude Context yang mengindeks seluruh basis kode Anda
00:00:06ke dalam basis data vektor, yang berarti agen coding Anda bisa mendapatkan kode yang tepat dengan cepat
00:00:11tanpa perlu menebak menggunakan grep atau glob dan berharap menemukan file yang tepat.
00:00:15Plugin ini bahkan memproses kode Anda dengan AST dan menggunakan pendekatan pencarian hibrida, menggabungkan
00:00:20vektor semantik dengan pencocokan kata kunci, yang pada akhirnya menggunakan 40% lebih sedikit konteks.
00:00:24Tapi ini memerlukan akun cloud Zilliz dan kunci OpenAI untuk embedding, bahkan jika Anda menggunakan kode Claude.
00:00:30Jadi, apakah usaha dan biaya ekstra tersebut sepadan dengan penghematan token?
00:00:34Klik subscribe dan mari kita cari tahu.
00:00:35Oke, jadi Claude Context, saya tidak begitu yakin dengan namanya, dibuat oleh Zilliz, yaitu perusahaan
00:00:43yang didirikan oleh para pencipta Milvus, sebuah basis data vektor yang sangat performa.
00:00:47Plugin ini terhubung ke agen Anda melalui MCP, jadi ini berarti bisa bekerja dengan harness agen apa pun dan
00:00:52bukan hanya Claude Code.
00:00:54Namun, ia melakukan tiga hal yang cukup kompleks agar kode Anda mudah ditemukan.
00:00:58Pertama, ia menggunakan TreeSitter untuk menelusuri semua kode, membuat potongan fungsi
00:01:03dan kelas, dan ini mendukung sembilan bahasa termasuk TypeScript, Python, Rust, dan Go.
00:01:08Lalu ia menggunakan Merkle DAG khusus untuk men-hash setiap file dengan snapshot JSON, yang berarti ia hanya mengindeks ulang
00:01:15file yang telah berubah dan bukan keseluruhan basis kode.
00:01:18Dan kemudian saat Anda benar-benar ingin mencari melalui kode, ia melakukan dua jenis pencarian
00:01:22pada saat yang sama, pencarian vektor untuk menemukan makna semantik dari kode, dan indeks BM25
00:01:29untuk pencocokan kata kunci yang tepat.
00:01:31Semua ini menghasilkan pengurangan konteks hingga 40%, yang sangat besar untuk basis kode yang besar.
00:01:37Faktanya, mari kita lihat aksinya dengan mengujinya terhadap basis kode VS Code, yang memiliki
00:01:42sekitar 1,5 juta baris kode.
00:01:44Jadi di dalam repo VS Code yang dikloning, saya akan menggunakan OpenCode dengan GLM5 Turbo karena
00:01:50saya tidak ingin menghabiskan batas mingguan Claude Pro saya.
00:01:53Dan untuk mengatur server MCP, yang bisa Anda lihat di sini, saya sudah menambahkan
00:01:58informasi yang relevan ke file JSON OpenCode saya.
00:02:01Dan untuk informasi ini, Anda bisa menjalankan Milvus secara lokal, tetapi saya menggunakan Zilliz Cloud.
00:02:06Jadi saya mendapatkan kunci API dari sini, dan saya membuat kluster.
00:02:10Ini adalah kluster AWS dan saya mendapatkan titik akhir publik dari sini.
00:02:14Sekarang saat kita membahas kluster, saya mencoba menggunakan yang gratis terlebih dahulu, tetapi saya terus mendapatkan
00:02:19masalah waktu habis (timeout).
00:02:20Jadi saya harus mendapatkan yang serverless, yang memang berbayar, tetapi bekerja jauh lebih baik.
00:02:25Sekarang setelah Anda mengatur server MCP, pastikan Anda menjalankan versi node di bawah
00:02:2824, tetapi di atas atau sama dengan 20.
00:02:31Saya saat ini menggunakan versi 22 untuk proyek ini.
00:02:34Dan itu akan memberi Anda akses ke empat alat MCP: index code, search code, clear index, dan get
00:02:39index status.
00:02:40Sekarang hal pertama yang harus Anda lakukan adalah mengindeks basis kode dan kita bisa melakukannya dengan perintah ini.
00:02:44Tapi sebelum kita menekan enter, mari kita lihat berapa banyak uang yang sudah kita habiskan untuk embedding
00:02:48dari OpenAI, yang hanya satu sen dan itu untuk saya menguji basis kode 23.000 baris.
00:02:53Kita juga bisa melihat di kluster kita bahwa kita sudah memiliki informasi dari basis kode yang diindeks.
00:02:58Jadi sekarang jika kita mengindeks basis kode ini, memang butuh waktu dan memulai pengindeksan di
00:03:02latar belakang.
00:03:03Pada titik ini, saya tidak menyarankan untuk melakukan pencarian apa pun.
00:03:05Sekarang karena ini basis kode yang besar, akan butuh waktu lama untuk mengindeks.
00:03:09Jadi saya akan kembali nanti saat pengindeksan selesai.
00:03:11Dan setelah sekitar 50 menit, pengindeksan selesai dan kita bisa melihat kita memiliki potongan baru
00:03:16di kluster kita dengan lebih dari 223.000 entri yang dimuat.
00:03:21Dan sebagai referensi, kode yang saya uji sebelumnya yang memiliki 23.000 baris kode memiliki sekitar
00:03:271.000 baris entri dan butuh waktu kurang dari satu menit untuk mengindeks.
00:03:32Dan dengan penggunaan OpenAI kita, kita naik dari satu sen menjadi $1,06, yang lumayan banyak, tapi saya tidak
00:03:38membayangkan orang akan sering menelusuri 1,5 juta baris kode secara rutin.
00:03:42Oke, mari kita lihat seberapa cepat melakukan pencarian.
00:03:45Di sini kita memiliki satu contoh OpenCode yang menggunakan server MCP Claude Context, dan di sini
00:03:49kita memiliki satu tanpa server MCP.
00:03:52Jadi ia akan menggunakan alat grep dan glob biasa untuk mencari melalui kode.
00:03:56Dan kita akan memberinya perintah: "Gunakan Claude Context untuk menemukan titik masuk saat proyek ini
00:04:00mulai dijalankan."
00:04:01Mari kita lihat berapa lama ini berlangsung.
00:04:02Oke, jadi ia menggunakan alat index dan sekarang ia menggunakan alat search.
00:04:06Dan keseluruhan proses memakan waktu sekitar 19 detik untuk mencari melalui seluruh proyek ini dan menemukan
00:04:10file main .ts.
00:04:11Dan sekarang kita akan memberikan OpenCode ini perintah serupa dan ia menemukan responsnya
00:04:15dalam 14 detik.
00:04:16Jadi untuk kueri ini, menggunakan GLM biasa ternyata jauh lebih cepat.
00:04:20Mari kita mulai sesi baru.
00:04:21Dan kemudian saya akan memberinya perintah baru: "Fungsi apa yang membuka dokumen baru yang belum berjudul?"
00:04:26Yang ini butuh waktu sedikit lebih lama yaitu 40 detik dan menemukan fungsi utamanya dengan nomor baris
00:04:30dan menggunakan sekitar 23K token.
00:04:32Dan contoh lainnya melakukannya dalam 12 detik dan menggunakan 18K token, tetapi sepertinya ia menemukan
00:04:37file yang berbeda.
00:04:38Faktanya, Claude Context memberikan jauh lebih banyak informasi dengan menunjukkan kode dan file lain yang terkait dengan
00:04:44membuka editor.
00:04:45Jadi saya akan meminta keduanya untuk menunjukkan kode yang tepat.
00:04:48Dan pada titik ini, Claude Context merespons dalam 23 detik dengan kodenya dan OpenCode
00:04:52tanpa Claude Context merespons dalam 49 detik, hampir dua kali lipat waktunya.
00:04:56Dan ia sampai pada kode yang persis sama seperti Claude Context, yang memberi saya ide.
00:05:00Saya akan memberinya perintah yang lebih luas dan umum: "Lihat melalui kode ini dan beri tahu saya
00:05:04bagaimana proyek ini bekerja."
00:05:06Claude Context selesai dalam 49 detik menggunakan 41K token, dan contoh lainnya selesai
00:05:11lebih cepat dan menggunakan lebih sedikit token.
00:05:13Tetapi jika kita melihat output yang dihasilkan, kita bisa melihat ada jauh lebih banyak detail dari Claude
00:05:17Context yang memberikan arsitektur berlapis dan bahkan beberapa informasi tentang aplikasi Electron
00:05:22dan proses yang digunakannya.
00:05:23Dan pilihan tanpa Claude Context juga memberikan beberapa informasi arsitektur, tetapi tidak
00:05:28sedetail yang satu lagi.
00:05:30Faktanya, saya tahu tidak terlihat seperti itu, tetapi saya akan mengatakan Claude Context sangat bagus dalam
00:05:34mendapatkan informasi kode di awal dengan cepat dan sangat detail.
00:05:37Maksud saya, lihat ini.
00:05:38Jadi dari perintah ini, saya menanyakan perintah tindak lanjut untuk memberi saya informasi lebih lanjut tentang proses utama
00:05:43di aplikasi Electron, yang telah disebutkan di atas.
00:05:47Jadi setelah saya memberikan perintah ini, butuh waktu sekitar 1 menit 47 detik, tetapi lihat semua detail itu.
00:05:52Ya, detail itu sangat banyak.
00:05:53Jadi ia memulainya dengan urutan boot lalu fase satu, yaitu pembuatan layanan dan
00:05:58inisialisasi layanan.
00:05:59Dan kita mendapatkan begitu banyak lagi dari fase dua, aplikasi kode dengan semua referensi
00:06:04ke file yang relevan.
00:06:05Jadi kita punya app TS baris 185, dan kita bisa terus lanjut.
00:06:10Sedangkan tanpa Claude Context, OpenCode masih terus memeriksa semua file menggunakan beberapa
00:06:15sub-agen.
00:06:16Dan ini agak menipu karena kita tidak bisa melihat dengan tepat berapa banyak token yang digunakan setiap sub-agen.
00:06:21itu gunakan.
00:06:22Tetapi jika kita menunggu sebentar dan kembali, kita bisa melihat setelah sekitar lima menit, OpenCode
00:06:26merespons dengan banyak informasi tentang proses Electron, tetapi ini tidak sebanyak
00:06:31yang disediakan Claude Context, dan ia memakan waktu lima kali lebih lama.
00:06:34Sekarang, ya, mungkin jika saya menggunakan model yang lebih cerdas seperti Opus 4.7 dengan upaya tinggi, ia akan mendapatkan
00:06:40lebih banyak informasi, tetapi tetap akan memakan waktu lama dan menggunakan banyak token.
00:06:44Dan ini adalah jenis perbedaan, yaitu lima menit dan satu menit yang saya lihat ketika
00:06:48saya menguji sebelum merekam dengan basis kode 23K baris.
00:06:51Jadi pada akhirnya, sulit untuk mengatakan siapa pemenang yang jelas.
00:06:54Maksud saya, Claude Context memang selalu memberikan lebih banyak detail, tetapi tidak selalu yang tercepat dan
00:07:00paling efisien dalam penggunaan token.
00:07:01Dan untuk basis kode yang besar, ia membutuhkan waktu yang sangat lama untuk mengindeks.
00:07:05Namun, untuk basis kode berukuran rata-rata, yaitu 20 hingga 30.000 baris kode, waktu pengindeksan
00:07:10benar-benar cepat.
00:07:11Dan perbedaan detail dalam hasil sangat terlihat.
00:07:14Faktanya, saya akan mengatakan saya jauh lebih memilih menggunakan Claude Context untuk basis kode berukuran rata-rata
00:07:20daripada menggunakannya pada basis kode besar.
00:07:22Jadi itu sesuatu yang perlu dipertimbangkan.
00:07:23Tetapi jujur saja, ini lebih merupakan alat penjualan yang hebat bagi Zilliz karena sebelum menggunakan Claude
00:07:27Context, saya belum pernah mendengar tentang mereka dan sekarang mereka punya pelanggan baru yang membayar.
00:07:31Tetapi meskipun butuh waktu untuk mengatur dan mengindeks basis kode besar membutuhkan waktu yang sangat
00:07:36lama.
00:07:37Sebagai seseorang yang sering memeriksa basis kode open source dan mengajukan pertanyaan, menurut saya
00:07:42ini adalah alat yang akan saya gunakan lebih sering.
00:07:44Maksud saya untuk basis kode berukuran rata-rata, paket serverless tidak terlalu mahal karena
00:07:49biaya embedding OpenAI juga tidak terlalu besar.
00:07:52Jadi saya senang menanggung biayanya.
00:07:53Berbicara tentang pengambilan data dan AI.
00:07:55Jika Anda ingin belajar cara membangun sistem RAG yang sangat baik dari awal yang benar-benar
00:07:59berfungsi, maka tonton video dari Andris ini.
00:08:02Dan jika Anda penggemar Star Wars, Anda akan sangat menyukai video ini.

Key Takeaway

Claude Context meningkatkan kecepatan dan detail jawaban agen coding melalui pencarian hibrida, terutama efisien untuk basis kode berukuran rata-rata 20.000 hingga 30.000 baris.

Highlights

  • Claude Context menggunakan pendekatan pencarian hibrida yang menggabungkan vektor semantik dengan indeks BM25 untuk mengurangi penggunaan konteks hingga 40%.

  • Pengindeksan basis kode berukuran 1,5 juta baris memerlukan waktu 50 menit dan biaya $1,06 untuk embedding OpenAI.

  • Proses pengindeksan menggunakan TreeSitter untuk membuat potongan fungsi dan kelas serta Merkle DAG untuk hanya mengindeks ulang file yang berubah.

  • Pencarian detail pada basis kode menggunakan Claude Context memakan waktu 1 menit 47 detik, dibandingkan 5 menit untuk metode grep standar.

  • Claude Context menyediakan informasi arsitektur yang jauh lebih rinci daripada metode pencarian tradisional, terutama untuk pertanyaan yang luas.

Timeline

Mekanisme Kerja Claude Context

  • Plugin ini mengindeks kode ke dalam basis data vektor untuk menghindari ketergantungan pada grep atau glob.
  • Teknik pencarian hibrida menggabungkan vektor semantik dengan pencocokan kata kunci BM25.
  • Penggunaan TreeSitter memungkinkan pemrosesan potongan kode untuk sembilan bahasa pemrograman populer.

Claude Context mengubah cara agen mengakses kode dengan mengindeks seluruh basis kode ke dalam database vektor. Penggunaan TreeSitter memastikan kode dipecah menjadi unit fungsional yang mudah dipahami, sementara Merkle DAG menjaga efisiensi dengan hanya memproses file yang mengalami perubahan.

Pengujian pada Basis Kode Besar

  • Pengindeksan repositori VS Code dengan 1,5 juta baris kode memakan waktu 50 menit.
  • Biaya OpenAI untuk embedding basis kode 1,5 juta baris mencapai $1,06.
  • Basis kode kecil dengan 23.000 baris hanya memerlukan waktu kurang dari satu menit untuk diindeks.

Pengujian skala besar menunjukkan perbedaan signifikan dalam waktu dan biaya dibandingkan basis kode yang lebih kecil. Pengindeksan membutuhkan penggunaan layanan basis data vektor seperti Zilliz Cloud, dengan hasil akhir berupa 223.000 entri yang tersimpan untuk pencarian cepat.

Perbandingan Kinerja Pencarian

  • Claude Context merespons pertanyaan kompleks dalam 1 menit 47 detik, jauh lebih cepat daripada 5 menit untuk metode standar.
  • Hasil pencarian Claude Context lebih detail dengan menyertakan referensi file dan struktur arsitektur.
  • Metode tradisional sering kali memakan waktu hingga lima kali lipat lebih lama untuk menghasilkan informasi yang kurang mendalam.

Claude Context unggul dalam memberikan detail arsitektur yang komprehensif dibandingkan metode pencarian grep standar. Meskipun metode standar kadang lebih cepat untuk kueri sederhana, Claude Context memberikan nilai lebih pada pertanyaan yang memerlukan pemahaman konteks mendalam atas seluruh proyek.

Kesimpulan dan Rekomendasi

  • Claude Context sangat direkomendasikan untuk basis kode berukuran rata-rata 20.000 hingga 30.000 baris.
  • Biaya operasional paket serverless dianggap terjangkau untuk kebutuhan analisis kode open source secara rutin.

Alat ini menjadi pilihan efisien untuk pengembang yang sering mengeksplorasi kode sumber terbuka. Meskipun memerlukan waktu pengaturan awal, detail yang dihasilkan dan efisiensi jangka panjang menjadikannya investasi yang layak bagi pengguna yang memerlukan pemahaman cepat atas struktur kode yang kompleks.

Community Posts

View all posts