ดาวน์โหลดและรัน LLM บน Mac ของคุณ

การรันโมเดลบนเครื่องเริ่มจากการหาไฟล์ที่ใช่: ฟอร์แมตที่ตรงกับแอป ขนาดที่หน่วยความจำของ Mac รองรับ และควอนไทเซชันที่ยังคงคุณภาพไว้ นี่คือวิธีเลือก ดาวน์โหลด และรันโมเดลแบบเปิดบน Apple Silicon

อัปเดต

สรุปสั้น ๆ

  • โมเดลแบบเปิดอยู่บน Hugging Face บน Mac ให้มองหาบิลด์ MLX (มักมาจาก mlx-community) หรือไฟล์ GGUF สำหรับ llama.cpp, Ollama และ LM Studio
  • หน่วยความจำกำหนดว่าอะไรใส่ได้: โมเดล MLX 4 บิตใช้ราว 0.56 GB ต่อพารามิเตอร์หนึ่งพันล้าน บวกพื้นที่สำหรับคอนเท็กซ์และ macOS
  • โมเดล gated ต้องมีบัญชี Hugging Face ฟรี ยอมรับสัญญาอนุญาต และมีโทเค็น
  • รันได้ด้วย MLX Harness, mlx-lm, LM Studio หรือ Ollama

1หาโมเดลได้ที่ไหน

Hugging Face เป็นแหล่งรวมโมเดล open-weight ส่วนใหญ่ โมเดลเดียวกันมักมีหลายบิลด์ และฟอร์แมตเป็นตัวกำหนดว่าแอปไหนรันได้:

ฟอร์แมตหน้าตาเป็นอย่างไรรันใน
MLXโฟลเดอร์ของไฟล์ safetensors พร้อม config.json ชื่อแบบ Model-4bitmlx-lm, LM Studio, MLX Harness
GGUFไฟล์ .gguf หนึ่งหรือไม่กี่ไฟล์ ชื่อแบบ Q4_K_Mllama.cpp, Ollama, LM Studio
ค่าน้ำหนักต้นฉบับsafetensors ความแม่นยำเต็มจากผู้สร้างโมเดลแปลงเป็น MLX ก่อน หรือเลือกบิลด์สำเร็จรูป
บิลด์ MLX สำเร็จรูปของโมเดลยอดนิยมเผยแพร่โดยองค์กร mlx-community และ mlx-lm สร้างบิลด์ของคุณเองได้ (mlx-lm)

ไม่แน่ใจว่าจะใช้รันไทม์ไหน MLX vs Ollama vs llama.cpp เปรียบเทียบไว้ให้ เพิ่งเริ่มต้นใช่ไหม เริ่มจากการรัน LLM บน Mac

2เลือกขนาดที่พอดีกับหน่วยความจำ

ค่าน้ำหนักของโมเดลต้องใส่ในหน่วยความจำได้โดยเหลือที่ว่าง MLX เก็บค่าน้ำหนักที่ควอนไทซ์แล้วเป็นบิตของมัน บวกสเกลและไบแอสที่ใช้ร่วมกันสำหรับทุกกลุ่มค่าน้ำหนัก 64 ตัว เพิ่มขึ้นราวครึ่งบิตต่อค่าน้ำหนัก (MLX) ดังนั้น 4 บิตใช้ราว 0.56 GB ต่อพารามิเตอร์หนึ่งพันล้าน และ 8 บิตราว 1.06 GB

พารามิเตอร์4 บิต (MLX)8 บิต (MLX)16 บิต
3 พันล้านราว 1.7 GBราว 3.2 GB6 GB
8 พันล้านราว 4.5 GBราว 8.5 GB16 GB
14 พันล้านราว 7.9 GBราว 14.9 GB28 GB
32 พันล้านราว 18 GBราว 34 GB64 GB
70 พันล้านราว 39 GBราว 74 GB140 GB
เฉพาะค่าน้ำหนัก: พารามิเตอร์ × (บิต + 0.5) ÷ 8 สำหรับบิลด์ MLX ที่ควอนไทซ์แล้ว และ 2 ไบต์ต่อพารามิเตอร์ที่ 16 บิต คอนเท็กซ์ของบทสนทนาและ macOS ต้องการพื้นที่เพิ่มอีก

โดยค่าเริ่มต้น macOS ให้ GPU ใช้หน่วยความจำรวมได้เพียงบางส่วน หน้าเปรียบเทียบถือว่าใช้ได้ราวสามในสี่ และ README ของ mlx-lm แสดงวิธีเพิ่มขีดจำกัดบน macOS 15 ขึ้นไปด้วย sudo sysctl iogpu.wired_limit_mb=N (mlx-lm) สำหรับโมเดล mixture-of-experts พารามิเตอร์ทั้งหมดกำหนดหน่วยความจำ และพารามิเตอร์ที่ทำงานอยู่กำหนดความเร็ว หน้าเปรียบเทียบคำนวณเรื่องนี้ให้ทุกโมเดลยอดนิยมและทุกชิปของ Apple และMac ที่ดีที่สุดสำหรับรัน LLM บนเครื่องอธิบายว่าทำไมแบนด์วิดท์จึงกำหนดความเร็ว

3ควอนไทเซชัน: 4 บิต 8 บิต และอื่น ๆ

ควอนไทเซชันเก็บค่าน้ำหนักแต่ละตัวด้วยบิตที่น้อยลง โมเดลจึงใช้หน่วยความจำน้อยลงและรันเร็วขึ้น แลกกับคุณภาพที่ลดลงบ้าง 4 บิตคือจุดเริ่มต้นที่นิยมบน Mac ส่วน 8 บิตใกล้ต้นฉบับมากกว่าและใหญ่เป็นสองเท่า ต่ำกว่า 4 บิตไฟล์จะเล็กลง แต่คุณภาพคำตอบลดลงเร็วกว่า จึงควรลองเฉพาะเมื่อโมเดลที่ใหญ่กว่าใส่ไม่ได้ด้วยวิธีอื่น

  • บิลด์ MLX บอกไว้ในชื่อ: -4bit, -8bit และบางครั้งเป็นบิลด์ความแม่นยำผสมที่เก็บเลเยอร์ที่อ่อนไหวไว้ด้วยบิตมากกว่า
  • ไฟล์ GGUF ใช้ชื่อแบบ llama.cpp: Q4_K_M, Q5_K_M, Q8_0 เป็นต้น เมื่อคุณรันรีโพซิทอรี GGUF จาก Hugging Face ใน Ollama โดยไม่ระบุไฟล์ Ollama จะเลือก Q4_K_M หากมี (Hugging Face)
  • สร้างเอง บิลด์ MLX จากค่าน้ำหนักต้นฉบับ: mlx_lm.convert --model mistralai/Mistral-7B-Instruct-v0.3 -q จะเขียนสำเนา 4 บิต (mlx-lm)

4พื้นที่ดิสก์และที่เก็บโมเดล

ไฟล์ดาวน์โหลดมีขนาดใกล้เคียงกับค่าน้ำหนักในตารางด้านบน โมเดล 8B แบบ 4 บิตจึงมีขนาดไม่กี่กิกะไบต์ ส่วนโมเดล 70B มีขนาดหลายสิบกิกะไบต์ การลองหลายขนาดหรือหลายบิลด์ของโมเดลเดียวกันจะกินพื้นที่เพิ่มขึ้นอย่างรวดเร็ว

mlx-lm และเครื่องมืออื่นของ Hugging Face เก็บไฟล์ดาวน์โหลดไว้ใน ~/.cache/huggingface/hub ตั้งค่า HF_HOME หรือ HF_HUB_CACHE เพื่อย้ายที่เก็บ hf cache ls แสดงสิ่งที่มีอยู่ และ hf cache rm ลบโมเดล (Hugging Face) Ollama และ LM Studio เก็บโมเดลในโฟลเดอร์ของตัวเองและจัดการเอง

5โมเดล gated และโทเค็น Hugging Face

บางโมเดล เช่น Llama เป็นแบบ gated: คุณต้องยอมรับเงื่อนไขของผู้สร้างก่อนจึงจะดาวน์โหลดได้ (Hugging Face)

  1. ลงชื่อเข้าใช้บัญชี Hugging Face ฟรี แล้วเปิดหน้าของโมเดล
  2. ยอมรับเงื่อนไขด้วยปุ่มบนหน้านั้น (ค่าเริ่มต้นคือ Agree and send request to access repo) ผู้สร้างบางรายอนุมัติคำขอด้วยตนเอง ซึ่งใช้เวลานานกว่า
  3. สร้าง access token ในการตั้งค่า Hugging Face ของคุณ
  4. ส่งโทเค็นให้เครื่องมือ: รัน hf auth login ใน Terminal สำหรับ mlx-lm และเครื่องมืออื่นของ Hugging Face (Hugging Face) หรือวางในช่องโทเค็น Hugging Face ของแอป

6รันได้สี่วิธี

mlx-lm: MLX ของ Apple ใน Terminal

ติดตั้งด้วย pip แล้วระบุชื่อโมเดล MLX ใดก็ได้บน Hugging Face การรันครั้งแรกจะดาวน์โหลดให้ (mlx-lm)

pip install mlx-lm
mlx_lm.generate --model mlx-community/Llama-3.2-3B-Instruct-4bit --prompt "How tall is Mt Everest?"
mlx_lm.chat --model mlx-community/Llama-3.2-3B-Instruct-4bit

mlx_lm.server ให้บริการโมเดลผ่าน API แบบ OpenAI ที่ localhost:8080 สำหรับแอปอื่น (mlx-lm):

mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit
curl localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"messages": [{"role": "user", "content": "Say this is a test!"}]}'

LM Studio: แอปพร้อมตัวค้นหาโมเดล

LM Studio ค้นหาและดาวน์โหลดโมเดลจาก Hugging Face ภายในแอป และรันโมเดล MLX บน Apple Silicon รวมถึง GGUF ผ่าน llama.cpp ต้องใช้ Apple Silicon และ macOS 14 ขึ้นไป และแนะนำหน่วยความจำ 16 GB ขึ้นไป (LM Studio)

Ollama: คำสั่งเดียว

Ollama รันโมเดลจากคลังของตัวเอง และรันรีโพซิทอรี GGUF ใดก็ได้บน Hugging Face โดยตรง จะระบุแท็กควอนไทเซชันด้วยก็ได้ (Hugging Face):

ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:IQ3_M

MLX Harness: แอปฟรีของเรา

MLX Harness คือแอป Mac ฟรีของเราที่สร้างบน vMLX: ค้นหาโมเดล MLX บน Hugging Face แชต รันเครื่องมือและโมเดลภาพ และให้บริการทุกอย่างผ่าน API ในเครื่อง เกตเวย์ของแอปใช้พอร์ต 8080 เช่นกัน จึงไม่ควรรันพร้อมกับ mlx_lm.server บนพอร์ตเดียวกัน เมื่อคุณไม่ได้ใช้ Mac MLX Node จะให้ MLX Network ยืมเครื่องแทนได้

7คำถาม

ดาวน์โหลด LLM สำหรับ Mac ได้ที่ไหน
จาก Hugging Face มองหาบิลด์ MLX ซึ่งหลายตัวเผยแพร่โดย mlx-community หรือไฟล์ GGUF LM Studio และ Ollama ค้นหาและดาวน์โหลดให้คุณได้
ควรดาวน์โหลดโมเดลขนาดเท่าไร
ขนาดที่ค่าน้ำหนักใส่ในหน่วยความจำของ Mac ได้อย่างสบาย: ที่ 4 บิตราว 0.56 GB ต่อพารามิเตอร์หนึ่งพันล้าน ราว 4.5 GB สำหรับโมเดล 8B และ 39 GB สำหรับ 70B บวกพื้นที่สำหรับคอนเท็กซ์ หน้าเปรียบเทียบบน mlx.app ตรวจให้สำหรับ Mac ของคุณ
บน Mac ควรใช้ MLX หรือ GGUF
ทั้งสองรันได้ดีบน Apple Silicon บิลด์ MLX สร้างมาสำหรับ MLX ของ Apple และรันใน mlx-lm, LM Studio และ MLX Harness ส่วนไฟล์ GGUF รันใน llama.cpp, Ollama และ LM Studio
ต้องมีบัญชี Hugging Face ไหม
ไม่ต้องสำหรับโมเดลสาธารณะ โมเดล gated ต้องมีบัญชีฟรี ยอมรับสัญญาอนุญาต และมี access token
รันโมเดลที่ดาวน์โหลดแล้วแบบออฟไลน์ได้ไหม
ได้ เมื่อไฟล์อยู่บน Mac แล้ว โมเดลจะรันได้โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต และพรอมต์ของคุณอยู่บน Mac

แหล่งที่มา

  1. Hugging Facehuggingface.co
  2. mlx-communityhuggingface.co
  3. mlx-lmgithub.com
  4. MLXml-explore.github.io
  5. Hugging Facehuggingface.co
  6. Hugging Facehuggingface.co
  7. Hugging Facehuggingface.co
  8. Hugging Facehuggingface.co
  9. mlx-lmgithub.com
  10. LM Studiolmstudio.ai
  11. LM Studiolmstudio.ai
  12. Ollamaollama.com

อ่านต่อ

ดาวน์โหลด LLM และรันบน Mac แบบโลคอล: คู่มือใช้งานจริง | MLX