3 poin oleh GN⁺ 2025-02-17 | 1 komentar | Bagikan ke WhatsApp
  • Hasil menjalankan model deepseek_r1_distill_llama_8b_q40 di distributed-llama v0.12.2 dengan 4 unit Raspberry Pi 5 8GB menunjukkan kecepatan evaluasi dan generasi yang lebih tinggi dibanding konfigurasi 2 unit
  • Konfigurasi 2 unit mencatat Evaluation 7.70 tok/s dan Prediction 3.54 tok/s, sedangkan konfigurasi 4 unit mencatat Evaluation 11.68 tok/s dan Prediction 6.43 tok/s
  • Log Prediction pada konfigurasi 4 unit menunjukkan sekitar 155.60ms per token, sementara konfigurasi 2 unit sekitar 282.22ms per token, memperlihatkan perbedaan kecepatan pemrosesan pada model yang sama saat jumlah node ditambah
  • Pengguna lain membagikan hasil di v0.12.7 dengan 8 node, LAN 2.5G, dan konfigurasi berbasis CPU Intel lama, dengan Evaluation 33.64 tok/s dan Prediction 16.63 tok/s
  • Untuk kasus proses berhenti karena kekurangan memori pada 2 unit Raspberry Pi 5 8GB, ada jawaban bahwa ukuran konteks perlu dikurangi dengan --max-seq-len 4096

Hasil eksekusi konfigurasi Raspberry Pi 5 8GB

  • Model uji adalah deepseek_r1_distill_llama_8b_q40, dan versi distributed-llama adalah 0.12.2
  • Perbandingan dilakukan antara konfigurasi 2 x Raspberry Pi 5 8GB dan 4 x Raspberry Pi 5 8GB
Konfigurasi Evaluation Prediction
2 x Raspberry Pi 5 8GB 7.70 tok/s 3.54 tok/s
4 x Raspberry Pi 5 8GB 11.68 tok/s 6.43 tok/s

Angka log konfigurasi 2 unit

  • Konfigurasi 2 x Raspberry Pi 5 8GB mencatat angka berikut pada Evaluation
    • nBatches: 32
    • nTokens: 19
    • tokens/s: 7.70
    • 129.89 ms/tok
  • Pada Prediction, tercatat angka berikut
    • nTokens: 77
    • tokens/s: 3.54
    • 282.22 ms/tok
  • Saat eksekusi berakhir, log menampilkan Network is closed

Angka log konfigurasi 4 unit

  • Konfigurasi 4 x Raspberry Pi 5 8GB mencatat angka berikut pada Evaluation
    • nBatches: 32
    • nTokens: 19
    • tokens/s: 11.68
    • 85.63 ms/tok
  • Pada Prediction, tercatat angka berikut
    • nTokens: 77
    • tokens/s: 6.43
    • 155.60 ms/tok
  • Log berulang kali menampilkan pengiriman 864 kB dan penerimaan 1191 kB selama pembuatan token

Hasil 8 node dari pengguna lain

  • Seorang pengguna membagikan hasil penggunaan 8 node pada distributed-llama v0.12.7
    • Sebagian besar menggunakan CPU Intel lama, dengan konfigurasi 4 core atau 6 core
    • Mendukung AVX2
    • Terhubung melalui LAN 2.5G
  • Hasil eksekusi konfigurasi ini adalah sebagai berikut
    • Evaluation: 33.64 tok/s, 29.73 ms/tok
    • Prediction: 16.63 tok/s, 60.13 ms/tok
    • Jumlah token Prediction adalah 245
  • Perintah yang digunakan berbentuk ./dllama inference dengan model, tokenizer, --buffer-float-type q80, --nthreads 6, --max-seq-len 4096, beberapa --workers, dan --steps 256

Masalah eksekusi dan jawaban

  • Dibagikan kasus pada konfigurasi 2 x Raspberry Pi 5 8GB yang berhenti saat berjalan setelah menampilkan RequiredMemory: 20474 MB lalu berakhir dengan Killed
    • Perintah node root mencakup --buffer-float-type q80, --steps 16, --nthreads 4, dan 1 alamat worker
    • Jawabannya menyebut bahwa ukuran konteks perlu dikurangi dengan --max-seq-len 4096
  • Pengguna lain membagikan gejala setelah terhubung ke beberapa worker, untuk prompt what is 99+12 hanya keluar spasi dan titik
    • Log menampilkan RopeScaling: f=8.0, l=1.0, h=4.0, o=8192, RequiredMemory: 3310 MB, Chat template: deepSeek3
    • Pengelola menanyakan versi yang digunakan, lalu meminta konfirmasi apakah perubahan terbaru sudah di-pull dan CPU apa yang digunakan

1 komentar

 
GN⁺ 2025-02-17
Pendapat Hacker News
  • Pengumuman tentang menjalankan Deepseek R1 di Raspberry Pi umumnya mengikuti pola yang sama: pada praktiknya, itu lebih dekat ke menjalankan Llama atau Qwen yang dimodifikasi dengan teknik distilasi DeepSeek

    • Mode kegagalan yang sering terlihat pada model DeepSeek hasil distilasi adalah model tidak sadar bahwa ia sedang jalan di tempat
      DeepSeek mendorong model bahasa besar hasil distilasi untuk memotong output-nya sendiri dengan “Wait.” sehingga bisa melakukan penalaran sampai batas tertentu, tetapi ini jauh lebih lemah daripada kemampuan penalaran model penuh, dan alih-alih mengembangkan kesimpulan yang sudah dibuat dengan nuansa baru, model bisa terjebak dalam siklus terus-menerus mengulang “Wait.” dan hanya meragukan diri sendiri
    • Saya tidak tahu apakah judul kirimannya sudah diubah, tetapi sekarang secara eksplisit tertulis Deepseek R1 Distill 8B Q40, jadi memang keliru kalau hasilnya disebut “Deepseek R1”
      Namun, jika melihat bagian Distilled Model Evaluation[1] di repositori resmi R1, DeepSeek-R1-Distill-Llama-8B juga cukup bagus, dan disebut lebih baik daripada 4o-0513 dan Sonnet-1022 pada beberapa benchmark
      Perlu diingat juga bahwa ada sampling dari tata bahasa format. llama.cpp punya GBNF, dan sekarang juga ada pengaturan lazy grammar[2], sehingga untuk sebagian penggunaan sudah cukup berguna. Artinya, tata bahasa ikut campur setelahnya
      Selain itu, masih ada ruang untuk fine-tuning tambahan. Beberapa penyedia kini menawarkan layanan “RFT”, dengan cara memperkaya dataset supervised fine-tuning biasa menggunakan data penalaran sintetis yang dibuat oleh R1 besar. Jadi hasil ini bisa menjadi hasil awal yang jauh lebih bernilai daripada kelihatannya
      Decoding 6 tok/s memang tidak cepat, tetapi orang yang memakai Raspberry Pi biasanya tidak terlalu peduli soal itu
      [1] https://github.com/deepseek-ai/DeepSeek-R1#distilled-model-e...
      [2] https://github.com/ggerganov/llama.cpp/pull/9639
    • Saya ingin ada yang menjelaskan apa arti metode distilasi ini bagi software engineer yang pekerjaan utamanya bukan machine learning
      Saya penasaran apa maksudnya R1 melatih model Llama, dan apa yang istimewa dari metode distilasi DeepSeek
    • Ini hanya LLaMa yang di-fine-tune agar menghasilkan chain of thought mirip DeepSeek
      Kalau benar-benar model “distilasi”, seharusnya ia dilatih dari awal untuk sepenuhnya meniru model yang lebih besar, tetapi itu tidak terjadi di sini
    • Saya benar-benar tidak suka model-model seperti ini bisa di-branding dengan nama Deepseek R1
  • Seperti biasa, angka tok/s harus dilihat dengan sangat hati-hati
    Demo tersebut “menyelesaikan” pertanyaan yang bahkan kurang dari 500 token. Fakta bahwa itu bisa dilakukan tetap mengagumkan, tetapi ketika menangani masalah nyata dan panjang konteks yang benar-benar berguna untuk model yang “berpikir”, yaitu 8–16k token, sulit untuk mendekati kecepatan tersebut. Epyc dengan banyak channel pun turun ke 2–4 tok/s setelah panjang konteks melewati sekitar 4096

    • Saya mencoba eksekusi panjang di empat Raspberry Pi 5, yaitu melihat bagaimana prediksinya
      pos=0 => P 138 ms S 864 kB R 1191 kB Connect
      pos=2000 => P 215 ms S 864 kB R 1191 kB .
      pos=4000 => P 256 ms S 864 kB R 1191 kB manager
      pos=6000 => P 335 ms S 864 kB R 1191 kB the
    • Robot kecil biasanya menangani masalah kecil
      Kalau model bisa membantu sedikit saja, robot itu bisa menjadi jauh lebih mampu daripada sekarang
  • Hasilnya tidak buruk, tetapi kalau mau menghabiskan £320 untuk empat Pi 5, Anda bisa mendapatkan 3080 12GB bekas dan kecepatan tokennya mungkin lebih dari 10 kali lipat

    • Atau bisa memasang GPU 12GB atau 16GB langsung ke satu Pi 5, dan mendapatkan lebih dari 20 tok/s bahkan pada model yang lebih besar
      https://github.com/geerlingguy/ollama-benchmark?tab=readme-o...
    • “Deepseek R1 Distill 8B Q40 on 1x 3080, 60.43 tok/s (eval 110.68 tok/s)” mungkin tidak akan masuk Hacker News
    • Tapi konsumsi dayanya 48W vs 320W
    • Bisa juga memakai sekitar dua kartu 12GB 3060
  • Hal yang menarik di sini adalah Llama inference bisa dijalankan secara terdistribusi di beberapa komputer

    • Kalau begitu, saya jadi bertanya-tanya di mana padanan GPU terdistribusinya
      Mungkinkah menghubungkan tool ke model penuh R1 yang lambat dan tersebar di seluruh dunia seperti Seti@HOME, lalu membuatnya melakukan penalaran secara terbuka untuk tugas yang dalam dan kompleks?
  • Ini adalah klaster Beowulf versi modern

    • Sejujurnya saya kurang memahami meme klaster Raspberry Pi
      Dengan menambah sedikit uang dari empat Pi 5, Anda bisa menemukan server Dell 1U di eBay dengan CPU Epyc 32-core dan memori 64GB, dan performanya setidaknya lebih tinggi satu orde besaran
      Kalau ingin bicara tentang klaster Beowulf di homelab, menurut saya setidaknya harus menjalankan konfigurasi seperti Slurm+Lustre atau k8s+OpenStack+Ceph pada node komputasi yang dipasangi jaringan FDR Infiniband yang sangat murah. Hal seperti ini, dengan empat node lambat yang bahkan tidak bisa melakukan scaling linear, agak sulit diterima
  • Saya belum melihat atau memahami bagaimana beberapa Raspberry Pi digunakan secara paralel di sini
    Akan bagus kalau ada yang bisa menunjukkan arahnya

  • Kapan kira-kira alat AI baru yang keren ini bisa dipasang dengan apt-get install?

    • Di Mac, brew install ollama bisa menjadi titik awal yang bagus
    • Itu mungkin jika distro yang dipakai saat ini mulai memaketkan alat model bahasa besar, atau jika pindah ke distro semacam itu
    • ollama pull sudah cukup mendekati bentuk itu
    • Memang bukan apt-get persis, tetapi sebagian besar komponen infrastruktur di bawah “alat AI” bisa dipasang dengan conda install
    • Bisa juga mengunduh lm-studio dalam versi GUI yang enak dilihat
      Itu menyimpan percakapan dan memudahkan pengunduhan model
  • Jika ingin mencoba model ini di Mac, model yang digunakan tampaknya mirip DeepSeek-R1-Distill-Llama-8B, dan bisa dijalankan seperti ini dengan plugin llm-mlx baru
    brew install llm # or pipx install llm or uv tool install llm
    llm install llm-mlx
    llm mlx download-model mlx-community/DeepSeek-R1-Distill-Llama-8B
    llm -m mlx-community/DeepSeek-R1-Distill-Llama-8B 'poem about an otter'
    Performanya juga cukup bagus; saat baru saja dijalankan, hasilnya 22 token/detik: https://gist.github.com/simonw/dada46d027602d6e46ba9e4f48477...

  • Apakah menambah memori akan membantu? Baru-baru ini RPi 5 dengan RAM 16GB telah keluar

    • Kecepatan inferensi jauh lebih dipengaruhi oleh kecepatan baca/tulis daripada ukuran memori
      Selama model muat di memori, yang menentukan operasi sebenarnya adalah bandwidth memori
    • Selama model dan konteks muat di memori, kapasitas memori itu sendiri tidak membantu
      Model Q4 dengan 8B parameter seharusnya muat bahkan di satu Pi 8GB
    • Pi 5 16GB sempat tersedia lalu cepat menghilang
      Ketika stok baru-baru ini masuk di Adafruit, saya nyaris berhasil membeli satu, tetapi segera habis terjual lagi
      Meski begitu, terlepas dari performa, ada model-model yang tidak bisa dijalankan Ollama sama sekali karena membutuhkan lebih dari 8GB untuk berjalan
  • Dibutuhkan produk seperti Alexa atau Google Home
    Namun alih-alih terhubung ke cloud, bentuknya harus menjalankan model bahasa besar lokal. Saya tidak tahu kenapa ini belum ada atau tidak ada yang membuatnya

    • Saya rasa mungkin karena harga
      Model bahasa besar yang bagus itu mahal, jadi pertanyaan sebenarnya adalah apakah bisa membuatnya cukup murah agar tetap punya margin sambil memasukkan model yang cukup berguna hingga orang mau membelinya
    • Dengan Home Assistant, ini bisa dibuat agak mirip
      Saya tidak yakin apakah penggunaan alat didukung, tetapi hal-hal yang layak ditanyakan seperti cuaca bisa diekspos
    • Kalau model bahasa besar lokal, maksudnya sesuatu seperti Ollama + llamacpp?