pratical llms
1.0.0
Selamat datang di gudang insinyur LLM (Model Bahasa Besar)! Koleksi Notebook Jupyter ini dirancang untuk mengumpulkan aspek praktis dari pekerjaan kita. Saya akan mengumpulkan dan menambahkan jupyter dan/atau skrip untuk tujuan pembelajaran dan eksperimen.
Buku catatan | Keterangan | Url |
---|---|---|
1_pemahaman_llms_benchmarks.ipynb | Notebook ini memberikan penjelasan tentang tolok ukur utama yang digunakan di papan peringkat openLLM. Hal ini bertujuan untuk membantu Anda memahami metrik dan metodologi utama yang digunakan dalam tolok ukur LLM. | Link |
2_quantization_base.ipynb | Di buku catatan ini, Anda akan mempelajari cara membuka model Hugging Face dalam 8-bit dan 4-bit menggunakan perpustakaan BitandBytes. Kuantisasi adalah teknik penting untuk mengoptimalkan performa model dan penggunaan sumber daya, dan buku catatan ini memandu Anda melalui prosesnya. | Link |
3_quantisasi_gptq.ipynb | Jelajahi kuantisasi dalam format GPTQ menggunakan pustaka auto-gptq dengan buku catatan ini. Format GPTQ mendapatkan popularitas karena efektivitasnya dalam mengompresi dan mengkuantisasi model besar seperti GPT. Pelajari cara memanfaatkan format ini untuk model Anda. | Link |
4_quantization_exllamav2.ipynb | Cara mengkuantisasi model dari HF ke exllamav2 | Link |
5_sharding_and_offloading.ipynb | Cara membagi model menjadi beberapa bagian. Hal ini memungkinkan untuk memuatnya pada perangkat yang berbeda atau memuat satu per satu mengelola memori. Pelajari cara memindahkan beberapa lapisan ke CPU atau bahkan disk | Link |
6_gguf_quantization_and_inference.ipynb | Mengkuantisasi model ke dalam GGUF menggunakan perpustakaan llama.cpp. Inferensi pada server yang kompatibel dengan OpenAI. | Link |
7_gguf_split_and_load.ipynb | Pisahkan model GGUF Quantized menjadi beberapa bagian, sehingga mudah dibagikan | Link |
8_hqq_quantization.ipynb | Jelajahi kuantisasi menggunakan Kuantisasi Setengah Kuadrat (HQQ) | Link |
9_inference_big_model_cpu_plus_gpu.ipynb | Notebook ini menunjukkan cara menghitung RAM yang diperlukan oleh model GGUF terkuantisasi dan cara memuatnya ke dalam memori menggunakan RAM dan VRAM, sehingga mengoptimalkan jumlah lapisan yang dapat dipindahkan ke GPU. Notebook ini mendemonstrasikan pemuatan Qwen/Qwen1.5-32B-Chat-GGUF sebagai contoh pada sistem dengan VRAM T4 15GB dan RAM sekitar 32GB | Link |
a10_inference_llama3.ipynb | LLama3 telah dirilis. Notebook ini mendemonstrasikan cara menjalankan LLama3-8B-Instruct setengah presisi jika Anda memiliki akses ke GPU dengan VRAM 24 GB, dikuantisasi menjadi 8 bit jika Anda memiliki VRAM 10 GB, dan menunjukkan cara menjalankan versi GGUF Q8 untuk mencapai performa maksimal jika Anda hanya memiliki VRAM 10GB. | Link |
a11_llm_guardrails_using_llama3_guard.ipynb | Lindungi backend dan aplikasi AI generatif Anda menggunakan LLama3-guard-2. Di buku catatan ini, saya menunjukkan cara menyiapkan server menggunakan VRAM 10 GB dan cara melakukan inferensi melalui permintaan HTTP POST. | Link |
a12_spekulatif_decoding.ipynb | Buku catatan ini secara praktis menjelaskan dan mendemonstrasikan teknik 'dekode spekulatif' untuk meningkatkan token/detik yang dihasilkan oleh Model Target melalui penggunaan Model Draf yang lebih kecil dan ringan. Contoh direalisasikan pada LLama-3-70B-Instruct (Target) dan LLama-3-8B-Instruct (Draft). | Link |
a13_inference_vision_llm.ipynb | Buku catatan ini mendemonstrasikan cara melakukan inferensi sederhana menggunakan visi LLM. Sebagai contoh, saya memilih instruksi Phi-3-vision-128k-instruct yang baru dirilis dari Microsoft. Model ini berlisensi MIT, sehingga dapat digunakan di aplikasi Anda sendiri tanpa batasan apa pun. Modelnya bisa berjalan di satu Nvidia L4. | Link |
a14_llm_as_evaluator.ipynb | Buku catatan tersebut mendemonstrasikan cara menggunakan LLM sebagai Juri menggunakan Prometheus 2. Buku catatan tersebut menunjukkan cara mengevaluasi jawaban yang dikembalikan dari LLM atau jalur aplikasi mana pun. | Link |
a15_llm_evaluation.ipynb | Buku catatan ini mendemonstrasikan cara menggunakan EleutherAI/lm-evaluation-harness untuk mengevaluasi LLM pada tolok ukur umum yang juga digunakan di papan peringkat resmi. Prosesnya sama dengan yang digunakan secara otomatis saat Anda mengirimkan model ke papan peringkat | Link |
a16_synthetic_data_generasi.ipynb | Di notebook ini, saya membuat kelas khusus untuk menghasilkan kumpulan data QA sintetis dari file input menggunakan Llama-3-8B sebagai LLM. Skrip ini juga menunjukkan cara membuat dan menjalankan versi baru server llama di llama-3-8b-Q_8 GGUF | Link |
a17_sglan_serving_llm_multiusers.ipynb | Di notebook ini, saya menunjukkan semua langkah tentang cara menerapkan LLama3.1-8B-FP8 secara efisien di server khusus menggunakan SGLang dan melayani 64 calon pengguna paralel sambil mempertahankan kinerja yang baik. | Link |
a18_jailbreak_control_using_promptguard.ipynb | Mencoba PromptGuard-86M baru untuk jailbreak. Spoiler: modelnya terlihat rusak atau sangat buruk saat ini | Link |
a19_dokumen_informasi_dan_tabel_ekstraksi.ipynb | Buku catatan ini mendemonstrasikan cara menggunakan model literasi multimodal (Kosmos 2.5) untuk mengekstrak teks dan tabel secara akurat dan efisien tanpa menggunakan layanan cloud berbayar. Model ini berjalan pada GPU pribadi Anda, menjaga data Anda tetap pribadi dan aman. | Link |
a20_finetuning_llm_unsloth.ipynb | Buku catatan ini menunjukkan cara menyempurnakan instruksi Phi-3.5-mini menggunakan unsloth pada kumpulan data HF dari rantai struktur 'berpikir' | Link |
Untuk sumber daya dan dukungan lebih lanjut, jangan ragu untuk menghubungi komunitas atau lihat yang berikut:
Selamat belajar dan bereksperimen dengan LLM!