1 poin oleh GN⁺ 8 jam lalu | 1 komentar | Bagikan ke WhatsApp
  • Mesin inferensi lokal khusus DeepSeek V4 Flash yang dioptimalkan untuk Apple Metal GPU, berupa implementasi native C yang berfokus pada satu model, bukan runner GGUF serbaguna
  • DeepSeek V4 Flash memiliki jumlah parameter aktif yang sedikit sehingga memberikan kecepatan tinggi, dan dalam mode thinking menghasilkan segmen penalaran yang hanya sekitar 1/5 panjang model lain
  • Mendukung inferensi konteks panjang bahkan di lingkungan lokal melalui jendela konteks 1 juta token dan KV cache yang sangat terkompresi, serta mendukung persistensi KV cache ke disk
  • Menyertakan server HTTP API yang kompatibel dengan OpenAI dan Anthropic, sehingga bisa langsung dihubungkan dengan berbagai coding agent seperti Claude Code, opencode, dan Pi
  • Dibangun di atas fondasi ekosistem llama.cpp dan GGML, serta merupakan proyek yang dikembangkan dengan dukungan coding yang kuat dari GPT 5.5

Gambaran proyek dan filosofi desain

  • ds4.c adalah mesin inferensi native kecil khusus untuk DeepSeek V4 Flash, bukan runner GGUF serbaguna atau wrapper untuk runtime lain
  • Jalur inti adalah eksekutor graf Metal yang dikhususkan untuk DeepSeek V4 Flash, dan mencakup loading khusus DS4, rendering prompt, status KV, serta kode perekat API server
  • Ada banyak proyek unggulan di ranah inferensi lokal, tetapi perhatian sering terpecah karena model baru terus bermunculan
    • Proyek ini sengaja fokus pada satu model pada satu waktu, dan juga melakukan verifikasi vektor resmi (logits), pengujian konteks panjang, hingga integrasi agent
  • Visi inferensi lokal: A) mesin inferensi dengan HTTP API + B) GGUF yang dioptimalkan untuk mesin tertentu + C) pengujian dan verifikasi melalui implementasi coding agent; ketiganya harus bekerja bersama
  • Khusus untuk Metal, dengan kemungkinan dukungan CUDA di masa depan tetapi belum dipastikan
    • Jalur CPU hanya ada untuk verifikasi akurasi, dan saat ini menjalankan kode CPU dapat memicu kernel crash karena bug implementasi memori virtual pada versi macOS sekarang
  • Dikembangkan dengan dukungan kuat dari GPT 5.5, sementara manusia memimpin ide, pengujian, dan debugging

Mengapa DeepSeek V4 Flash dibuat sebagai mesin terpisah

  • Jumlah parameter aktifnya sedikit sehingga memberi kecepatan inferensi lebih tinggi
  • Dalam mode thinking, model ini menghasilkan segmen penalaran sekitar 1/5 lebih pendek dibanding model lain, dan panjang segmen penalaran sebanding dengan kompleksitas masalah
    • Bahkan dalam situasi ketika model lain praktis tidak dapat dipakai dalam mode thinking, DeepSeek V4 Flash masih bisa digunakan
  • Mendukung jendela konteks 1 juta token
  • Dengan skala 284B parameter, model ini mengetahui lebih banyak informasi di batas pengetahuan dibanding model 27B dan 35B
    • Perbedaannya dapat dilihat pada pertanyaan tentang acara TV Italia, politik, dan sebagainya
  • Kualitas penulisan bahasa Inggris dan Italia berada pada tingkat model quasi-frontier
  • KV cache sangat terkompresi sehingga inferensi konteks panjang bisa dilakukan di komputer lokal, serta mendukung persistensi KV cache ke disk
  • Dengan kuantisasi khusus, model ini tetap bekerja baik bahkan pada kuantisasi 2-bit, sehingga dapat dijalankan di MacBook RAM 128GB
  • Diperkirakan DeepSeek akan merilis versi pembaruan V4 Flash di masa mendatang

Ucapan terima kasih untuk llama.cpp dan GGML

  • ds4.c tidak melakukan link ke GGML, tetapi hadir di atas jalur yang dibuka proyek llama.cpp
  • Kernel, format kuantisasi, ekosistem GGUF, dan pengetahuan engineering hard-won dari llama.cpp menjadi referensi penting
  • Sebagian kode level sumber dipertahankan atau diterapkan di bawah lisensi MIT: layout dan tabel quant GGUF, logika quant/dot CPU, kernel Metal tertentu, dan lain-lain
  • Berkas LICENSE mempertahankan atribusi hak cipta penulis GGML

Bobot model

  • Hanya DeepSeek V4 Flash GGUF yang dipublikasikan khusus untuk proyek ini yang dapat digunakan; berkas DeepSeek/GGUF sembarang tidak kompatibel
  • Kuantisasi 2-bit menggunakan metode kuantisasi asimetris
    • Hanya expert MoE yang dikuantisasi: up/gate memakai IQ2_XXS, down memakai Q2_K
    • Komponen lain seperti shared expert, proyeksi, routing, dan sebagainya tidak dikuantisasi demi menjaga kualitas
  • ./download_model.sh q2 untuk mesin RAM 128GB, dan ./download_model.sh q4 untuk mesin dengan RAM 256GB atau lebih
    • Diunduh dari Hugging Face (antirez/deepseek-v4-gguf) dan mendukung resume unduhan parsial dengan curl -C -
  • ./download_model.sh mtp dapat mengunduh GGUF dengan dukungan opsional speculative decoding
    • Jalur MTP/speculative decoding masih eksperimental dan saat ini hanya memberi sedikit peningkatan kecepatan

Benchmark kecepatan

  • Angka CLI Metal dari satu kali eksekusi dengan pengaturan --ctx 32768, --nothink, decoding greedy, dan -n 256
  • MacBook Pro M3 Max, 128GB (q2)
    • Prompt pendek: prefill 58.52 t/s, generasi 26.68 t/s
    • Prompt 11709 token: prefill 250.11 t/s, generasi 21.47 t/s
    • q4: N/A karena kekurangan memori
  • Mac Studio M3 Ultra, 512GB (q2)
    • Prompt pendek: prefill 84.43 t/s, generasi 36.86 t/s
    • Prompt 11709 token: prefill 468.03 t/s, generasi 27.39 t/s
  • Mac Studio M3 Ultra, 512GB (q4)
    • Prompt pendek: prefill 78.95 t/s, generasi 35.50 t/s
    • Prompt 12018 token: prefill 448.82 t/s, generasi 26.62 t/s

Cara penggunaan CLI

  • Gunakan opsi -p untuk menjalankan prompt one-shot; jika dijalankan tanpa -p, akan masuk ke mode chat interaktif multi-turn
  • CLI interaktif mempertahankan transkrip chat yang sudah dirender dan checkpoint Metal KV live, sehingga setiap turn memperluas percakapan sebelumnya
  • Perintah yang berguna: /help, /think, /think-max, /nothink, /ctx N, /read FILE, /quit
    • Gunakan Ctrl+C untuk menghentikan generasi saat ini lalu kembali ke prompt
  • Nilai default adalah mode thinking, dan bisa diubah ke mode respons langsung dengan /nothink atau --nothink
  • --mtp MTP.gguf --mtp-draft 2 dapat mengaktifkan jalur MTP spekulatif opsional
    • Hanya berguna untuk decoding greedy, dan memakai confidence gate (--mtp-margin) agar tidak menerima bagian lambat

Server

  • Dapat menjalankan server HTTP lokal yang kompatibel dengan OpenAI/Anthropic
  • Khusus Metal, dan menyimpan satu graf/checkpoint KV yang dapat diubah di memori
    • Jika klien stateless mengirim ulang versi prompt yang lebih panjang dari prompt yang sama, prefix bersama dapat digunakan ulang
  • Parsing request dan socket berjalan di thread klien, tetapi inferensinya sendiri diserialkan melalui satu worker Metal
    • Saat ini server tidak melakukan batching pada beberapa request independen; request bersamaan akan menunggu sesuai urutan
  • Endpoint yang didukung

    • GET /v1/models, GET /v1/models/deepseek-v4-flash
    • POST /v1/chat/completions, POST /v1/completions, POST /v1/messages
  • /v1/chat/completions (kompatibel OpenAI)

    • Mendukung messages, max_tokens/max_completion_tokens, temperature, top_p, top_k, min_p, seed, stream, stream_options.include_usage, tools, tool_choice
    • Skema tool dirender dalam format tool DSML milik DeepSeek, dan pemanggilan tool DSML yang dihasilkan dikonversi kembali menjadi pemanggilan tool OpenAI
  • /v1/messages (kompatibel Anthropic)

    • Endpoint untuk klien bergaya Claude Code
    • Mendukung system, messages, tools, tool_choice, max_tokens, temperature, top_p, top_k, stream, stop_sequences, serta kontrol thinking
    • Penggunaan tool dikembalikan sebagai blok tool_use Anthropic
  • Kedua API mendukung streaming SSE, dan dalam mode thinking proses penalaran di-stream dalam bentuk API native

Integrasi klien agent

  • ds4-server dapat diintegrasikan dengan coding agent lokal yang menggunakan chat completions kompatibel OpenAI
  • Saat menjalankan quant 2-bit (81GB) pada RAM 128GB, jendela konteks 100k~300k token adalah rentang yang sesuai
    • Konteks penuh 1M token memakai sekitar 26GB memori (compress indexer saja sekitar 22GB)
  • Dengan pengaturan batas output 384000, pembatasan token dapat dihindari (model dapat menghasilkan hingga 384k token)
  • Integrasi opencode

    • Tambahkan item provider dan agent ke ~/.config/opencode/opencode.json untuk konfigurasi
    • Setel baseURL ke http://127.0.0.1:8000/v1
  • Integrasi Pi

    • Tambahkan konfigurasi provider ke ~/.pi/agent/models.json
    • Mencakup opsi kompatibilitas seperti format thinking DeepSeek, dukungan reasoning effort, dan dukungan usage streaming
    • Dapat ditetapkan sebagai model default di ~/.pi/agent/settings.json
  • Integrasi Claude Code

    • Menggunakan endpoint kompatibel Anthropic, dan mengatur variabel lingkungan dengan skrip wrapper ~/bin/claude-ds4
    • Arahkan ANTHROPIC_BASE_URL ke server lokal dan setel semua variabel model ke deepseek-v4-flash
    • Claude Code pada awalnya mengirim prompt besar sekitar 25k token, sehingga wajib mengaktifkan --kv-disk-dir
      • Setelah prefill pertama yang mahal, disk KV cache menggunakan ulang prefix yang disimpan sehingga sesi berikutnya tidak perlu memproses ulang seluruh prompt

Mode thinking

  • DeepSeek V4 Flash mendukung tiga mode: non-thinking, thinking, dan Think Max
  • Default server adalah mode thinking
  • Think Max dapat diminta dengan reasoning_effort=max, tetapi hanya berlaku jika ukuran konteks cukup besar sesuai rekomendasi model card
    • Pada konteks kecil, akan fallback ke thinking biasa
  • OpenAI reasoning_effort=xhigh dipetakan ke thinking biasa, bukan Think Max
  • Jika membutuhkan respons langsung, gunakan thinking: {"type":"disabled"}, think:false, atau alias model non-thinking seperti deepseek-chat

Disk KV cache

  • API chat/completion bersifat stateless, jadi klien agent akan mengirim ulang seluruh percakapan pada setiap request
  • ds4-server memprosesnya dengan membandingkan aliran token yang sudah dirender dengan prefix token yang di-cache
    • Checkpoint live di memori menangani sesi saat ini
    • Disk KV cache adalah mekanisme untuk mempertahankan prefix yang berguna saat berpindah sesi maupun setelah server restart
  • Saat ini hanya ada satu KV cache live di memori; jika sesi baru yang tidak terkait menggantikannya, sesi sebelumnya hanya bisa dilanjutkan tanpa pemrosesan ulang jika telah ditulis ke disk KV cache
  • Aktifkan dengan --kv-disk-dir dan --kv-disk-space-mb
  • Kunci cache dan struktur berkas

    • Kunci cache adalah hash SHA1 dari token ID yang persis sama, bukan teks mentah
    • Setiap token ID di-hash sebagai integer 32-bit little-endian, dan nama berkasnya adalah <sha1>.kv
    • Ditulis dengan I/O read/write biasa tanpa mmap (untuk menghindari penambahan VM mapping pada proses yang sudah memetakan model)
  • Layout berkas disk cache

    • Header tetap KVC 48 byte: magic("KVC"), versi, bit quant routed expert, alasan penyimpanan, jumlah token yang di-cache, hit count, ukuran konteks, waktu Unix pembuatan/penggunaan terakhir, jumlah byte payload sesi DS4
    • Teks yang dirender: hasil decoding tokenizer dari prefix token yang di-cache (untuk observasi, bukan dipakai sebagai kunci)
    • Payload sesi DS4: diawali 13 field u32 little-endian, termasuk magic("DSV4"), versi payload, ukuran konteks, ukuran chunk prefill, kapasitas ring KV, dan lain-lain
      • Menyimpan token ID checkpoint, logits float32 untuk token berikutnya, jumlah baris attention terkompresi per layer, baris KV sliding window mentah yang live, baris KV layer terkompresi, tensor compressor frontier, dan sebagainya
  • Waktu penyimpanan checkpoint

    • cold: setelah prompt awal yang panjang mencapai prefix stabil, sebelum generasi
    • continued: saat prefill atau generasi telah berjalan sejauh interval yang ditentukan
    • evict: sebelum request tak terkait menggantikan sesi live di memori
    • shutdown: saat server dimatikan secara normal
  • Saat penyimpanan cold, suffix token kecil dipangkas dan disejajarkan ke batas chunk prefill untuk mencegah miss akibat retokenisasi pada batas BPE di request mendatang
    • Default: prefix minimum 512 token, maksimum 30000 token untuk penyimpanan cold, memangkas 32 token di ekor, dan alignment chunk 2048 token
  • Secara default, checkpoint dapat digunakan ulang antar varian routed-expert 2-bit dan 4-bit jika prefix tokennya cocok
    • --kv-cache-reject-different-quant dapat dipakai untuk membatasi reuse hanya pada kuantisasi yang sama

Backend

  • Backend default adalah Metal (--metal)
  • Jalur referensi/debug CPU juga ada (--cpu), tetapi bukan target produksi
    • Server khusus Metal, dan implementasi yang dioptimalkan ada di jalur graf Metal
  • Lisensi MIT, implementasi C/Objective-C/Metal

1 komentar

 
GN⁺ 8 jam lalu
Komentar Hacker News
  • Saya mencobanya bersama Claude Code pada codebase yang sudah ada, dan tampaknya cukup bisa menjalankan tugasnya meski modelnya dikuantisasi 2-bit
    Pemrosesan prompt memang memakan beberapa menit, tetapi pengeditan aktual cukup cepat, lebih dari 20 token/detik
    Untuk tugas kecil, ini berhasil menelusuri kode, menerapkan perubahan, dan menulis tes, tetapi gagal memperbaiki satu hal sepele yang saya tunjukkan
    Yang lebih buruk, saat memecahkan masalah lain, ia berhalusinasi dengan membawa percakapan tentang “The Duck” yang sedang berlangsung secara bersamaan. Mungkin itu salah satu contoh prompt awal Claude Code

  • Dulu saya pernah membuat sesuatu yang sangat mirip untuk model Qwen3. Hanya menjalankan Qwen3, hanya mendukung sebagian kuantisasi, memuat dari GGUF, dan memakai inferensi yang dioptimalkan Claude secara iteratif
    Semuanya kecil, hanya beberapa file dan mudah dipahami, jadi proyek ini dibuat agar mahasiswa bisa belajar dengan bereksperimen menambahkan strategi decoding atau hal seperti abliteration. Framework terkenal terlalu besar dan rumit untuk di-hack, sementara proyek pendidikan sering berhenti di hal lama seperti GPT-2
    Awalnya memang untuk pendidikan, tetapi ada ide yang terus terngiang di kepala saya. Bagaimana kalau membuat mesin inferensi yang sangat dioptimalkan khusus untuk kombinasi GPU+model tertentu? GPU mahal dan makin sulit didapat, jadi jika abstraksinya cukup banyak dibuang dan disesuaikan langsung dengan hardware/model yang tepat, sepertinya optimasinya bisa besar
    Masalahnya, kalau modelnya usang, semuanya harus diulang dari nol

    • Mesin inferensi yang sudah digunakan saat ini sebenarnya sudah mencakup komponen backend yang dioptimalkan untuk berbagai hardware
      Pada platform yang kurang populer memang masih ada ruang peningkatan performa yang mudah didapat, tetapi tidak banyak ruang untuk membuat runner model super-optimal khusus keluarga GPU tertentu dan mendapat performa yang jauh lebih baik. Perhitungan inti sudah ditangani kernel yang sangat dioptimalkan untuk masing-masing GPU
      Ada juga fork llama.cpp yang dioptimalkan agar berjalan lebih baik di arsitektur CPU, tetapi kecuali para maintainer benar-benar tidak sepakat, waktu akan lebih berguna dipakai untuk menggabungkan perbaikan seperti itu ke upstream daripada membuat runner terpisah untuk model+GPU tertentu
    • Ini mengingatkan saya pada jawaban code golf FizzBuzz performa tinggi yang terkenal. Kalau optimasi seperti itu bisa diterapkan ke inferensi, rasanya kecepatan mungkin bisa naik lebih dari 10x
      https://codegolf.stackexchange.com/questions/215216/high-thr...
    • Selain itu, saya juga berpikir: bagaimana kalau chip-nya dirancang mengikuti model? Bagaimana kalau berpindah dari digital ke analog dan merepresentasikan vektor sebagai tegangan, bukan bit?
      Apakah perkalian matriks yang berat itu bisa ditangani dengan op-amp? Dan mungkinkah pendekatan analog seperti ini jauh lebih efisien daripada batas representasi berbasis bit?
    • Mojo tampaknya mengejar tujuan seperti mesin yang sangat dioptimalkan dan spesifik hardware, tetapi di sini hampir tidak disebut sama sekali
    • Saya pernah membuat sesuatu yang mirip. Salah satu masalahnya adalah LLM benar-benar buruk dalam menulis shader yang bagus. Saya menghabiskan terlalu banyak waktu hanya untuk membuatnya sedikit tidak terlalu kacau
  • Sekarang AI modern bahkan bisa melakukan optimasi kernel, jadi menurut saya lebih banyak orang seharusnya mencoba membuat inferensi yang lebih baik untuk hardware mereka sendiri
    Saya punya W7900 lama (RDNA3), dan selain 48GB VRAM, metrik seperti 123 FP16 TFLOPS/INT8 TOPS dan bandwidth memori 864GB/s sebenarnya cukup bagus. Tetapi dukungan ROCm dari AMD maupun dukungan llama.cpp terkenal sangat buruk
    Belakangan saya mulai men-tuning model W8A8-INT8 agar kartu ini bisa dipakai sebagai endpoint agen/koding khusus. Selama beberapa hari saya menjalankan sekitar 800 iterasi otomatis dan mencoba berbagai model frontier/SOTA, dan ternyata Kimi K2.6 bekerja sangat baik. Hasilnya, untuk Qwen3.6 MoE, prefill 20% lebih cepat dan decode 50% lebih cepat dibanding angka terbaik llama.cpp
    Sekarang saya masih mendalami optimasi MTP dan DFlash dan hasilnya cukup memuaskan, lalu berikutnya saya ingin mencoba Gemma 4

    • Saya ada di situasi serupa dengan 7900xtx. VRAM 24GB dan performa di atas kertas bagus, tetapi pada praktiknya kebanyakan hal tidak berjalan dengan baik
      Meski begitu, llama.cpp mungkin bukan yang paling kencang, tetapi bisa menjalankan sebagian besar model secara konsisten. MTP-nya kurang, dan tampaknya ada masalah invalidasi cache pada model hybrid, tetapi setidaknya saya tahu apa yang bisa jalan
      Inferencer berbasis Python bercampur antara uv/venv, venv saya, environment sistem, Python, dan pustaka, sampai-sampai rasanya butuh agen hanya untuk mencari tahu apa yang sebenarnya sedang berjalan. Saya tahu ini masalah skill atau user error, tetapi saya memang tidak punya waktu untuk itu
      Walau belum sempurna, kalau diunggah ke GitHub atau Hugging Face, agen lain bisa mulai dari sana alih-alih dari nol. Saya melakukan itu untuk Ling-2.6-flash (107B-A7B4 MoE), dan itulah LLM terbesar yang bisa saya jalankan secara praktis di hardware lain yang saya punya untuk LLM lokal, yaitu M2 Max
      Walaupun MTP belum bekerja dengan baik, itu tetap lebih baik daripada kondisi saat ini di mana llama.cpp sama sekali tidak bisa menjalankan Ling-2.6-flash. Diskusi terkait ada di https://huggingface.co/inclusionAI/Ling-2.6-flash/discussion..., kuantisasi 4-bit di https://huggingface.co/ljupco/Ling-2.6-flash-GGUF, dan branch-nya di https://github.com/ljubomirj/llama.cpp/tree/LJ-Ling-2.6-flas...
    • Akan bagus jika pengetahuan dan hasilnya dibagikan
      Menurut saya llama.cpp seharusnya bisa jauh lebih baik dalam mendukung PC. Sebagiannya mungkin karena dukungan vendor yang buruk, tetapi dengan begitu banyak pengguna, tetap mengejutkan bahwa kita tidak melihat lebih banyak inferensi yang dioptimalkan untuk PC standar
  • Ini sangat keren. Saya penasaran seperti apa hasilnya jika satu model open source dioptimalkan secara intensif selama beberapa bulan
    Bukan hanya inferensi serving, tetapi juga optimasi harness dan workflow khusus, untuk melihat seberapa besar celah yang bisa ditutup terhadap frontier model yang memang unggul dalam penalaran dan derivasi, sementara model open source pada dasarnya masih tertinggal karena batas ukuran atau pelatihan

    • Akan selalu ada kesenjangan besar antara frontier model dan model open source. Apalagi kalau Anda bukan orang sangat kaya, dan seluruh industri ini juga mengabaikan unit economics, jadi tidak masuk akal
      Menjalankan Kimi 2.6 pada kecepatan token/detik yang layak menghabiskan $20.000 per bulan, dan agar token itu bisa dijual sambil tetap untung, biaya hardwarenya harus di bawah $1.000 per bulan
      Kalau Anda menggantungkan kemampuan masa depan pada kemurahan hati para miliarder yang menjual token di harga 1/10 hingga 1/20 biaya sebenarnya, atau pada fantasi bahwa model open source yang kompeten akan muat di hardware konsumen, ya sebenarnya sudah selesai
  • Ada data point yang lucu, menarik, dan cukup banyak bicara. MacBook M3 Max saya naik hingga 50W saat DS4 menghasilkan token pada kecepatan maksimum

    • Internet tampaknya belum siap menerima data point bahwa “pusat data LLM secara teknis lebih efisien energi per pengguna daripada LLM self-hosted berkat skala ekonomi”
    • Menarik memikirkan berapa banyak daya yang dibutuhkan mesin seperti ini untuk “berpikir”. Saya memang membayangkan “banyak”, tetapi enak juga melihat angkanya
      Jika DS4 Flash mencapai puncak 50W dan punya 280B parameter, apakah DS4 Pro 1.6T parameter kira-kira akan berada di sekitar 300W? GPT 5 dan Opus terbaru rasanya juga ada di kisaran 500W
      Saat memakai Claude Code dan modelnya ngoceh sendiri panjang lebar, apakah masuk akal membayangkan bahwa di suatu pusat data ada 500W yang sedang dibakar untuk itu?
    • Mungkin tidak semua orang langsung sadar, tetapi ini hasil yang sangat bagus dan mengesankan. Di M4 Max saya, kebanyakan model menghabiskan 150W
    • Saya penasaran apakah angka itu benar. Saya juga penasaran bagaimana orang yang tidak terlalu paham hardware bisa mengukurnya
    • Itu setara penggunaan daya sekitar 2–3 otak manusia. Pekerjaan yang luar biasa
  • Di Mac Studio tidak ada opsi untuk memesan lebih dari 96GB RAM. Hal yang sama juga berlaku pada M3 Ultra maupun M4 Max. Saya tidak tahu apakah ini khusus Australia
    Sementara itu MacBook Pro bisa dikonfigurasi ke 128GB pada Mac M5
    https://www.apple.com/au/shop/buy-mac/mac-studio

    • Sulit percaya memori ini dibuat dari unobtanium
      Apple mungkin memilih untuk tidak memberi harga sama sekali daripada menghadapi kontroversi harga yang terasa seperti pemerasan atau reaksi atas kekurangan stok
    • Bukan cuma Australia: https://9to5mac.com/2026/05/05/apples-most-powerful-mac-stud...
      Semua konfigurasi Mac Studio di atas 96GB dan Mac mini model dasar sudah dihapus. Ada juga rumor bahwa konfigurasi dasar Neo sedang dipertimbangkan untuk ditarik dari pasar
      Sepertinya beginilah mereka menangani keterbatasan kapasitas fab dan pasokan RAM
    • Studio sekarang sudah merupakan produk yang cukup tua. Kalau nanti ada model baru, kemungkinan besar akan hadir dengan opsi memori lebih besar. Meski begitu, 128GB M5 Max MBP tetap luar biasa
  • Saya tidak yakin apakah saya melewatkan benchmark motivasional atau target yang sederhana
    Dugaan saya ini lebih cepat daripada memakai toolchain umum, atau memungkinkan menjalankan model yang lebih besar dan lebih pintar, tetapi tampaknya tidak dijelaskan dengan jelas seberapa besar peningkatan yang sudah dicapai atau yang diharapkan dibanding baseline itu
    Mungkin angka yang disajikan bisa dipakai menghitungnya jika orang tahu nilai pembanding yang relevan

  • Sangat mengesankan. Hanya saja agak aneh bahwa untuk input besar, waktu sampai mulai merespons tampaknya sekitar 4 menit
    Saya tidak memakai LLM di hardware Mac, tetapi ini cukup mengejutkan dan tampaknya akan menjadi hambatan besar untuk penggunaan nyata
    Namun untuk penggunaan umum, penjelasan tentang caching membuatnya jauh lebih masuk akal. Claude Code biasanya bisa mengirim prompt awal besar sekitar 25k token sebelum mulai melakukan pekerjaan berguna, dan jika --kv-disk-dir diaktifkan, cache KV di disk bisa memakai ulang prefix yang tersimpan setelah prefill mahal pertama, sehingga seluruh prompt tidak perlu diproses ulang

    • Itu memang terjadi ketika agen koding mengirim system prompt yang sangat besar. Hal yang sama juga terjadi saat tool call berikutnya menyisipkan file besar atau diff
      Tetapi di M3 Ultra, kecepatan prefill hampir 500 token/detik, jadi masih cukup layak dipakai. M3 Max butuh sedikit lebih banyak kesabaran tetapi tetap bekerja dengan baik, dan kalau memakai pi agent, ia menampilkan proses berpikirnya, jadi alih-alih menunggu, Anda malah membaca chain of thought yang tidak disensor
      Kemarin saya mengunggah video di X saat memakainya di M3 Max, dan token keluar dengan kecepatan yang cukup bagus
    • Di M5, prefill lebih cepat, sementara generasi sebelumnya sedikit lebih lemah
  • Untuk LLM besar di MacBook, kecepatan generasi token masih bisa diterima, tetapi masalahnya adalah membaca konteks
    Yang jadi masalah bukan pembacaan inkremental dengan cache KV seperti pada sesi chat, melainkan saat membaca input besar seperti menempelkan file besar. Itu bisa memakan beberapa menit

    • DS4 bisa memproses 460 token prompt per detik. Tidak luar biasa, tetapi juga tidak terlalu lambat. Itu di M3 Max, lihat benchmark di README
    • Bisakah seseorang menjelaskan dengan sederhana mengapa inferensi lokal seperti ini terasa lambat, sedangkan model hosted terasa sangat cepat?
    • Kalau saya tidak salah paham, repositori ini membahas menjalankan dengan kuantisasi 2-bit
      Kemungkinan besar ini cukup jauh dari kecerdasan asli yang ditawarkan penyedia cloud
      Meski begitu, ini menunjukkan potensi LLM lokal untuk workflow berbasis agen dengan lebih baik
    • Mengapa fenomena seperti ini terjadi?
      Apakah ada arsitektur yang tidak bergantung pada memasukkan ulang seluruh riwayat percakapan? Mungkin sesuatu seperti LLM rekuren?