Rumah >Peranti teknologi >AI >Penyelesaian pengklonan 0-ambang telah dinaik taraf, model sumber terbuka dihasilkan semula sepenuhnya, dan tiada pendaftaran diperlukan untuk pengalaman dalam talian.
Aplikasi AI dan model besar yang diwakili oleh ChatGPT dan GPT4 popular di seluruh dunia dan dianggap sebagai membuka revolusi perindustrian teknologi baharu dan titik permulaan baharu untuk AGI (Kecerdasan Am Buatan) . Bukan sahaja gergasi teknologi mengejar antara satu sama lain dan bersaing untuk melancarkan produk baharu, tetapi banyak taikun AI dalam akademik dan industri juga melabur dalam gelombang keusahawanan yang berkaitan. AI Generatif sedang bergerak pantas dalam "hari" dan terus meningkat!
Walau bagaimanapun, OpenAI tidak menjadikannya sumber terbuka Apakah butiran teknikal di belakangnya? Bagaimana dengan cepat mengikuti, mengejar dan mengambil bahagian dalam gelombang teknologi ini? Bagaimana untuk mengurangkan kos tinggi membina dan menggunakan model AI yang besar? Bagaimana untuk melindungi data teras dan harta intelek daripada dibocorkan kerana penggunaan API model besar pihak ketiga?
Sebagai penyelesaian model besar AI sumber terbuka yang paling popular, Colossal-AI ialah yang pertama mewujudkan model yang merangkumi pengumpulan set data diselia -> diselia dengan baik- penalaan -> model ganjaran Latihan -> Proses RLHF lengkap pembelajaran pengukuhan penalaan halus , berdasarkan model pra-latihan LLaMA, dilancarkan ColossalChat, kini merupakan projek sumber terbuka praktikal yang paling hampir kepada penyelesaian teknikal asal ChatGPT!
Alamat sumber terbuka: https://github.com/hpcaitech/ColossalAI
Mengandungi kandungan berikut:
1. Demo: Anda boleh mengalami secara langsung kesan model dalam talian tanpa pendaftaran atau senarai menunggu
2. Kod latihan: Kod latihan RLHF lengkap sumber terbuka, yang telah sumber terbuka untuk memasukkan model 7B dan 13B
3 Set data: Set data dwibahasa Cina dan Inggeris 104K sumber terbuka
4 🎜>Pengaturan inferens: Inferens kuantitatif 4bit 7 bilion model parameter hanya memerlukan 4GB memori video
5Berat model: Hanya satu mesin Pelayan boleh menghasilkan semula dengan cepat dengan jumlah kuasa pengkomputeran yang kecil
6 Model berskala lebih besar, set data, pengoptimuman lain, dsb. akan mengekalkan-tinggi. penambahan lelaran kelajuanModel mampu milik , keupayaan berkuasa
ColossalChat hanya memerlukan kurang daripada 10 bilion parameter dan melakukan penalaan halus RLHF berdasarkan model bahasa yang besar untuk menguasai keupayaan dwibahasa Cina dan Inggeris, mencapai tahap yang serupa dengan Kesan ChatGPT dan GPT-3.5.Contohnya, soal jawab akal:
Jawapan bahasa Cina:
Tulis e-mel:
Tulis algoritma:
Penyelesaian pengklonan ChatGPT lengkap
Walaupun model siri GPT seperti ChatGPT dan GPT-4 sangat berkuasa, ia tidak mungkin menjadi sumber terbuka sepenuhnya. Nasib baik, komuniti sumber terbuka terus bekerja keras.Sebagai contoh, Meta mempunyai model LLaMA sumber terbuka. Bilangan parameter model ini berjulat dari 7 bilion hingga 65 bilion parameter boleh mengatasi model 175 bilion GPT-3 dalam kebanyakan kes prestasi penanda aras. Walau bagaimanapun, kerana ia tidak diarahkan untuk memperhalusi (mengarahkan penalaan), kesan penjanaan sebenar adalah tidak ideal.
Stanford's Alpaca menjana data latihan dengan cara arahan kendiri dengan memanggil OpenAI API, supaya model ringan dengan hanya 7 bilion parameter boleh diperhalusi pada kos yang sangat rendah kesan dialog adalah setanding dengan model bahasa berskala ultra besar dengan ratusan bilion parameter seperti GPT-3.5.
Tetapi Penyelesaian sumber terbuka sedia ada boleh dianggap sebagai hanya mendapat langkah pertama model penalaan halus diselia dalam pembelajaran pengukuhan dengan maklum balas manusia (RLHF) , tiada kerja penjajaran dan penalaan halus seterusnya dilakukan. Pada masa yang sama, set data latihan Alpaca adalah terlalu kecil dan korpusnya hanya dalam bahasa Inggeris, yang juga mengehadkan prestasi model pada tahap tertentu. Kesan menakjubkan ChatGPT dan GPT-4 juga terletak pada pengenalan RLHF ke dalam proses latihan, menjadikan kandungan yang dihasilkan lebih konsisten dengan nilai kemanusiaan. Tiga peringkat RLHF Berdasarkan model LLaMA, Colossal-AI ialah penyelesaian pembiakan model seperti Sembang sumber terbuka ColossalChat yang merangkumi proses RLHF yang lengkap paling hampir dengan yang asal laluan teknikal projek sumber terbuka praktikal ChatGPT! ColossalChat sumber terbuka set data dwibahasa Cina dan Inggeris yang mengandungi kira-kira 100,000 soalan dan jawapan. Set data ini mengumpul dan membersihkan senario penyoalan sebenar orang di platform sosial sebagai set data benih, menggunakan teknologi arahan kendiri untuk mengembangkan data dan menelan belanja kira-kira $900 untuk anotasi. Berbanding dengan set data yang dijana oleh kaedah arahan kendiri yang lain, data benih set data ini lebih nyata dan kaya, dan set data yang dijana merangkumi lebih banyak topik. Data ini boleh digunakan untuk kedua-dua penalaan halus dan latihan RLHF. Melalui data berkualiti tinggi, ColossalChat boleh menjalankan interaksi perbualan yang lebih baik dan menyokong bahasa Cina. Proses pengumpulan set data ColossalChat Penghasilan semula algoritma RLHF RLHF-Stage1 adalah penyeliaan-fintuning, iaitu, menggunakan set data yang dinyatakan di atas untuk penalaan halus model. RLHF-Stage2 melatih model ganjaran secara manual untuk mendapatkan markah yang sama dan mengawasi latihan model ganjaran. RLHF-Stage3 menggunakan algoritma pembelajaran pengukuhan, yang merupakan bahagian paling kompleks dalam proses latihan: Carta alir algoritma RLHF-Stage3 Dalam bahagian PPO, ColossalChat dibahagikan kepada dua peringkat: yang pertama ialah Make Bahagian pengalaman, menggunakan pengiraan model SFT, Actor, RM, dan Critic menjana Pengalaman dan menyimpannya dalam penimbal diikuti dengan bahagian kemas kini parameter, Pengalaman digunakan untuk mengira kehilangan strategi dan kehilangan nilai. Dalam bahagian PTX, ColossalChat mengira fungsi kehilangan entropi silang bagi tindak balas output Aktor dan bahagian jawapan korpus input, yang digunakan untuk menambah kecerunan pra-latihan kepada kecerunan PPO untuk mengekalkan model bahasa asal Prestasi menghalang lupa. Akhir sekali, kerugian strategi, kehilangan nilai dan kerugian PTX dijumlahkan untuk perambatan belakang dan kemas kini parameter. Mulakan dengan pantas ColossalChat telah membuka sumber kod lengkap untuk tiga peringkat latihan ChatGPT berdasarkan model LLaMA. Peringkat pertama, latih model SFT: Peringkat kedua, latih model ganjaran: Peringkat ketiga, menggunakan latihan RL: Selepas mendapatkan pemberat model akhir, kos perkakasan inferens juga boleh dikurangkan melalui pengkuantitian dan dalam talian Untuk perkhidmatan inferens, hanya satu GPU dengan kira-kira 4GB memori video boleh melengkapkan penggunaan 7 bilion perkhidmatan inferens model parameter. ColossalChat 能够快速跟进 ChatGPT 完整 RLHF 流程复现,离不开 AI 大模型基础设施 Colossal-AI 及相关优化技术的底座支持,相同条件下训练速度相比 Alpaca 采用的 FSDP (Fully Sharded Data Parallel) 可提升三倍左右。 系统基础设施 Colossal-AI AI 大模型开发系统 Colossal-AI 为该方案提供了基础支持,它可基于 PyTorch 高效快速部署 AI 大模型训练和推理,从而降低 AI 大模型应用的成本。Colossal-AI 由加州伯克利大学杰出教授 James Demmel 和新加坡国立大学校长青年教授尤洋领导开发。自从它开源以来,Colossal-AI 已经多次在 GitHub 热榜位列世界第一,获得 GitHub Star 约两万颗,并成功入选 SC、AAAI、PPoPP、CVPR、ISC 等国际 AI 与 HPC 顶级会议的官方教程。 减少内存冗余的 ZeRO + Gemini Colossal-AI 支持使用无冗余优化器 (ZeRO) 提高内存使用效率,低成本容纳更大模型,同时不影响计算粒度和通信效率。自动 Chunk 机制可以进一步提升 ZeRO 的性能,提高内存使用效率,减少通信次数并避免内存碎片。异构内存空间管理器 Gemini 支持将优化器状态从 GPU 显存卸载到 CPU 内存或硬盘空间,以突破 GPU 显存容量限制,扩展可训练模型的规模,降低 AI 大模型应用成本。 使用 LoRA 低成本微调 Colossal-AI 支持使用低秩矩阵微调(LoRA)方法,对 AI 大模型进行低成本微调。LoRA 方法认为大语言模型是过参数化的,而在微调时,参数改变量是一个低秩矩阵。因此,可以将这个矩阵分解为两个更小的矩阵的乘积。在微调过程中,大模型的参数被固定,只有低秩矩阵参数被调整,从而显著减小了训练所需的参数量,并降低成本。 低成本量化推理 GPTQ 量化 为降低推理部署成本,Colossal-AI 使用 GPTQ 4bit 量化推理。在 GPT/OPT/BLOOM 类模型上,它比传统的 RTN (rount-to-nearest) 量化技术能够获得更好的 Perplexity 效果。相比常见的 FP16 推理,它可将显存消耗降低 75%,只损失极少量的吞吐速度与 Perplexity 性能。 以 ColossalChat-7B 为例,在使用 4bit 量化推理时,70 亿参数模型仅需大约 4GB 显存即可完成短序列(生成长度为 128 )推理,在普通消费级显卡上即可完成(例如 RTX 3060 Laptop),仅需一行代码即可使用。 如果采用高效的异步卸载技术 (offload),还可以进一步降低显存要求,使用更低成本的硬件推理更大的模型。 1. ColossalChat 开源了第一个完整的RLHF pipeline,斯坦福Alpaca没有做 RLHF,也就是没有做 Stage 2 和 Stage 3。 2. ColossalChat 采用了更多的指令数据,质量更好,范围更大,并使用强化学习做alignment 使回答更接近人类。 3. Proses latihan ColossalChat menyepadukan banyak pengoptimuman sistem Colossal-AI, dan kelajuan latihan set data dan saiz model yang sama boleh menjadi 3 lebih pantas daripada Alpaca Lebih kurang masa , membenarkan penyelidik saintifik dan perusahaan kecil dan sederhana melatih dan menggunakan sistem perbualan mereka sendiri secara bebas. 4 Pasukan ColossalChat mengumpul lebih banyak set data sendiri: sejumlah 24 juta token dalam bahasa Inggeris untuk latihan, kira-kira 30 juta token dalam bahasa Cina, dan sejumlah lebih kurang 54J token. Antaranya, set data yang dikumpul oleh ColossalChat sendiri ialah 6M dalam bahasa Inggeris dan 18M token dalam bahasa Cina. Berikut ialah beberapa persembahan ColossalChat dan Alpaca dalam dialog bahasa (di atas ialah ColossalChat, bahagian bawah ialah Alpaca). Tulis Quicksort dalam Python: Tulis e-mel kepada profesor untuk meminta surat cadangan: Walaupun RLHF telah diperkenalkan lagi , disebabkan oleh kuasa pengkomputeran Memandangkan set data adalah terhad, masih terdapat ruang untuk penambahbaikan dalam prestasi sebenar dalam beberapa senario. Nasib baik, tidak seperti dahulu, model AI yang besar dan teknologi canggih hanya dimonopoli oleh beberapa gergasi teknologi seperti PyTorch, Hugging Face dan OpenAI berkait rapat dengan Start-ups juga memainkan peranan penting dalam gelombang ini. Berdasarkan pengalaman kejayaan komuniti sumber terbuka, Colossal-AI mengalu-alukan semua pihak untuk mengambil bahagian dalam pembinaan bersama dan mengharungi era model besar! Anda boleh menghubungi atau mengambil bahagian melalui kaedah berikut: 1 Siarkan isu pada GitHub atau serahkan permintaan tarik (PR) 2 Sertai kumpulan WeChat atau Slack pengguna Colossal-AI untuk berkomunikasi 3 .nus.edu.sg Alamat sumber terbuka: https://github.com/hpcaitech/ColossalAI Set data latihan sumber terbuka
# Training with a 4-GPU servers
colossalai run --nproc_per_node=4 train_sft.py
--pretrain "/path/to/LLaMa-7B/"
--model 'llama'
--strategy colossalai_zero2
--log_interval 10
--save_path/path/to/Coati-7B
--dataset /path/to/data.json
--batch_size 4
--accimulation_steps 8
--lr 2e-5
# Training with a 4-GPU servers
colossalai run --nproc_per_node=4 train_reward_model.py
--pretrain "/path/to/LLaMa-7B/"
--model 'llama'
--strategy colossalai_zero2
--dataset /path/to/datasets
# Training with a 8-GPU servers
colossalai run --nproc_per_node=8 train_prompts.py prompts.csv
--strategy colossalai_zero2
--pretrain "/path/to/Coati-7B"
--model 'llama'
--pretrain_dataset /path/to/dataset
python server.py/path/to/pretrained --quant 4bit --gptq_checkpoint /path/to/coati-7b-4bit-128g.pt --gptq_group_size 128
系统性能优化与开发加速
if args.quant == '4bit':
model = load_quant (args.pretrained, args.gptq_checkpoint, 4, args.gptq_group_size)
ColossalChat和Alpaca的区别
Kolaborasi terbuka
Atas ialah kandungan terperinci Penyelesaian pengklonan 0-ambang telah dinaik taraf, model sumber terbuka dihasilkan semula sepenuhnya, dan tiada pendaftaran diperlukan untuk pengalaman dalam talian.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!