FlexGen ialah enjin untuk menjalankan bot AI seperti ChatGPT pada sistem GPU tunggal

Satu pasukan penyelidik dari Universiti Stanford, Universiti California di Berkeley, ETH Zurich, Sekolah Siswazah Ekonomi, Universiti Carnegie Mellon, serta Yandex dan Meta, telah menerbitkan kod sumber enjin untuk menjalankan model bahasa besar pada sumber. -sistem terhalang. Sebagai contoh, enjin menyediakan keupayaan untuk mencipta fungsi yang mengingatkan ChatGPT dan Copilot dengan menjalankan model OPT-175B yang telah terlatih, meliputi 175 bilion parameter, pada komputer biasa dengan kad grafik permainan NVIDIA RTX3090 yang dilengkapi dengan memori video 24GB. Kod ini ditulis dalam Python, menggunakan rangka kerja PyTorch dan diedarkan di bawah lesen Apache 2.0.

Ia termasuk skrip contoh untuk mencipta bot yang membolehkan anda memuat turun salah satu model bahasa yang tersedia secara umum dan segera mula berkomunikasi (contohnya, dengan menjalankan arahan β€œpython apps/chatbot.py β€”model facebook/opt-30b β€” -percent 0 100 100 0 100 0” ). Sebagai asas, adalah dicadangkan untuk menggunakan model bahasa besar yang diterbitkan oleh Facebook, dilatih pada koleksi BookCorpus (10 ribu buku), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews, dll.), Pushshift. io (berdasarkan data Reddit ) dan CCNewsV2 (arkib berita). Model ini meliputi kira-kira 180 bilion token (800 GB data). 33 hari operasi kelompok dengan 992 NVIDIA A100 80GB GPU telah dibelanjakan untuk melatih model.

Apabila menjalankan model OPT-175B pada sistem dengan GPU NVIDIA T4 tunggal (16GB), enjin FlexGen menunjukkan prestasi sehingga 100 kali lebih pantas daripada penyelesaian yang ditawarkan sebelum ini, menjadikan penggunaan model bahasa besar lebih berpatutan dan membolehkannya berjalan pada sistem tanpa pemecut khusus. Pada masa yang sama, FlexGen boleh membuat skala untuk menyelaraskan pengiraan dengan berbilang GPU. Untuk mengurangkan saiz model, skim mampatan parameter proprietari dan mekanisme caching model juga digunakan.

Pada masa ini, FlexGen hanya menyokong model bahasa OPT, tetapi pada masa hadapan pembangun juga berjanji untuk menambah sokongan untuk BLOOM (176 bilion parameter, menyokong 46 bahasa dan 13 bahasa pengaturcaraan), CodeGen (boleh menjana kod dalam 22 bahasa pengaturcaraan) dan model GLM. Contoh dialog dengan bot berdasarkan FlexGen dan model OPT-30B:

Manusia: Apakah nama gunung tertinggi di dunia?

Penolong: Everest.

Manusia: Saya merancang perjalanan untuk ulang tahun kita. Apakah perkara yang boleh kita lakukan?

Pembantu: Nah, terdapat beberapa perkara yang boleh anda lakukan untuk ulang tahun anda. Pertama, anda boleh bermain kad. Kedua, anda boleh pergi mendaki. Ketiga, anda boleh pergi ke muzium.

Sumber: opennet.ru

Tambah komen