Rumah > Artikel > Peranti teknologi > Google tidak membuka sumber PaLM, tetapi netizen membuka sumbernya! Versi miniatur ratusan bilion parameter: maksimum hanya 1 bilion, konteks 8k
PaLM, yang Google tidak mempunyai sumber terbuka, telah menjadi sumber terbuka oleh netizen.
Semalam, pembangun sumber terbuka tiga versi miniatur model PaLM pada GitHub: parameter ialah 150 juta (PalM-150m), 410 juta (PalM-410m) dan 1 bilion (PalM -1b).
Alamat projek: https://github.com/conceptofmind/PaLM
Ketiga-tiga model ini telah dilatih pada set data Google C4 dengan panjang konteks 8k. Pada masa hadapan, model dengan 2 bilion parameter sedang dilatih.
Set Data Google C4
Contoh yang dijana menggunakan model 410 juta parameter:
Anjing saya sangat comel, tetapi tidak begitu pandai bergaul dengan anjing lain Anjing itu suka semua orang baru dan dia suka bergaul dengan orang lain anjing . Saya perlu membawanya ke taman dengan anjing lain. Dia mempunyai nafas berbau, tetapi ia hanya apabila dia lari ke arah yang dia tidak mahu pergi nakal. Dia ingin menyapanya di taman, tetapi lebih suka menjaga dirinya untuk sementara waktu beberapa sakit menggigit di sekitar mulutnya. Anjing itu sangat pemalu dan takut. Anjing itu sangat suka bermain dan mereka sedikit manja suka mainannya dan hanya mahu bermain dia bermain dengan mainannya sepanjang masa dan juga berjalan-jalan Dia agak cerewet, tidak begitu baik dengan anjing lain ialah anjing yang sangat mesra. Anjing ini suka semua orang baru dan dia suka bermain dengan anjing lain. Saya perlu membawanya ke taman bersama anjing lain. Dia mempunyai sedikit nafas anjing, tetapi hanya apabila dia berlari ke arah yang dia tidak mahu pergi. Sekarang anjing saya sangat nakal. Dia ingin bertanya khabar di taman, tetapi lebih suka menjaga dirinya untuk seketika. Dia juga mempunyai nafas berbau. Sudah tiga bulan saya terpaksa membelikan dia pendakap mulut. Anjing itu mempunyai beberapa kesan gigitan sakit di sekitar mulutnya. Anjing ini sangat pemalu dan takut. Anjing ini sangat suka bermain dan mereka agak manja. Saya tidak pasti sama ada ia salah anjing atau adakah dia hanya manja. Dia suka mainannya dan hanya mahu bermain dengannya. Dia sentiasa bermain dengan mainannya dan juga pergi berjalan-jalan. Dia agak cerewet dan tidak bergaul dengan anjing lain. Anjing itu hanyalah seekor anak anjing yang pergi ke taman. Dia adalah anjing yang sangat mesra. Dia tidak lagi mengalami masalah nafas berbau.
Walaupun parameternya memang agak kecil, kesan yang dihasilkan masih agak sukar untuk digambarkan...Model ini serasi dengan banyak model popular Repositori Lucidrain, seperti Toolformer-pytorch , PalM-rlhf-pytorch dan PalM-pytorch.
Tiga model sumber terbuka terbaharu ialah model garis dasar dan akan dilatih pada set data berskala lebih besar.
Semua model akan dilaraskan selanjutnya dengan arahan pada FLAN untuk menyediakan model flan-PaLM.
Model PaLM sumber terbuka dilatih melalui Flash Attention, Xpos Rotary Embeddings, dengan itu mencapai ekstrapolasi panjang yang lebih baik dan menggunakan mekanisme daya perhatian nilai kunci tunggal berbilang pertanyaan untuk penyahkodan yang lebih cekap.
Dari segi algoritma pengoptimuman, pereputan berat yang dipisahkan Adam W digunakan, tetapi anda juga boleh memilih untuk menggunakan Stable Adam W Mitchell Wortsman.Pada masa ini, model telah dimuat naik ke hab Torch dan fail juga disimpan dalam hab Huggingface.
Jika model tidak boleh dimuat turun dengan betul dari hab Obor, pastikan anda mengosongkan pusat pemeriksaan dan folder model dalam .cache/torch/hub/ . Jika isu itu masih tidak diselesaikan, maka anda boleh memuat turun fail daripada repositori Huggingface. Pada masa ini, penyepaduan Huggingface sedang dijalankan. Semua data latihan telah dilabelkan terlebih dahulu dengan penanda GPTNEOX dan panjang jujukan dipotong kepada 8192. Ini akan membantu menjimatkan kos yang ketara dalam prapemprosesan data. Data data ini telah disimpan pada Huggingface dalam format parket, anda boleh mencari ketulan data individu di sini: C4 Chunk 1, C4 Chunk 2, C4 Chunk 3, C4 Chunk 4 dan C4 Bongkah 5. Terdapat pilihan lain dalam skrip latihan yang diedarkan untuk tidak menggunakan set data C4 pra-label yang disediakan, tetapi untuk memuatkan dan memproses set data lain seperti openwebtext. Terdapat gelombang pemasangan yang diperlukan sebelum cuba menjalankan model. Anda boleh melakukan latihan tambahan atau penalaan halus dengan memuatkan model pra-latihan menggunakan hab Torch: Selain itu, anda juga boleh memuatkan terus pusat pemeriksaan model PyTorch melalui kaedah berikut: Untuk menggunakan model untuk menjana teks, anda boleh menggunakan baris arahan: prompt - Prompt untuk menjana teks. seq_len - panjang jujukan teks yang dijana, nilai lalai ialah 256. suhu - suhu pensampelan, lalai ialah 0.8 filter_thres - ambang penapis digunakan untuk pensampelan. Nilai lalai ialah 0.9. model - model yang digunakan untuk penjanaan. Terdapat tiga parameter berbeza (150m, 410m, 1b): palm_150m_8k_v0, palm_410m_8k_v0, palm_1b_8k_v0. Untuk meningkatkan prestasi, penaakulan menggunakan torch.compile(), Flash Attention dan Hidet. Jika anda ingin melanjutkan penjanaan dengan menambahkan pemprosesan strim atau fungsi lain, pengarang menyediakan skrip inferens umum "inference.py". Model "sumber terbuka Palm" ini dilatih pada 64 A100 (80GB) GPU. Bagi memudahkan latihan model, penulis turut menyediakan skrip latihan yang diedarkan train_distributed.py. Anda boleh menukar lapisan model dan konfigurasi hiperparameter secara bebas untuk memenuhi keperluan perkakasan, dan anda juga boleh memuatkan pemberat model dan menukar skrip latihan untuk memperhalusi model. Akhir sekali, penulis menyatakan bahawa dia akan menambah skrip penalaan halus khusus dan meneroka LoRA pada masa hadapan. boleh dijana dengan menjalankan skrip build_dataset.py, serupa dengan C4 yang digunakan semasa latihan Cara Set Data untuk mempraproses set data yang berbeza. Ini akan pra-label data, membahagikannya kepada ketulan panjang jujukan yang ditentukan dan memuat naiknya ke hab Huggingface. Contohnya: Pada April 2022, Google secara rasmi mengumumkan 540 bilion untuk yang pertama Parameter masa PaLM. Seperti LLM lain, PaLM boleh melaksanakan pelbagai tugas penjanaan dan penyuntingan teks. PaLM ialah penggunaan sistem Pathways berskala besar pertama Google untuk mengembangkan latihan kepada cip 6144, yang merupakan konfigurasi sistem berasaskan TPU terbesar yang digunakan untuk latihan setakat ini. Keupayaan pemahamannya luar biasa bukan sahaja dapat memahami jenaka, tetapi ia juga boleh menerangkan perkara lucu kepada anda yang tidak faham. Hanya pada pertengahan bulan Mac, Google membuka API model bahasa besar PaLM buat kali pertama. Ini bermakna orang ramai boleh menggunakannya untuk menyelesaikan tugasan seperti meringkaskan teks, menulis kod dan juga melatih PaLM ke dalam sembang seperti ChatGPT Conversational chatbot . Pada persidangan I/O tahunan Google yang akan datang, Pichai akan mengumumkan perkembangan terkini syarikat dalam bidang AI. Dikatakan model bahasa berskala besar terbaru dan tercanggih PaLM 2 akan dilancarkan tidak lama lagi. PaLM 2 merangkumi lebih daripada 100 bahasa dan telah dijalankan di bawah nama kod dalaman "Model Bahasa Bersepadu". Ia juga menjalankan ujian yang meluas dalam pengekodan dan matematik serta penulisan kreatif. Bulan lepas, Google berkata bahawa LLM perubatannya "Med-PalM2" boleh menjawab soalan peperiksaan perubatan dengan ketepatan 85% pada "peringkat doktor pakar". Selain itu, Google juga akan mengeluarkan Bard, bot sembang yang dikuasakan oleh model besar, serta pengalaman carian generatif. Sama ada keluaran AI terbaharu boleh meluruskan belakang Google masih belum dapat dilihat. Pemasangan
<code>git clone https://github.com/conceptofmind/PaLM.gitcd PaLM/pip3 install -r requirements.txt</code>
Menggunakan
<code>model = torch.hub.load("conceptofmind/PaLM", "palm_410m_8k_v0").cuda()</code>
<code>from palm_rlhf_pytorch import PaLMmodel = PaLM(num_tokens=50304, dim=1024, depth=24, dim_head=128, heads=8, flash_attn=True, qk_rmsnorm = False,).cuda()model.load('/palm_410m_8k_v0.pt')</code>
<code>python3 inference.py "My dog is very cute" --seq_len 256 --temperature 0.8 --filter_thres 0.9 --model "palm_410m_8k_v0"</code>
Latihan
Data
<code>python3 build_dataset.py --seed 42 --seq_len 8192 --hf_account "your_hf_account" --tokenizer "EleutherAI/gpt-neox-20b" --dataset_name "EleutherAI/the_pile_deduplicated"</code>
PaLM 2 akan datang
Atas ialah kandungan terperinci Google tidak membuka sumber PaLM, tetapi netizen membuka sumbernya! Versi miniatur ratusan bilion parameter: maksimum hanya 1 bilion, konteks 8k. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!