สรุปสั้น ๆ
- fm ติดตั้งมาพร้อม macOS 27 พิมพ์
fmใน Terminal เพื่อดูคำสั่ง เช่นrespond,chatและschema(Apple) - โดยค่าเริ่มต้นจะใช้โมเดลบนอุปกรณ์ที่มากับ macOS ส่วน
--model pccจะส่งพรอมต์ไปยังโมเดลบน Private Cloud Compute ของ Apple ที่ใหญ่กว่ามาก ซึ่งมีขีดจำกัดการใช้งาน - โมเดลบนอุปกรณ์ต้องใช้ Mac ที่รองรับ Apple Intelligence (M1 ขึ้นไป) Apple Intelligence ใช้พื้นที่จัดเก็บสูงสุด 14 GB บน Mac ที่มี M3 ขึ้นไปและหน่วยความจำ 12 GB ขึ้นไป และสูงสุด 8 GB บนเครื่องอื่น (Apple)
- หน้าต่างบริบทเล็ก: 4,096 โทเค็นในเอกสารของ Apple และ 8,192 ในโค้ดตัวอย่างจาก WWDC26 สำหรับเอกสารยาวหรืองานที่ยากกว่า โมเดลแบบเปิดบน GPU ของ Mac ไปได้ไกลกว่า ดู Mac ของคุณรันอะไรได้
1fm คืออะไร
fm คือเครื่องมือบรรทัดคำสั่งของ Apple สำหรับ Apple Foundation Models ซึ่งเป็นโมเดลเบื้องหลัง Apple Intelligence Apple กล่าวในเซสชัน WWDC26 ที่พูดถึงเครื่องมือนี้ว่า "Starting from macOS 27, this command line tool comes pre-installed on your Mac" แค่เปิด Terminal แล้วพิมพ์ fm (Apple) Apple นำเสนอมันสำหรับงานสคริปต์และระบบอัตโนมัติ "without writing a line of app code" (Apple)
มันใช้โมเดลได้สองตัว โดยค่าเริ่มต้นใช้ "the on-device model that comes with macOS, and that's always available" และยังใช้ Apple Foundation Model บน Private Cloud Compute ได้ ซึ่ง Apple เรียกว่า "a much bigger model than the on-device model" ที่ "will perform better on complex problems" และ "has usage limits" (Apple) โมเดลบนอุปกรณ์รันบน Mac ของคุณและทำงานได้โดยไม่ต้องต่ออินเทอร์เน็ต (Apple) ส่วนพรอมต์ที่ส่งไป Private Cloud Compute จะไปยังเซิร์ฟเวอร์ของ Apple
fm เป็นซอฟต์แวร์ของ Apple และไม่เกี่ยวข้องกับ MLX Network MLX Network เป็นโครงการอิสระและไม่ได้เกี่ยวข้องกับ Apple
2คำสั่งต่าง ๆ
นี่คือคำสั่งและตัวเลือกที่ Apple แสดงในเซสชัน WWDC26 (Apple, Apple)
| คำสั่งหรือตัวเลือก | หน้าที่ |
|---|---|
fm | แสดงรายการคำสั่งที่ใช้ได้ |
fm respond "…" | ส่งพรอมต์ให้โมเดลแล้วพิมพ์คำตอบ สำหรับสคริปต์และคำถามครั้งเดียว |
fm chat | บทสนทนาแบบโต้ตอบใน Terminal ระหว่างนั้น /model จะสลับไปใช้โมเดล Private Cloud Compute และ /save จะบันทึกบทสนทนาไว้คุยต่อภายหลัง |
fm schema object | สร้าง schema เพื่อให้ fm respond ส่งคืน JSON แบบมีโครงสร้าง |
--model pcc | ส่งพรอมต์ไปยังโมเดล Private Cloud Compute แทนโมเดลบนอุปกรณ์ |
--image | เพิ่มรูปภาพลงในพรอมต์ |
--schema | ให้คำตอบเป็นไปตาม schema ที่สร้างด้วย fm schema object |
--instructions | ให้คำสั่งแก่โมเดลแยกจากพรอมต์ |
--help | แสดงตัวเลือกทั้งหมด |
fm อย่างเดียวก็จะเห็นรายการทั้งหมดบน Mac ของคุณตัวอย่างของ Apple เองจากเซสชัน:
fm respond "Provide a basic regex in Swift to parse an email address"
fm respond "Provide a comprehensive regex in Swift to parse an email address" --model pcc
fm schema object --name AppsIdentified --string app_names --array > schema.json
fm respond "What apps are the user actively using in this screenshot?" \
--image Screenshot.png --model pcc --schema schema.json
# {"app_names": ["Messages", "Mail", "Calendar"]}
fm respond --helpfm serve, fm available และ fm license แต่เซสชัน WWDC26 ของ Apple และเอกสาร Foundation Models ที่เราอ่านไม่ได้อธิบายคำสั่งเหล่านี้ คู่มือนี้จึงไม่อธิบายด้วย รัน fm บน Mac ของคุณเพื่อดูว่าเวอร์ชันของคุณมีอะไรบ้าง3สิ่งที่ต้องมี และต้องดาวน์โหลดเท่าไร
- macOS 27 fm มาพร้อมกับระบบนี้ (Apple)
- Mac ที่รองรับ Apple Intelligence Apple Foundation Models ต้องใช้ (Apple) บน macOS 27 ได้แก่ Mac ทุกเครื่องที่มี M1 ขึ้นไป (Apple)
- ภาษาที่รองรับ Apple Intelligence ต้องตั้งภาษาของอุปกรณ์และภาษาของ Siri เป็นภาษาที่รองรับภาษาเดียวกัน และขณะนี้ยังใช้ไม่ได้กับอุปกรณ์ที่ซื้อในจีนแผ่นดินใหญ่ (Apple)
- พื้นที่ดิสก์ว่าง สำหรับ Apple Intelligence ตามตารางด้านล่าง
| Mac | พื้นที่ของ Apple Intelligence บน macOS 27 |
|---|---|
| M3 ขึ้นไป ที่มีหน่วยความจำแบบรวมอย่างน้อย 12 GB | สูงสุด 14 GB |
| Mac อื่นที่มี Apple Intelligence (M1, M2 หรือหน่วยความจำน้อยกว่า 12 GB) | สูงสุด 8 GB |
หลังเปิด Apple Intelligence โมเดลอาจยังใช้ไม่ได้สักพัก เฟรมเวิร์กของ Apple จะรายงานว่ายังไม่พร้อม "because it's downloading or because of other system reasons" (Apple)
สำหรับ Python SDK ซึ่งใช้โมเดลบนอุปกรณ์ตัวเดียวกัน Apple ระบุ macOS 26.0 ขึ้นไป Xcode 26.0 ขึ้นไปที่ยอมรับข้อตกลงแล้ว และ Python 3.10 ขึ้นไป (Apple) บน Mac ที่ใช้ Apple silicon (Apple)
4โมเดลบนอุปกรณ์เก่งเรื่องอะไร และไปได้แค่ไหน
Apple พูดไว้ชัดเจนว่า โมเดลบนอุปกรณ์เก่งงานสร้างข้อความหลากหลาย เช่น การสรุป การดึงข้อมูลเอนทิตี การเข้าใจข้อความและรูปภาพ การเกลาข้อความ บทสนทนาในเกม และการสร้างเนื้อหาสร้างสรรค์ เมื่อต้องการความสามารถด้านการให้เหตุผลและบริบทที่มากขึ้น ให้ใช้ Private Cloud Compute หรือผู้ให้บริการโมเดลบนเซิร์ฟเวอร์รายใดก็ได้ (Apple)
- หน้าต่างบริบทเล็ก เอกสารของ Apple ระบุว่าโมเดลบนอุปกรณ์มี "a context window of 4096 tokens per session" (Apple) และระบุ 4K เทียบกับ 32K ของ Private Cloud Compute (Apple) ในเซสชัน WWDC26 เรื่อง macOS 27 โค้ดตัวอย่างของ Apple พิมพ์
contextSizeออกมาเป็น 8,192 (Apple) พรอมต์ คำสั่ง และคำตอบใช้หน้าต่างนี้ร่วมกัน - ใส่ได้แค่ไหน ในภาษาอังกฤษ หนึ่งโทเค็นมักยาวสามถึงสี่ตัวอักษร (Apple) ดังนั้น 8,192 โทเค็นจึงประมาณ 25,000 ถึง 33,000 ตัวอักษร รวมทั้งขาเข้าและขาออก คือไม่กี่หน้า ไม่ใช่ทั้งเล่มหรือทั้งโค้ดเบส
- พรอมต์สั้นและเรียบง่าย "An on-device model has fewer parameters and a small context window" Apple จึงขอให้เขียนพรอมต์แบบ "short and succinct" และบอกว่าโมเดลบนอุปกรณ์ "have limited reasoning abilities" ให้แบ่งงานยากเป็นขั้น ๆ (Apple)
- มันเปลี่ยนไปตาม macOS Apple อัปเดตโมเดลผ่านการอัปเดตระบบ และ macOS 27 มีเวอร์ชันใหม่ (Apple) ผลลัพธ์ของสคริปต์อาจเปลี่ยนไปหลังอัปเดต
Apple ไม่ได้ระบุขนาดของโมเดลบนอุปกรณ์ในหน้าเหล่านี้ เราจึงไม่ระบุเช่นกัน
5ใช้ fm จากสคริปต์และโค้ด
fm respond พิมพ์คำตอบออกมา จึงใส่ในเชลล์สคริปต์ใดก็ได้ เมื่อใช้ --schema คำตอบจะเป็น JSON ที่ส่งต่อให้ jq ได้ เซสชันของ Apple จัดโฟลเดอร์โปรเจกต์ด้วยวิธีนี้ คือถามโมเดลว่าไฟล์ไหนเป็นฉบับสุดท้าย ไฟล์ไหนเป็นฉบับร่าง แล้วคัดลอกและย้ายไฟล์ ตัดย่อจากตัวอย่างของ Apple (Apple):
fm schema object --name "TriagedFileList" \
--string 'final_files' --array \
--string 'draft_files' --array > /tmp/schema.json
output=$(fm respond \
--instructions "Return the latest files, then separately all draft files." \
"This is the list of all files:\n\n${files_list}" \
--schema /tmp/schema.json
)
echo "${output}" | jq -r '.draft_files[]'สำหรับ Python มี Foundation Models SDK ของ Apple ติดตั้งด้วย pip install apple_fm_sdk ใช้โมเดลบนอุปกรณ์ตัวเดียวกัน พร้อมการสร้างแบบมีแนวทางและการเรียกใช้เครื่องมือ (Apple) ตัวอย่างของ Apple:
import apple_fm_sdk as fm
model = fm.SystemLanguageModel()
is_available, reason = model.is_available()
if is_available:
session = fm.LanguageModelSession(model=model)
response = await session.respond(prompt="Hello!")
print(response)แอปและเอเจนต์เขียนโค้ดจำนวนมากต้องการ API แบบ OpenAI หรือ Anthropic บนพอร์ตในเครื่องแทน ถ้าคุณต้องการแบบนั้น mlx_lm.server จะให้บริการโมเดลแบบเปิดที่คุณเลือกผ่าน API แบบ OpenAI ที่ localhost:8080 (mlx-lm) และเซิร์ฟเวอร์ในเครื่องของ LM Studio รองรับรูปแบบ OpenAI และ Anthropic (LM Studio) ตัวเลือกอื่น: แอปที่ดีที่สุดสำหรับรัน LLM บน Mac
6เมื่อไรควรเปลี่ยนไปใช้โมเดลแบบเปิด
ใช้ fm กับงานสั้น ๆ เช่น สรุปโน้ต ตั้งชื่อไฟล์ ดึงฟิลด์จากข้อความ หรือถามคำถามเร็ว ๆ มันอยู่บน Mac แล้วและไม่ต้องตั้งค่าอะไร ให้หันไปใช้โมเดลแบบเปิดเมื่ออินพุตไม่พอดีกับไม่กี่พันโทเค็น เมื่องานต้องใช้การให้เหตุผลหรือโค้ดมากขึ้น เมื่อคุณอยากเลือกโมเดลเอง หรือเมื่อเครื่องมือต้องใช้ API
โมเดลแบบเปิดรันบน GPU ของ Mac และสิ่งที่ใส่ได้ขึ้นอยู่กับหน่วยความจำแบบรวม การคำนวณใน Compare ของเราให้ GPU ราว 75% โดยค่าเริ่มต้น และเผื่อที่ไว้สำหรับบริบท
| หน่วยความจำของ Mac | สำหรับ GPU | รันได้ดี ตัวอย่างเช่น | หน่วยความจำที่ต้องใช้ |
|---|---|---|---|
| 8 GB | ราว 6 GB | Llama 3.1 8B แบบ 4 บิต | 4.5 GB, 6.0 GB เมื่อรวมบริบท |
| 16 GB | ราว 12 GB | Llama 3.1 8B แบบ 8 บิต, Qwen3.5 9B แบบ 6 บิต | 8.5 GB และ 7.3 GB, 10.0 และ 8.8 GB เมื่อรวมบริบท |
| 24 GB | ราว 18 GB | gpt-oss-20b แบบเนทีฟ 4.25 บิต | 13.8 GB, 15.3 GB เมื่อรวมบริบท |
| 32 GB | ราว 24 GB | Qwen3.6 35B A3B แบบ 4 บิต | 19.7 GB, 21.3 GB เมื่อรวมบริบท |
การ์ดของโมเดลเหล่านี้ระบุหน้าต่างบริบทที่ยาวกว่ามาก คือ 128K โทเค็นสำหรับ Llama 3.1 8B และ 262,144 สำหรับ Qwen3.6 35B A3B แต่บริบทยาวต้องใช้หน่วยความจำมากกว่าที่เผื่อไว้ข้างต้น ไม่แน่ใจว่า Mac ของคุณมีเท่าไร? ไปที่เมนู Apple เกี่ยวกับ Mac เครื่องนี้ แล้วดู Mac แยกตามชิป
mlx-lm เป็นวิธีหนึ่งในการรันโมเดลเหล่านี้ เครื่องมือ MLX ของ Apple เองดาวน์โหลดโมเดล MLX จาก Hugging Face แชตกับโมเดลใน Terminal และให้บริการ API ในเครื่องตามที่กล่าวข้างต้น LM Studio และ Ollama ทำแบบเดียวกันในรูปแอป (แอปที่ดีที่สุดสำหรับรัน LLM บน Mac) ตอนที่คุณไม่ได้ใช้ Mac MLX Node สามารถรันงาน AI ให้ MLX Network ภายในขีดจำกัดที่คุณตั้งไว้ และได้รับโทเค็น MLX สำหรับงานที่ผ่านการตรวจสอบ โทเค็น MLX อาจสูญเสียมูลค่าได้ อ่านความเสี่ยง
7คำถาม
- คำสั่ง fm บน macOS ใช้ฟรีไหม?
- มันติดตั้งมาพร้อม macOS 27 และโดยค่าเริ่มต้นใช้โมเดลบนอุปกรณ์ที่มากับ macOS ส่วนโมเดล Private Cloud Compute ที่ใหญ่กว่ามีขีดจำกัดการใช้งาน (Apple)
- fm ใช้แบบออฟไลน์ได้ไหม?
- ได้ เมื่อใช้โมเดลบนอุปกรณ์ Apple บอกว่ามันทำงานได้โดยไม่ต้องต่ออินเทอร์เน็ต (Apple) แต่ต้องดาวน์โหลด Apple Intelligence ก่อน และ
--model pccหรือ/modelในfm chatจะใช้เซิร์ฟเวอร์ของ Apple - fm รับพรอมต์ได้ยาวแค่ไหน?
- พรอมต์ คำสั่ง และคำตอบใช้หน้าต่างบริบทเดียวกัน คือ 4,096 โทเค็นในเอกสารของ Apple และ 8,192 ในตัวอย่าง WWDC26 ของ Apple สำหรับ macOS 27 (Apple) ในภาษาอังกฤษ หนึ่งโทเค็นประมาณสามถึงสี่ตัวอักษร
- fm มี API ที่เข้ากันได้กับ OpenAI ไหม?
- เซสชัน WWDC26 ของ Apple และเอกสาร Foundation Models ที่เราอ่านไม่ได้อธิบายโหมดเซิร์ฟเวอร์ เราจึงยืนยันไม่ได้ว่าทำงานอย่างไร ถ้าต้องการ API ในเครื่องที่มีเอกสาร
mlx_lm.serverให้บริการโมเดลแบบเปิดที่ localhost:8080 แบบ OpenAI และ LM Studio ให้บริการในรูปแบบ OpenAI และ Anthropic - Mac รุ่นไหนใช้ fm ได้?
- Mac ที่ใช้ macOS 27 และรองรับ Apple Intelligence คือ Mac ทุกเครื่องที่มี M1 ขึ้นไป ตั้งเป็นภาษาที่รองรับ และมีพื้นที่ว่างสูงสุด 14 GB (M3 ขึ้นไปที่มีหน่วยความจำ 12 GB ขึ้นไป) หรือสูงสุด 8 GB (Apple)
แหล่งที่มา
- Appledeveloper.apple.com
- Applesupport.apple.com
- Appledeveloper.apple.com
- Appledeveloper.apple.com
- Appledeveloper.apple.com
- Appledeveloper.apple.com
- Applegithub.com
- Appledeveloper.apple.com
- Appledeveloper.apple.com
- Appledeveloper.apple.com
- mlx-lmgithub.com
- LM Studiolmstudio.ai
- Llama 3.1 8Bhuggingface.co
- Qwen3.6 35B A3Bhuggingface.co
- mlx-lmgithub.com