16 poin oleh GN⁺ 2024-12-30 | 1 komentar | Bagikan ke WhatsApp
  • Berawal dari ketertarikan pada ChatGPT, penulis memutuskan untuk melakukan pelatihan sendiri agar dapat memahami cara kerja LLM secara mendalam
  • Awalnya menggunakan chip M1, tetapi kemudian merasakan keterbatasannya dan membangun perangkat kustom dengan memanfaatkan GPU NVIDIA 4090

1. Menetapkan tujuan dan merencanakan anggaran

  • Menetapkan tujuan: kebutuhan perangkat akan berbeda tergantung ukuran dan jenis model yang ingin dilatih
  • Perencanaan anggaran: pertimbangkan keseimbangan antara performa dan biaya, serta ingat biaya komponen berperforma tinggi

2. Memilih perangkat keras

  • Motherboard: SuperMicro M12SWA-TF direkomendasikan. Menyediakan jalur PCIe yang cukup untuk penggunaan banyak GPU
  • CPU: memilih AMD Threadripper PRO 5955WX. Mendukung 128 jalur PCIe untuk mengatasi masalah bandwidth
  • RAM: direkomendasikan memori 128GB. Cocok untuk dataset besar dan pekerjaan komputasi
  • GPU: GPU NVIDIA 4090 - ideal untuk pelatihan LLM
    • VRAM 24GB memungkinkan pemrosesan model dan dataset berskala besar
    • Performa BFloat16 dioptimalkan untuk pekerjaan AI
    • 16.384 CUDA core memperkuat kemampuan pemrosesan paralel
  • Penyimpanan: konfigurasi 6TB NVMe SSD dan 8TB HDD
  • Catu daya: 2 PSU 1500W untuk suplai daya yang stabil
  • Casing dan sistem pendingin: gunakan casing yang mendukung banyak GPU dan perangkat pendingin yang efektif

3. Merakit perangkat

  • Pengaturan PSU ganda: satu PSU memasok daya ke motherboard dan CPU, sisanya ke GPU
  • Pemeriksaan kompatibilitas: tinjau kompatibilitas antar komponen secara menyeluruh
  • Cara melatih model LLM sendiri dengan 4 GPU 4090
  • Rapikan kabel untuk meningkatkan aliran udara dan menyederhanakan perawatan

4. Konfigurasi perangkat lunak

  • Sistem operasi: gunakan OS berbasis Linux yang stabil untuk lingkungan pelatihan (misalnya Ubuntu)
  • Driver dan dependensi: instal driver GPU terbaru, CUDA, dan pustaka cuDNN
  • Framework pelatihan: instal PyTorch atau TensorFlow
  • Kernel kustom: aktifkan komunikasi P2P antar-GPU dengan kernel yang disediakan Tinygrad

5. Pelatihan LLM

  • Persiapan data: bersihkan dan praproses dataset untuk menghasilkan data input berkualitas tinggi
  • Pemilihan model: pilih model yang sesuai dengan perangkat keras seperti Llama2 atau GPT
  • Proses pelatihan: pantau dan optimalkan pemanfaatan sumber daya

6. Optimasi dan ekspansi

  • Pelatihan multi-GPU: manfaatkan Distributed Data Parallel (DDP) atau teknologi ZeRO
  • Manfaatkan patch kernel yang memungkinkan komunikasi P2P pada GPU NVIDIA seri 4xxx
  • Tuning performa: optimalkan hyperparameter, ukuran batch, dan learning rate untuk mencapai konvergensi dan efisiensi yang lebih baik

7. Perawatan dan pemantauan

  • Pembaruan rutin: jaga sistem dan perangkat lunak tetap mutakhir
  • Pemantauan sistem: gunakan nvidia-smi, Prometheus, dan lainnya untuk memeriksa kondisi sistem

Wawasan inti dan tips

  • Alternatif perangkat keras: GPU seperti A100 atau H100 menawarkan VRAM yang lebih besar, tetapi GPU konsumen seperti 4090 memberikan performa yang sangat baik untuk konfigurasi yang hemat biaya
  • Pertimbangkan penggunaan cloud: on-premise cocok untuk proyek jangka panjang, cloud cocok untuk pekerjaan jangka pendek
  • Manfaatkan sumber daya komunitas: lihat panduan dari Hugging Face dan Andrej Karpathy

Membangun perangkat untuk pelatihan LLM memang menantang, tetapi juga merupakan pekerjaan yang memuaskan, dan dapat menjadi alat yang kuat untuk menjelajahi kemungkinan baru dalam pengembangan AI

1 komentar

 
GN⁺ 2024-12-30
Komentar Hacker News
  • Build ini luar biasa, dan merupakan build terbaik yang menggunakan 6 RTX 4090

    • Spesifikasi: 6 x 24GB NVIDIA GeForce RTX 4090, Intel Xeon W7-3465X, 256GB DDR5 ECC, 2TB Samsung 980 PRO NVMe SSD, 4TB Samsung 870 EVO SSD, Ubuntu 20.04
    • Pilihan memori 256GB DDR5 ECC menarik, dan mungkin juga bisa menargetkan 1TB RAM
    • Biayanya sangat fantastis
  • Tulisan ini terasa seperti ditulis oleh model AI, dan bagian akhirnya sangat terasa nuansa AI-nya

    • Artikel lanjutan tentang penataan data, pembersihan, dan pelatihan akan lebih menarik daripada pilihan hardware
  • Artikel tentang pelatihan seperti apa yang bisa dilakukan dengan perangkat seperti ini akan lebih menarik

  • Secara pribadi berbagi pengalaman membangun perangkat ML di rumah dan melakukan pra-pelatihan LLM

  • Penasaran hardware seperti apa yang dibutuhkan untuk fine-tuning model berukuran menengah

    • Ada banyak panduan, tetapi fokusnya pada pengaturan toolchain, dan kurang informasi tentang dataset untuk fine-tuning yang baik
  • Bagi kebanyakan orang, sisi software dari pelatihan model seharusnya lebih menarik dan lebih mudah diakses

    • Pemanfaatan GPU secara "penuh" masih merupakan topik terbuka, dan mungkin lebih bermanfaat menyewa di cloud untuk mengerjakan tugas
    • Proses ini adalah referensi yang bagus dan menginspirasi, dan merekomendasikan https://efficientml.ai/
  • Ingin membaca tulisan yang benar-benar ditulis langsung, bukan oleh model AI

  • Ingin membahas kabel riser

    • Mengalami masalah dengan konektor riser yang mengklaim mendukung PCIe 4.0 tetapi performanya buruk
    • Saat menghubungkan drive NVMe, muncul masalah sehingga gagal boot
    • NVMe tampaknya tidak terlalu tahan terhadap tingkat kesalahan bit yang tinggi
  • Menyenangkan bagi penghobi kaya, tetapi untuk pekerjaan nyata lebih baik menyewa di Runpod

    • Blog yang bagus
  • Hanya butuh 4 GPU 4090 dan sirkuit khusus 30 ampere