4 poin oleh GN⁺ 2024-05-15 | 2 komentar | Bagikan ke WhatsApp
  • needle-in-a-needlestack adalah halaman publik yang mengumpulkan tulisan eksperimen dan kode terkait GPT-4o, Llama, Jamba, Sonnet, dan Gemini di satu tempat
  • Repositori kode proyek juga disediakan, sehingga materi eksperimen Needle in a Needlestack dapat diperiksa langsung
  • Tulisan per model membandingkan hasil seperti Llama 3.1 8B dan Jamba 1.5, dengan fokus pada pemrosesan konteks panjang dan perbedaan skalabilitas
  • GPT-4o-mini diperkenalkan sebagai contoh yang sebanding dengan GPT-4 Turbo tetapi dengan harga 98,5% lebih rendah, sementara Sonnet 3.5 disebut sebagai contoh yang lebih baik daripada Sonnet 3.0 di NIAN
  • Halaman ini sendiri bersifat open source, sehingga siapa pun dapat berpartisipasi memperbaiki dokumentasi melalui tautan “Improve this page” di GitHub

Tautan terkait Needle in a Needlestack

Tulisan perbandingan per model

Dokumentasi open source

  • Situs ini bersifat open source
  • Halaman dapat diedit di GitHub melalui tautan Improve this page

2 komentar

 
wedding 2024-05-18

Kemajuan teknologinya benar-benar luar biasa.. terisak

 
GN⁺ 2024-05-15
Komentar Hacker News
  • Tes ini didasarkan pada dataset limerick yang dipublikasikan pada 2021: https://zenodo.org/records/5722527
    Saya rasa sangat besar kemungkinan GPT-4o dilatih dengan data ini. Tidak ada alasan khusus untuk tidak memasukkannya. Saya penasaran kenapa tim NIAN tidak menghasilkan limerick dengan beberapa model lalu memeriksa apakah hasilnya tidak ada di dataset. Dengan begitu, kemungkinan model-model tersebut dilatih menggunakan limerick itu bisa dikesampingkan

    • Mereka menguji apakah LLM tidak bisa menjawab pertanyaan jika limerick-nya tidak diberikan. Selain 4o, performanya sangat buruk di benchmark ini, jadi saya tidak menganggap tesnya menjadi tidak valid hanya karena kemungkinan ada di data latih
    • Kenapa tidak membuat saja teks acak sepenuhnya lalu menyuruh model mencarinya di dalam sana?
    • NIAN adalah ide yang sangat keren, tapi kenapa tidak cukup diterjemahkan ke N bahasa berbeda lalu ditanyakan? Bisa juga mencampur DeepL, Google Translate, terjemahan bawaan LLM, dan sebagainya
  • Saya membandingkan dua dokumen hukum kecil, dan model itu benar-benar berhalusinasi bahwa ada klausul yang ada di satu dokumen tapi tidak ada di dokumen lain. Itu terjadi di tiga bagian berbeda dari kontrak
    Setelah saya cek dengan ctrl-f, klausul itu ternyata ada sama persis di kedua dokumen. Memang cuma satu sampel, tapi angka 90% itu tidak terasa masuk akal. Totalnya kira-kira sekitar 80 ribu token

    • Perasaan saya juga mirip. Saya memintanya mencari duplikasi dalam daftar berisi 6.000 item, dan ia hampir berhalusinasi berulang kali di seluruh jawabannya. Kadang memang menemukan beberapa duplikasi, tapi di antaranya ia menyelipkan item-item yang dihalusinasikan
      Saya memang tidak berharap jawaban benar karena menurut saya ini tugas yang sulit untuk jumlah attention head yang tetap, tapi hasilnya terlihat jauh lebih buruk dibanding Claude Opus atau GPT-4
    • Itu bukan mencari jarum di tumpukan jerami
      LLM lebih baik dalam tugas ini jika dua dokumen dipecah menjadi bagian-bagian kecil lalu diproses berulang per bagian. Mereka tidak punya kemampuan penalaran atau memori untuk menganalisis secara struktural dua blok teks yang melampaui potongan yang relatif kecil. Sebaliknya, jika ditelusuri secara bertahap dalam potongan kecil yang relevan dan mandiri secara semantik, hasilnya bisa bekerja cukup baik
      Salah kalau menganggap mereka mesin ajaib. Mereka punya batasan dan kemampuan, dan seperti alat lain, kita perlu memahami apa yang bisa dan tidak bisa dilakukan, dan sebaiknya tahu alasannya juga. Bagi 99,9% developer ini masih perkembangan yang cukup baru, jadi saya tidak paham kenapa ekspektasinya seolah nyaris tak terbatas. Teknologi sebelumnya biasanya dinilai dengan standar yang lebih masuk akal, seperti “oke, mari cari cara memakainya dengan benar.” Mungkin karena mereka berbicara seperti manusia, jadi terlihat seolah punya kemampuan yang sebenarnya tidak ada, atau karena suaranya terlalu mirip manusia sehingga orang justru menyalahkannya karena bukan manusia. Ada sikap berlebihan dan meremehkan sekaligus. Bahkan XML dulu pernah melewati siklus hype serupa, seolah-olah akan mengakhiri kelaparan dunia
    • Itu memang tes yang berbeda dari needle-in-a-needlestack, tapi tetap menunjukkan betapa rapuhnya model-model ini. Di beberapa area mereka kompeten, tapi di area lain hasilnya sangat buruk
      needle-in-a-needlestack adalah masalah menemukan data tertentu di antara data-data yang mirip, berbeda dengan needle-in-a-haystack yang mencari sesuatu di antara hal-hal yang berbeda. Misalnya, mencari satu limerick di antara ribuan limerick
    • Saya pernah melakukan eksperimen serupa dengan peraturan daerah, dan menemukan GPT berhalusinasi tentang denda dan biaya. Itu memang masalah nyata
    • Menarik, tapi setidaknya secara resmi context window GPT-4o adalah 128k
  • Tes needle-in-a-haystack hanya menunjukkan kemampuan pemrosesan konteks panjang model secara sangat terbatas. Tes ini banyak dipakai terutama karena model-model awal sangat buruk dalam tugas ini dan pengujiannya mudah
    Faktanya, kebanyakan model terbaru cukup bagus untuk satu tugas ini, tetapi dalam praktik nyata kemampuan mereka untuk mengerjakan hal kompleks di atas 32K token menurun drastis. RULER adalah tes yang jauh lebih baik: https://github.com/hsiehjackson/RULER

    Meskipun mencapai performa yang nyaris sempurna pada tes dasar needle-in-a-haystack (NIAH), semua model (kecuali Gemini-1.5-pro) menunjukkan penurunan performa yang besar pada tugas-tugas RULER seiring bertambahnya panjang sekuens
    Semua model mengklaim ukuran konteks lebih dari 32k token (kecuali Llama3), tetapi hanya setengahnya yang melampaui performa 4K milik Llama2-7b (85,6%) sebagai standar kualitatif untuk secara efektif menangani panjang sekuens 32K. Performa yang melampaui standar ditandai dengan garis bawah

    • Mungkin saja, tapi pertama, tulisan ini membahas varian tes buatannya sendiri, bukan NIHS, jadi mungkin lebih relevan. Kedua, klaim utama tulisan ini adalah bahwa GPT-4o bekerja lebih baik, sementara tes yang Anda sebutkan tidak membenchmark GPT-4o
    • Model-model yang dibenchmark oleh RULER tampil lebih buruk pada needle-in-a-needlestack. Saya penasaran bagaimana hasil 4o di RULER
  • Ingin melihat ini juga di Gemini Pro 1.5. Minggu lalu saya mencoba memasukkan seluruh Moby Dick, dan pada kesempatan lain saya memasukkan semua buku karya Byung Chul-Han; dalam kedua kasus itu, model selalu bisa menemukan persis bagian kalimat yang menyebut atau menjawab pertanyaan saya, tanpa halusinasi

    • Beberapa orang di lab sedang meneliti evaluasi konteks panjang LLM terhadap karya fiksi. Moby Dick sangat mungkin ada di data pelatihan. Karena itu, orang-orang di lab telah menelusuri buku-buku yang terbit baru-baru ini untuk menghindari masalah seperti ini
      Bisa merujuk ke BooookScore yang dipresentasikan minggu lalu di ICLR(https://openreview.net/forum?id=7Ttk3RzDeu) dan preprint terbaru FABLES(https://arxiv.org/abs/2404.01261)
    • Bukankah isinya kemungkinan ada di set pelatihan? Akan menarik kalau tugas yang sama dilakukan dengan kumpulan buku yang terbit setelah rilis terakhir model itu
    • Saya mencoba memasukkan 2.500 contoh yang ditautkan di tulisan itu ke Gemini 1.5 Flash, dan model menjawab benar dengan “The tree has diseased leaves and its bark is peeling.”: https://aistudio.google.com/
    • Saya punya akses ke model itu, dan pernah melihat ekstraksi konteks yang mengesankan. Saya memasukkan seluruh codebase besar dan model itu juga merangkumnya dengan sangat baik
      Saya juga melihat seseorang menganalisis file log raksasa dengannya, tetapi untuk mengidentifikasi titik saat model mulai melewatkan sesuatu, hal seperti needle-in-a-needlestack ini benar-benar diperlukan. Setidaknya ini bisa dipakai pengembang model untuk menganalisis model yang diusulkan
    • Dalam 2~5 tahun lagi, sepertinya kita bisa memasukkan ePub lalu mendapatkan versi graphic novel yang akurat dalam hitungan menit. Saya siap melihat 4.000 gambar pohon ala Tolkien
  • Seseorang perlu membuat tes “sintesis di dalam haystack” yang menguji kedalaman pemahaman, koneksi, dan abstraksi di antara beragam informasi, bukan sekadar pencarian
    Saat manusia membaca buku, kita membentuk semacam “intuisi menyeluruh” tentang buku itu. Kita perlu cara untuk mengukurnya. Tes needle-in-haystack terasa terlalu sederhana dan seperti tidak melangkah cukup jauh

    • Sepertinya bisa dibuat model mencari pelaku ala Agatha Christie yang rumit. Misalnya dengan menaruh beberapa twist dan alibi, lalu memotong bagian akhir karya sehingga tersangka paling mungkin berubah
    • Bisa juga dibuat sehingga jarum-jarumnya membentuk graf, dan prompt menanyakan tugas berbasis graf
    • Ada ide untuk membeli novel atau naskah yang belum dipublikasikan dengan dunia yang detail dan konsisten secara internal serta karakter dengan motivasi yang dirancang baik, lalu menyuruh model terus menulis alur baru yang menghubungkan dua tokoh yang belum pernah bertemu mulai dari titik acak setelah pertengahan cerita
      Jika model memahami konteksnya, seharusnya ia bisa menulis bagian baru dari cerita dan mengembangkan narasi mereka dengan memakai motivasi karakter yang terasa intuitif bagi pembaca. Namun, agar berguna, seluruhnya harus disimpan benar-benar tertutup, jadi ini paling cocok sebagai benchmark pribadi. Atau, alih-alih membuka metodologinya untuk membantu perbaikan bidang ini, bisa juga dijadikan semacam penghargaan bergengsi yang dinilai dari reliabilitas kesimpulannya sendiri
    • Saya punya gagasan serupa. Sebagian pertanyaan dibuat agar memberi cukup informasi bagi LLM untuk menemukan limerick-nya, lalu bagian kedua menanyakan sesuatu yang membutuhkan pemahaman lebih dalam tentang limerick itu atau teks lain
    • Pemahaman itu tidak ada, jadi hal seperti itu tidak bisa dilakukan
      Bahkan GPT-4o masih belum bisa menangani titik perpotongan dua ide berbeda yang tidak ada di set pelatihan. Bahkan ia tidak bisa membuat variasi acak atas titik perpotongan dua ide berbeda. Lebih jauh lagi, kita tidak seharusnya mengharapkan model melakukan hal seperti ini. Itu tidak adil terhadap model, terhadap kegunaan nyata, maupun terhadap hal-hal menakjubkan yang bisa dilakukan tanpa pemahaman. Percaya bahwa model benar-benar memahami hanyalah menipu diri sendiri
  • Sekarang kita bisa memakai GPT untuk mengubah data dinamis mentah menjadi layout HTML yang enak dilihat secara langsung. Ini bisa sangat menghemat waktu pengembangan pada halaman seperti changelog atau audit log dengan trafik rendah, sekaligus menjaga HTML tetap mutakhir saat struktur data berubah
    Percobaan sebelumnya tidak bekerja konsisten karena GPT-4-Turbo kadang hampir sepenuhnya mengabaikan konteks dan instruksi

  • Tulisan ini menunjukkan betapa jauh lebih baik kemampuan GPT-4o dalam memperhatikan seluruh jendela input dibanding GPT-4 Turbo dan Claude-3 Sonnet
    Sudah lama needle-in-a-haystack perlu ditingkatkan, dan “Needle In A Needlestack” ini adalah langkah berikutnya yang bagus. NIAN membuat prompt yang berisi ribuan limerick, lalu mengajukan pertanyaan tentang limerick pada posisi tertentu

    • Setuju. Saya sempat membayar Claude cukup lama. Mereka sangat gencar mengatakan mendukung konteks besar, dan ketika dipakai memang memakan token sangat banyak, tetapi kalau ada source code bahkan hanya beberapa halaman sebelumnya di konteks, model itu hampir tidak berguna
      Yang lebih membuat frustrasi, di aspek lain semuanya oke dan saya juga suka nuansanya. Tadi malam saya mencoba 4o, dan model itu masih mengenali dengan sempurna kelas C++ yang saya tempel 20 pertanyaan sebelumnya. Saya tidak peduli apakah model itu pintar; yang penting apakah berguna, dan ini benar-benar berkontribusi besar pada kegunaan
  • Saya makin yakin bahwa di internet publik tidak ada yang benar-benar tahu cara melakukan evaluasi LLM yang layak

    • Meski begitu, tetap melegakan bahwa kita akhirnya sudah melewati evaluasi LLM ala 2022~2023 yang semuanya seperti “siapa presiden Amerika Serikat ke-29” atau “gambar dengan gaya Van Gogh”
  • Agar tes ini bermakna, kita harus tahu bahwa data set pengujian tidak termasuk dalam data pelatihan

    • Jika pertanyaannya diajukan tanpa lebih dulu memberikan limerick-nya, model itu sama sekali tidak akan menjawab benar. Saat LLM salah, biasanya ia kembali ke data pelatihan dan memberi jawaban umum yang tidak cocok dengan limerick tersebut
    • Tidak harus begitu. Cukup bandingkan kinerja model sebelum dan sesudah materi diunggah
    • Saya kira limerick uji itu dibuat secara otomatis
  • Terdengar bagus. Masalah terbesar GPT-4.0 adalah kualitasnya menurun saat percakapan makin panjang, dan itu sangat penting terutama dalam proyek coding
    Saya penasaran apakah sekarang sudah membaik. Saya akan mengujinya hari ini

    • Sejauh ini pengalaman saya juga begitu. Percakapan sekarang jadi jauh lebih panjang dibanding percakapan GPT-4 sebelumnya. Dulu saya sering harus menyalin konteks dan memulai ulang di chat baru
    • Pengalaman saya juga sama. Pada prompt 16k, Turbo nyaris sempurna, tetapi di 32k hasilnya kurang bagus, dan di atas 100k sudah tidak bisa dipakai. Untuk mendapat hasil baik pada prompt panjang, informasinya harus diulang-ulang