Rumah Peranti teknologi AI Kuantisasi untuk model bahasa besar (LLMS): Mengurangkan saiz model AI dengan cekap

Kuantisasi untuk model bahasa besar (LLMS): Mengurangkan saiz model AI dengan cekap

Mar 05, 2025 am 09:10 AM

Jalankan chatgpt anda sendiri di komputer riba anda: Panduan untuk kuantisasi LLM

pernah bermimpi menjalankan chatgpt anda sendiri secara langsung di komputer riba anda? Terima kasih kepada kemajuan dalam model bahasa besar (LLMS), ini menjadi kenyataan. Kuncinya adalah kuantisasi -teknik yang mengecilkan model -model besar -besaran ini agar sesuai dengan perkakasan pengguna dengan kehilangan prestasi yang minimum (apabila dilakukan dengan betul!). Panduan ini menerangkan kuantisasi, kaedahnya, dan menunjukkan kepada anda bagaimana untuk mengukur model menggunakan perpustakaan Quanto Face yang memeluk dalam dua langkah mudah. Ikuti bersama menggunakan DataCamp Datalab.

saiz llms yang sentiasa berkembang

LLMs telah meletup dalam kerumitan. GPT-1 (2018) mempunyai 0.11 bilion parameter; GPT-2 (2019), 1.5 bilion; GPT-3 (2020), kekalahan 175 bilion; dan GPT-4 mempunyai lebih dari 1 trilion. Pertumbuhan besar -besaran ini mewujudkan kesesakan memori, menghalang kedua -dua latihan dan kesimpulan, dan mengehadkan aksesibiliti. Kuantisasi menyelesaikannya dengan mengurangkan saiz model semasa mengekalkan prestasi.

Memahami kuantisasi

Kuantisasi adalah teknik pemampatan model yang mengurangkan ketepatan berat dan pengaktifan model. Ini melibatkan penukaran data dari jenis ketepatan yang lebih tinggi (mis., Titik terapung 32-bit) ke jenis ketepatan yang lebih rendah (mis., Integer 8-bit). Bit yang lebih sedikit bermaksud model yang lebih kecil, memakan memori, penyimpanan, dan tenaga yang kurang.

Fikirkan pemampatan imej: Imej resolusi tinggi dimampatkan untuk kegunaan web, mengurangkan saiz dan masa pemuatan dengan kos beberapa detail. Begitu juga, mengira LLM mengurangkan tuntutan pengiraan, membolehkannya berjalan pada perkakasan yang kurang kuat.

Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently

pemampatan imej untuk pemuatan web yang lebih cepat.

Kuantisasi memperkenalkan bunyi (ralat kuantisasi), tetapi penyelidikan memberi tumpuan kepada meminimumkan ini untuk mengekalkan prestasi.

teori di sebalik kuantisasi

Kuantisasi biasanya mensasarkan berat model -parameter yang menentukan kekuatan hubungan antara neuron. Berat ini pada mulanya rawak dan diselaraskan semasa latihan. Contoh mudah adalah berat membulat ke tempat perpuluhan yang lebih sedikit.

Contohnya: matriks berat (kiri) dan versi kuantitinya (kanan). Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently

Perbezaan antara matriks asal dan kuantitatif ialah ralat kuantisasi.

Matriks ralat kuantisasi.

Dalam amalan, kuantisasi melibatkan perubahan jenis data (downcasting). Sebagai contoh, menukar dari float32 (4 bait per parameter) hingga int8 (1 byte per parameter) dengan ketara mengurangkan penggunaan memori.

titik terapung otak (BF16) dan downcasting

BF16, yang dibangunkan oleh Google, menawarkan keseimbangan antara jarak dinamik Float32 dan kecekapan Float16. Downcasting-converting dari ketepatan yang lebih tinggi ke jenis data yang lebih rendah-ketepatan kelajuan tetapi boleh menyebabkan kehilangan data dan penyebaran kesilapan, terutama dengan jenis data yang lebih kecil.

Jenis kuantisasi

Beberapa jenis kuantisasi wujud:

  • kuantisasi linear: Peta nilai terapung-titik ke julat tetap sama rata. Ia melibatkan pengiraan nilai minimum/maksimum, skala, titik sifar, kuantitatif, dan dequantizing (semasa kesimpulan).

Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently

Persamaan kuantisasi linear.

Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently

Contoh: kuantisasi linear matriks berat.

Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently ralat dequanisasi dan kuantisasi.

    Kuantisasi Blockwise:
  • Mengira berat dalam blok yang lebih kecil, mengendalikan pengagihan bukan seragam dengan lebih berkesan.

  • Berat vs pengaktifan pengaktifan:
  • Kuantisasi boleh digunakan untuk kedua -dua berat (statik) dan pengaktifan (dinamik). Kuantisasi pengaktifan lebih kompleks.

  • Kuantisasi Post-Training (PTQ) vs Latihan Kuantisasi-Aware (QAT):
  • PTQ mengukur model pra-terlatih; QAT mengubah latihan untuk mensimulasikan kesan kuantisasi, yang membawa kepada ketepatan yang lebih baik tetapi meningkatkan masa latihan.

    Teknik penentukuran
Beberapa kaedah memerlukan kesimpulan penentukuran pada dataset untuk mengoptimumkan parameter kuantisasi. Teknik termasuk penentukuran persentil dan penentukuran sisihan min/standard. Kaedah seperti qlora mengelakkan penentukuran.

alat untuk kuantisasi

Beberapa perpustakaan python menyokong kuantisasi, termasuk pytorch dan tensorflow. Memeluk Perpustakaan Quanto Face memudahkan proses untuk model pytorch.

Mengira model dengan memeluk Face's Quanto

inilah panduan langkah demi langkah menggunakan model Pythia 410m:

  1. Muatkan model: Muatkan model pra-terlatih dan tokenizer.
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "EleutherAI/pythia-410m"
model = AutoModelForCausalLM.from_pretrained(model_name, low_cpu_mem_usage=True)
tokenizer = AutoTokenizer.from_pretrained(model_name)
Salin selepas log masuk
  1. Quantize: Gunakan quantize() untuk menukar model.
from quanto import quantize, freeze
quantize(model, weights=torch.int8, activations=None)
Salin selepas log masuk
  1. membekukan: Gunakan freeze() untuk menggunakan kuantisasi pada berat.
freeze(model)
Salin selepas log masuk
  1. Hasil Semak: Sahkan saiz model yang dikurangkan dan kesimpulan ujian. (Nota: adalah fungsi tersuai; lihat DataCamp Datalab untuk pelaksanaan). compute_module_sizes()

Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently Quantization for Large Language Models (LLMs): Reduce AI Model Sizes Efficiently

Kesimpulan

Kuantisasi menjadikan LLM lebih mudah dan cekap. Dengan memahami tekniknya dan menggunakan alat seperti memeluk Face's Quanto, anda boleh menjalankan model yang kuat pada perkakasan yang kurang kuat. Untuk model yang lebih besar, pertimbangkan untuk menaik taraf sumber anda.

LLM Kuantisasi Soalan Lazim

  • qat vs ptq: qat umumnya melakukan lebih baik tetapi memerlukan lebih banyak sumber semasa latihan.
  • Perpustakaan Quanto:
  • menyokong kedua -dua PTQ dan QAT. termasuk penentukuran tersirat; Kaedah tersedia untuk penentukuran tersuai. quantize() calibration()
  • Precision:
  • INT4 dan INT2 kuantisasi adalah mungkin.
  • Mengakses model muka pelukan:
  • Tukar pembolehubah kepada model yang dikehendaki. Ingatlah untuk menerima terma dan syarat yang memeluk Face. model_name

Atas ialah kandungan terperinci Kuantisasi untuk model bahasa besar (LLMS): Mengurangkan saiz model AI dengan cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1663
14
Tutorial PHP
1264
29
Tutorial C#
1237
24
Bermula dengan Meta Llama 3.2 - Analytics Vidhya Bermula dengan Meta Llama 3.2 - Analytics Vidhya Apr 11, 2025 pm 12:04 PM

Meta's Llama 3.2: Lompat ke hadapan dalam Multimodal dan Mobile AI META baru -baru ini melancarkan Llama 3.2, kemajuan yang ketara dalam AI yang memaparkan keupayaan penglihatan yang kuat dan model teks ringan yang dioptimumkan untuk peranti mudah alih. Membina kejayaan o

10 Pelanjutan pengekodan AI generatif dalam kod vs yang mesti anda pelajari 10 Pelanjutan pengekodan AI generatif dalam kod vs yang mesti anda pelajari Apr 13, 2025 am 01:14 AM

Hei ada, pengekodan ninja! Apa tugas yang berkaitan dengan pengekodan yang anda telah merancang untuk hari itu? Sebelum anda menyelam lebih jauh ke dalam blog ini, saya ingin anda memikirkan semua kesengsaraan yang berkaitan dengan pengekodan anda-lebih jauh menyenaraikan mereka. Selesai? - Let &#8217

AV Bytes: Meta ' s llama 3.2, Google's Gemini 1.5, dan banyak lagi AV Bytes: Meta ' s llama 3.2, Google's Gemini 1.5, dan banyak lagi Apr 11, 2025 pm 12:01 PM

Landskap AI minggu ini: Badai kemajuan, pertimbangan etika, dan perdebatan pengawalseliaan. Pemain utama seperti Openai, Google, Meta, dan Microsoft telah melepaskan kemas kini, dari model baru yang terobosan ke peralihan penting di LE

Menjual Strategi AI kepada Pekerja: Manifesto CEO Shopify Menjual Strategi AI kepada Pekerja: Manifesto CEO Shopify Apr 10, 2025 am 11:19 AM

Memo CEO Shopify Tobi Lütke baru -baru ini dengan berani mengisytiharkan penguasaan AI sebagai harapan asas bagi setiap pekerja, menandakan peralihan budaya yang signifikan dalam syarikat. Ini bukan trend seketika; Ini adalah paradigma operasi baru yang disatukan ke p

GPT-4O vs OpenAI O1: Adakah model Openai baru bernilai gembar-gembur? GPT-4O vs OpenAI O1: Adakah model Openai baru bernilai gembar-gembur? Apr 13, 2025 am 10:18 AM

Pengenalan OpenAI telah mengeluarkan model barunya berdasarkan seni bina "strawberi" yang sangat dijangka. Model inovatif ini, yang dikenali sebagai O1, meningkatkan keupayaan penalaran, yang membolehkannya berfikir melalui masalah MOR

Panduan Komprehensif untuk Model Bahasa Visi (VLMS) Panduan Komprehensif untuk Model Bahasa Visi (VLMS) Apr 12, 2025 am 11:58 AM

Pengenalan Bayangkan berjalan melalui galeri seni, dikelilingi oleh lukisan dan patung yang terang. Sekarang, bagaimana jika anda boleh bertanya setiap soalan dan mendapatkan jawapan yang bermakna? Anda mungkin bertanya, "Kisah apa yang anda ceritakan?

Penyusunan Tahunan Terkini Teknik Kejuruteraan Terbaik Penyusunan Tahunan Terkini Teknik Kejuruteraan Terbaik Apr 10, 2025 am 11:22 AM

Bagi anda yang mungkin baru dalam lajur saya, saya secara meluas meneroka kemajuan terkini di AI di seluruh papan, termasuk topik seperti yang terkandung AI, penaakulan AI, terobosan berteknologi tinggi di AI, kejuruteraan segera, latihan AI, Fielding of AI, AI Re Re,

Bagaimana untuk menambah lajur dalam SQL? - Analytics Vidhya Bagaimana untuk menambah lajur dalam SQL? - Analytics Vidhya Apr 17, 2025 am 11:43 AM

Pernyataan Jadual Alter SQL: Menambah lajur secara dinamik ke pangkalan data anda Dalam pengurusan data, kebolehsuaian SQL adalah penting. Perlu menyesuaikan struktur pangkalan data anda dengan cepat? Pernyataan Jadual ALTER adalah penyelesaian anda. Butiran panduan ini menambah colu

See all articles