Dalam ranah LLM, "open source" digunakan sebagai istilah yang berarti "bobot yang dapat diunduh".
(web.archive.org)- LLaMA2 tidak memenuhi definisi tradisional open source karena ada pembatasan pada penggunaan komersial dan pemanfaatan output model, tetapi di ranah model AI, konsep open source itu sendiri perlu berevolusi kembali
- Terdapat pembatasan yang bertentangan dengan semangat OSS seperti larangan penggunaan komersial untuk layanan dengan lebih dari 700M MAU pada saat peluncuran, serta larangan menggunakan output model untuk melatih LLM lain
- Seperti makna yang berubah dalam sejarah perangkat lunak dari "free software" → "open source" → "source available", di AI pun "open source" lazim digunakan dengan arti bobot yang dapat diunduh
- Tingkat keterbukaan model dibagi menjadi Open models, Open weights, Restricted weights, dan Contaminated weights, dan LLaMA2 termasuk dalam kategori Restricted weights
- Open source yang sepenuhnya lengkap dan bisa dilatih ulang dari awal tidak realistis karena masalah biaya, dan keputusan Meta membuka komputasi senilai sekitar $2M memberi dampak positif bersih bagi kemajuan bidang ini
Kontroversi istilah "open source" pada LLaMA2
- Saat LLaMA2 dirilis, banyak tokoh komunitas OSS mengeluhkan penggunaan istilah "open source" yang keliru untuk model tersebut
- Model ini pada umumnya cukup terbuka, tetapi memiliki pembatasan yang jelas
- Operator dengan MAU lebih dari 700M per tanggal rilis tidak boleh menggunakan model ini secara komersial
- Output model tidak boleh digunakan untuk melatih large language model lain
- Pembatasan seperti ini tidak sejalan dengan semangat open source (OSS ethos), sehingga tidak dapat disebut open source dalam arti tradisional
- Namun, pandangannya adalah bahwa hal itu tidak terlalu penting, dan di era model AI istilah "open source" memang perlu berevolusi lagi
From Free to Open — dari "kebebasan" ke "keterbukaan"
- Sejak "Open Letter to Hobbyists" pada 1976, selalu ada ketegangan antara kepentingan komersial perusahaan perangkat lunak dan rasa ingin tahu para hacker yang ingin menghindari berbagai pembatasan
- Gerakan "free software" dimulai bersama Richard Stallman di MIT AI Lab pada 1970-an, lalu berlanjut ke proyek GNU pada 1983
- Lahir lisensi GPL "copyleft", yang kemudian diadopsi oleh Red Hat, MySQL, Git, dan Ubuntu
- Istilah "open source" muncul pada 1998 berkat Christine Peterson dari MIT
- Dalam "Freeware Summit", istilah "free software" resmi ditinggalkan dan digantikan dengan "open source software"
- Setelah itu, komunitas "free" dan "open source" terpecah karena perbedaan penafsiran makna
- Free Software Foundation mendefinisikan free software sebagai himpunan bagian dari open source, dengan penggunaan lisensi yang sangat permisif seperti GPL dan Apache
- Dalam 10 tahun terakhir, ketegangan antara perusahaan open source komersial dan hyperscaler cloud memicu perpecahan lagi
- Elastic dan MongoDB beralih ke SSPL (Server-Side Public License), yang mengizinkan penggunaan komersial selama tidak menawarkan versi hosting
- Tujuannya adalah mencegah AWS me-rehost produk itu sebagai layanan cloud untuk menghasilkan keuntungan
- SSPL melanggar prinsip OSS dan tidak diakui OSI sebagai lisensi open source
- Meski begitu, banyak developer masih menyebut MongoDB sebagai open source
- "open source" secara bertahap kehilangan nuansa makna kebebasan (freedom) dan dalam persepsi developer berubah menjadi hampir sinonim dengan "source available"
From Source to Weights — dari "source" ke "weights"
- Dengan munculnya open model seperti Dolly, MPT, dan LLaMA, perpecahan serupa juga terjadi di komunitas
- Bagi sebagian besar engineer AI saat ini, "open source" tidak lebih dan tidak kurang dari bobot yang dapat diunduh (downloadable weights)
- Heather Meeker telah mengusulkan definisi "open weights", tetapi belum ada konsensus komunitas
- Isu intinya adalah apakah open weights saja sudah cukup untuk menyebut model sebagai open source
- Jika dianalogikan ke perangkat lunak, ini seperti hanya membuka binary tanpa source code untuk membangun ulang dari awal
- Agar benar-benar menjadi open source yang bisa dilatih ulang dari awal, perlu dibuka seluruh kode pelatihan, dataset pretraining, data preferensi fine-tuning, hingga contoh RLHF
- Masalahnya adalah biaya pelatihan, dan bahkan jika semuanya dibuka, bagi kebanyakan developer dan perusahaan pelatihan dari nol tetap tidak layak secara biaya
- Pada akhirnya, akses ke bobot akhir saja pun tetap lebih disukai
Klasifikasi 4 tingkat keterbukaan model
- Open models: seperti RedPajama dan MPT-7B, menyediakan open weights yang dapat digunakan secara komersial di bawah lisensi Apache 2.0
- Dataset-nya juga open source sehingga bisa dilatih ulang dari awal
- Open weights: seperti StableLM yang dilatih StabilityAI, bobotnya dibuka dengan Apache 2.0 tetapi dataset pelatihannya tidak dipublikasikan
- Menurut README, model ini dipretrain di atas dataset eksperimental baru yang dibangun dari The Pile, dengan skala sekitar 1.5T token, kira-kira 3 kali lebih besar
- Restricted weights: seperti LLaMA2, dataset pretraining-nya tidak dipublikasikan, dan meski bobotnya dikatakan dapat digunakan secara komersial, tetap ada pembatasan tertentu seperti yang disebut sebelumnya
- Contaminated weights: seperti Dolly 1.0 dan LLaMA1, bobotnya memang dibuka, tetapi dataset pelatihannya tidak mengizinkan penggunaan komersial sehingga secara teknis terbuka namun secara praktis tidak bisa digunakan
Penutup — arah keterbukaan
- Untuk sementara, open source dan open weights akan terus dipakai secara bergantian, dan itu dianggap tidak masalah
- Yang penting adalah pekerjaan ini dilakukan semakin terbuka mungkin (as openly as possible)
- Wajar jika orang merasa kecewa dengan lisensi LLaMA2, tetapi keputusan Meta membuka sekitar $2M nilai FLOPS ke dalam repositori GitHub adalah dampak positif bersih bagi kemajuan bidang ini
1 komentar
Komentar Hacker News
Aneh rasanya menempatkan LLaMA ke dalam kategori bobot terbatas tepat di atas tulisan, lalu mengatakan bahwa ke depan open source dan bobot terbuka akan dipakai secara bergantian
Bahkan menurut definisi yang diajukan penulis, LLaMA 2.0 bukan open source, dan tidak seharusnya disebut begitu
Jika di ranah LLM open source berarti “bobotnya bisa diunduh” dan pembatasan penggunaan tidak dianggap penting, maka itu bukan sekadar pergeseran istilah sesuai konteks baru, melainkan lebih dekat ke pengerdilan makna Open Source
LLaMA bahkan bukan bobot terbuka; paling banter ia adalah bundel bobot proprietari tertutup yang hanya bisa dibandingkan dengan perangkat lunak source-available
Facebook menyebut LLaMA sebagai open source itu menyesatkan, dan kita tidak seharusnya mengikuti narasi itu
Soal apakah bobot sendiri bisa dikenai hak cipta adalah pembahasan terpisah, dan secara pribadi saya rasa tidak bisa
Hanya saja, kebanyakan orang tidak benar-benar paham, jadi mereka akan terus menyebutnya “open source”, dan inti tulisan saya adalah bahwa itu sulit diperbaiki
Daripada hanya mengatakan “ini bukan open source”, kita perlu menciptakan istilah yang lebih baik
Selain itu, meskipun penggunaan bobotnya dibatasi, skala investasi komputasi yang diungkapkan tetap sangat besar. Rasio token pelatihan terhadap parameter adalah 285:1, dan dari grafik loss terlihat bahwa modelnya masih belum jenuh
Itu informasi yang berharga bagi tim lain yang ingin melatih model mereka sendiri
LLaMA1 memang sangat terbatas, tetapi komposisi data dalam makalahnya melahirkan RedPajama, dan itu dipakai untuk melatih MPT
Meski tidak cocok dengan label tradisional, masih ada banyak nilai yang bisa mengalir ke open source dari pekerjaan seperti ini
Saya tidak tahu bahwa lisensi llama melarang output-nya dipakai untuk melatih model lain
Ini pada dasarnya adalah batasan yang fatal. Ke depan, data sintetis akan menjadi data pelatihan yang paling penting, jadi model yang melarang penggunaan data sintetis untuk melatih model baru adalah model yang sangat cacat
Melatih model dengan data internet sembarangan tanpa izin atau lisensi itu boleh hanya karena datanya bisa diakses, tetapi melatih model lain dengan model kami tidak boleh
Premis hukum model-model ini adalah bahwa melatih dengan materi berhak cipta merupakan fair use
Kalau tidak, apakah Facebook ingin berargumen bahwa memasukkan materi berhak cipta ke dalam dataset tanpa memedulikan keinginan pencipta hak cipta itu bukan fair use? Kalau begitu, itu kabar buruk bagi LLaMA
Sikap “untuk melatih dengan ini Anda perlu izin” adalah posisi hukum yang menarik jika diambil oleh perusahaan AI mana pun
“Kami melatih dengan sebagian besar internet tanpa izin, tetapi jangan sekali-kali bermimpi melatih dengan output model kami tanpa izin kami!” begitu maksudnya
OpenAI juga memasang pembatasan serupa
Anda tidak bisa melatih model lain dengan output model begitu saja, karena itu akan berujung pada omong kosong total. Ini disebut model collapse: https://arxiv.org/abs/2305.17493v2
Dan lisensi Llama 2 memang mengizinkan pengguna melatih model turunan. Bagian yang benar-benar dipedulikan orang adalah yang ini: https://github.com/facebookresearch/llama/blob/main/LICENSE
Ini bukan masalah baru. Konsep Open Source yang ketat dan didefinisikan untuk perangkat lunak memang tidak pernah benar-benar pas diterapkan pada hal yang bukan perangkat lunak
Karena itulah ada lisensi Creative Commons. Mendistribusikan foto dengan GPL2 sejak awal memang tidak masuk akal
Di media baru, redefinisi memang selalu diperlukan
GPL mendefinisikan source code sebagai bentuk yang paling disukai untuk melakukan modifikasi, dan juga mencakup skrip untuk membuat executable dari source
Dalam kasus ini, bobot lebih mirip kode eksekusi yang sudah dioptimalkan hasil dari alur pemrosesan, sedangkan “source”-nya adalah data pelatihan serta kode dan prosedur untuk mengubahnya menjadi model
Pada LLM yang sangat besar mungkin nyaris tak ada yang bisa memanfaatkannya, tetapi pada model akademik kecil ini tetap bermakna karena para peneliti bisa membangun di atas pekerjaan satu sama lain
Source untuk model bahasa sebenarnya lebih dekat ke kode yang dipakai untuk melatih model tertentu, sementara modelnya sendiri, meski bukan machine code, lebih dekat ke binary yang sudah dikompilasi
Jadi menurut saya, agar sebuah model benar-benar open source, perangkat lunak yang dipakai untuk membuatnya harus dirilis sehingga saya bisa memodifikasinya dan melatihnya dengan data saya sendiri untuk digunakan
Belum ada kepastian di pengadilan apakah bobot termasuk objek hak cipta, dan tergantung hasilnya, berbagai lisensi dan pembatasan bisa saja menjadi tidak berarti
“Para seniman, model hanya belajar seperti manusia, jadi tidak mungkin melanggar hak cipta kalian. Kalau kebetulan mencetak sebagian isi buku, itu cuma plagiarisme yang tidak sengaja. Kita semua juga begitu kan haha! Para pengacara mengingatkan kita bahwa plagiarisme tidak ilegal di AS.”
“Para engineer, output model kami dilindungi hak cipta, jadi kalau kalian melatih model kalian sendiri dengan itu, maka itu milik kami.”
Saya tidak paham bagaimana keduanya bisa benar pada saat yang sama
Paling jauh itu hanya klausul kontrak yang mengikat pengguna tertentu, dan orang yang nanti memakai model hasil peningkatan itu tampaknya tidak bermasalah
Hanya saja sulit membayangkan apakah dunia seperti itu benar-benar mungkin
Akan bagus jika ada ringkasan mengapa bobot mungkin bukan objek hak cipta, atau referensi yang mendukung sudut pandang itu
Perlu diingat bahwa apa yang termasuk dan tidak termasuk objek hak cipta bisa berubah
GPL sudah teruji lewat kasus FSF v. Cisco (2008), tetapi lisensi yang lebih restriktif belum teruji
Masalahnya adalah sudah ada model besar seperti MPT-30b atau Falcon-40b yang mengadopsi lisensi open source yang benar-benar nyata
Saya berterima kasih karena bisa mengakses bobot Llama2, tetapi terasa tidak adil jika Llama2 mengambil kredit sebagai “open source” padahal sudah ada model pesaing yang benar-benar open source dalam arti OSI tradisional
Perbedaan praktis antar lisensi cukup kecil sehingga kebanyakan orang, termasuk saya, kemungkinan tetap akan memilih Llama2 yang kualitas modelnya lebih baik
Namun insentif seperti itu pada akhirnya bisa membuat kita terjebak dalam lisensi semi-terbuka yang canggung
Istilah source available sudah ada, jadi saya tidak mengerti mengapa istilah “open source” harus berevolusi
Dalam kasus ini, cukup katakan “bobot yang disediakan dengan lisensi yang minim pembatasan”
Diagram dalam tulisan ini sangat keliru karena menampilkan hanya GPL sebagai free software, sementara MIT/Apache tampak seolah open source tetapi bukan free software
Pihak FSF memang tidak menyukai istilah “open source”, tetapi bahkan mereka pun mengatakan bahwa “hampir semua perangkat lunak open source adalah free software”
Secara khusus, lisensi MIT, Apache, dan LGPL jelas merupakan lisensi free software. Jika tidak, perangkat lunak yang bisa dipilih distro Debian atau distribusi yang disetujui FSF akan jauh lebih sedikit
Kemungkinan yang ingin dibedakan diagram itu adalah copyleft versus free software atau open source
Jika diurutkan dari sudut pandang tingkat permisif, hubungan subset-nya juga seharusnya terbalik. GPL jauh lebih permisif daripada SSPL dan sejenisnya, tetapi kurang permisif dibanding MIT/Apache
Perbedaannya bukan teknis, melainkan politis
Bagian tulisan ini juga cukup menyesatkan: “free software sebagaimana didefinisikan oleh Free Software Foundation hanyalah subset dari perangkat lunak open source, dan menggunakan lisensi yang sangat permisif seperti GPL dan Apache”
Dalam diagram itu, secara teoretis seharusnya ada kategori lain yang berada di luar “Restricted Weights” tetapi masih lebih sempit daripada keseluruhan “Completely Closed”
Misalnya bobot dan model black box, yang bisa dipakai gratis tetapi pada praktiknya tidak bisa diperiksa atau dipindahkan
Ini setara dengan kategori saudara dari perangkat lunak closed source yang “gratis digunakan”
AI yang gratis dipakai tetapi diberikan hanya sebagai blob biner cocok masuk kategori ini
Atau modul Python yang memanggil mesin inferensi dan bobot dalam bentuk biner prapilasi tanpa source juga termasuk
Padanan tradisionalnya di dunia software saat ini adalah driver Linux pihak ketiga yang bukan open source. Gratis, tetapi tidak terbuka
Di dunia AI saya belum banyak melihat hal seperti ini. Pihak yang merilis bobot biasanya melakukannya untuk tujuan riset sehingga inferensinya juga sering harus open source, sedangkan pihak yang punya model tertutup ingin menghasilkan uang sehingga tidak ada alasan membuka sisi inferensi dan cukup menagih biaya API saja, misalnya seperti “OpenAI”
Judulnya telah diedit. Judul aslinya adalah “LLaMA2 isn't "Open Source" - and why it doesn't matter”
Judul itu diubah dengan nuansa yang cukup berbeda, dan saya merasa penulis serta penerbit mungkin punya pandangan berbeda tentang makna open source
Karena Open Source sudah lama mengakar dalam budaya teknis, penyimpangan dari sana selama ini cenderung mendapat ejekan
Belakangan ini komunitas tampaknya menjadi lebih toleran terhadap lisensi “terbuka” seperti ini
Kritikan terhadap proyek yang tidak memenuhi standar FOSS memang sering berlebihan, tetapi saya berharap kita tidak terlalu cepat bergeser ke arah “open” seperti ini
Ada tulisan lain tentang LLaMa2: https://opensourceconnections.com/blog/2023/07/19/is-llama-2...