دستور fm در macOS: مدل زبانی محلی اپل در Terminal.

macOS 27 همراه با یک ابزار خط فرمان به نام fm می‌آید که مدل زبانی خود اپل را به Terminal می‌آورد: درخواست‌های تکی، گفتگو و JSON ساختاریافته برای اسکریپت‌ها. در اینجا می‌خوانید اپل می‌گوید این ابزار چه می‌کند، Mac شما به چه نیاز دارد، مدل کوچک روی دستگاه کجا متوقف می‌شود و یک مدل باز روی همان Mac به‌جای آن چه می‌تواند بکند.

به‌روزرسانی

به‌طور خلاصه

  • fm از پیش روی macOS 27 نصب است. در Terminal بنویسید fm تا دستورهایش را ببینید، مثل respond، chat و schema (Apple).
  • به‌طور پیش‌فرض از مدل روی دستگاه که همراه macOS است استفاده می‌کند. --model pcc درخواست را به مدل بسیار بزرگ‌تر Private Cloud Compute اپل می‌فرستد که محدودیت استفاده دارد.
  • مدل روی دستگاه به Macی نیاز دارد که از Apple Intelligence پشتیبانی کند (M1 یا جدیدتر). Apple Intelligence روی Macهای دارای M3 یا جدیدتر با 12 GB حافظه یا بیشتر تا 14 GB و روی بقیه تا 8 GB فضای ذخیره‌سازی می‌گیرد (Apple).
  • پنجرهٔ زمینه‌اش کوچک است: 4,096 توکن در مستندات اپل و 8,192 در یک نمونه‌کد WWDC26. برای اسناد طولانی یا کارهای سخت‌تر، یک مدل باز روی GPU دستگاه Mac شما جلوتر می‌رود: ببینید Mac شما چه چیزهایی را اجرا می‌کند.

1fm چیست

fm ابزار خط فرمان اپل برای Apple Foundation Models است، مدل‌هایی که پشت Apple Intelligence هستند. اپل در جلسهٔ WWDC26 دربارهٔ آن می‌گوید: «Starting from macOS 27, this command line tool comes pre-installed on your Mac»؛ Terminal را باز می‌کنید و fm را می‌نویسید (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 استفاده کند که اپل آن را «a much bigger model than the on-device model» می‌نامد، مدلی که «will perform better on complex problems» و «has usage limits» (Apple). مدل روی دستگاه روی Mac شما اجرا می‌شود و بدون اتصال به اینترنت کار می‌کند (Apple)؛ اما درخواستی که به Private Cloud Compute فرستاده شود به سرورهای اپل می‌رود.

fm نرم‌افزار اپل است و ربطی به MLX Network ندارد. MLX Network مستقل است و با اپل وابستگی ندارد.

2دستورها

این‌ها دستورها و گزینه‌هایی هستند که اپل در جلسه‌های 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 شما فهرست می‌کند.

نمونه‌های خود اپل از این جلسه:

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 --help
برخی پست‌ها دربارهٔ macOS 27 دستورهایی مثل fm serve، fm available و fm license را هم شرح می‌دهند. جلسه‌های WWDC26 اپل و مستندات 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 Intelligence می‌دهد، نه فقط برای مدلی که fm از آن استفاده می‌کند.

مدل ممکن است پس از روشن کردن Apple Intelligence مدتی در دسترس نباشد: چارچوب اپل گزارش می‌دهد که آماده نیست «because it's downloading or because of other system reasons» (Apple).

برای Python SDK که از همان مدل روی دستگاه استفاده می‌کند، اپل macOS 26.0 یا جدیدتر، Xcode 26.0 یا جدیدتر با پذیرش توافق‌نامه‌اش و Python 3.10 یا جدیدتر را ذکر می‌کند (Apple)، روی یک Mac با Apple silicon (Apple).

4مدل روی دستگاه در چه کاری خوب است و کجا متوقف می‌شود

اپل صریح است: مدل‌های روی دستگاه در طیف گسترده‌ای از کارهای تولید متن عالی‌اند، مثل خلاصه‌سازی، استخراج موجودیت‌ها، درک متن و تصویر، اصلاح نوشته، گفت‌وگو برای بازی‌ها و تولید محتوای خلاقانه؛ وقتی به توان استدلال بیشتر و زمینهٔ بزرگ‌تر نیاز دارید، از Private Cloud Compute یا هر ارائه‌دهندهٔ مدل سروری استفاده کنید (Apple).

  • پنجرهٔ زمینهٔ کوچک. مستندات اپل به مدل روی دستگاه «a context window of 4096 tokens per session» می‌دهد (Apple) و 4K را در برابر 32K برای Private Cloud Compute فهرست می‌کند (Apple). در جلسهٔ WWDC26 دربارهٔ macOS 27، نمونه‌کد اپل مقدار contextSize را 8,192 چاپ می‌کند (Apple). درخواست، دستورالعمل‌ها و پاسخ همه در این پنجره شریک‌اند.
  • چقدر جا می‌گیرد. در انگلیسی هر توکن معمولاً سه تا چهار نویسه است (Apple)، پس 8,192 توکن تقریباً 25,000 تا 33,000 نویسهٔ ورودی و خروجی روی هم است: چند صفحه، نه یک کتاب یا یک پایگاه کد.
  • درخواست‌های کوتاه و ساده. «An on-device model has fewer parameters and a small context window»، پس اپل درخواست‌هایی «short and succinct» می‌خواهد و می‌گوید مدل‌های روی دستگاه «have limited reasoning abilities»: کار سخت را به چند مرحله بشکنید (Apple).
  • با macOS تغییر می‌کند. اپل مدل را با به‌روزرسانی‌های سیستم به‌روز می‌کند؛ macOS 27 نسخهٔ تازه‌ای دارد (Apple). نتیجهٔ یک اسکریپت ممکن است پس از به‌روزرسانی تغییر کند.

اپل در این صفحه‌ها اندازهٔ مدل روی دستگاه را نمی‌گوید، پس ما هم نمی‌گوییم.

5استفاده از fm در اسکریپت‌ها و کد

fm respond پاسخ را چاپ می‌کند، پس در هر اسکریپت shell جا می‌گیرد. با --schema پاسخ JSON است که می‌توانید به jq بدهید. جلسهٔ اپل یک پوشهٔ پروژه را این‌طور مرتب می‌کند: از مدل می‌پرسد کدام فایل‌ها نهایی‌اند و کدام پیش‌نویس، سپس آن‌ها را کپی و جابه‌جا می‌کند. خلاصه‌شده از نمونهٔ اپل (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، SDK مدل‌های پایهٔ اپل هست، pip install apple_fm_sdk، با همان مدل روی دستگاه، تولید هدایت‌شده و فراخوانی ابزار (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 به‌طور پیش‌فرض حدود 75% آن را به GPU می‌دهد و برای زمینه جا می‌گذارد:

حافظهٔ Macبرای GPUبه‌خوبی اجرا می‌شود، مثلاًحافظهٔ لازم
8 GBحدود 6 GBLlama 3.1 8B با 4 بیت4.5 GB، با زمینه 6.0 GB
16 GBحدود 12 GBLlama 3.1 8B با 8 بیت، Qwen3.5 9B با 6 بیت8.5 GB و 7.3 GB، با زمینه 10.0 و 8.8 GB
24 GBحدود 18 GBgpt-oss-20b، بومی 4.25 بیت13.8 GB، با زمینه 15.3 GB
32 GBحدود 24 GBQwen3.6 35B A3B با 4 بیت19.7 GB، با زمینه 21.3 GB
محاسبهٔ ما بر پایهٔ کارت‌های رسمی مدل‌ها: MLX برای هر وزن (بیت‌ها + 0.5) ذخیره می‌کند، به‌علاوهٔ 8% یا 1.5 GB برای زمینه. هرچه هر اندازه اجرا می‌کند، با بازه‌های سرعت: 8 GB، 16 GB، 24 GB، 32 GB.

کارت این مدل‌ها پنجره‌های زمینهٔ بسیار بلندتری را فهرست می‌کند، 128K توکن برای Llama 3.1 8B و 262,144 برای Qwen3.6 35B A3B، هرچند زمینهٔ بلند به حافظه‌ای فراتر از جای محاسبه‌شده در بالا نیاز دارد. مطمئن نیستید Mac شما چه دارد؟ منوی Apple، «دربارهٔ این Mac»، سپس Macها بر اساس تراشه را ببینید.

mlx-lm یکی از راه‌های اجرای آن‌هاست: ابزارهای MLX خود اپل مدل‌های MLX را از Hugging Face دانلود می‌کنند، در Terminal با آن‌ها گفتگو می‌کنند و API محلی بالا را ارائه می‌دهند. LM Studio و Ollama همین کار را در قالب یک اپ انجام می‌دهند (بهترین اپ‌ها برای اجرای LLM روی Mac). وقتی از Mac استفاده نمی‌کنید، MLX Node می‌تواند در محدوده‌هایی که خودتان تعیین می‌کنید کارهای هوش مصنوعی را برای MLX Network اجرا کند و برای کار تأییدشده توکن MLX کسب کند. توکن‌های MLX ممکن است ارزش خود را از دست بدهند؛ ریسک‌ها را بخوانید.

7پرسش‌ها

آیا دستور fm در macOS رایگان است؟
از پیش روی macOS 27 نصب است و به‌طور پیش‌فرض از مدل روی دستگاه که همراه macOS است استفاده می‌کند. مدل بزرگ‌تر Private Cloud Compute محدودیت استفاده دارد (Apple).
آیا fm آفلاین کار می‌کند؟
با مدل روی دستگاه، بله: اپل می‌گوید بدون اتصال به اینترنت کار می‌کند (Apple). ابتدا باید Apple Intelligence دانلود شود، و --model pcc یا /model در fm chat از سرورهای اپل استفاده می‌کنند.
fm چه طولی از درخواست را می‌پذیرد؟
درخواست، دستورالعمل‌ها و پاسخ در یک پنجرهٔ زمینه شریک‌اند: 4,096 توکن در مستندات اپل و 8,192 در نمونهٔ WWDC26 اپل برای macOS 27 (Apple). در انگلیسی این تقریباً سه تا چهار نویسه برای هر توکن است.
آیا fm یک API سازگار با OpenAI ارائه می‌دهد؟
جلسه‌های WWDC26 اپل و مستندات 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).

منابع

  1. Appledeveloper.apple.com
  2. Applesupport.apple.com
  3. Appledeveloper.apple.com
  4. Appledeveloper.apple.com
  5. Appledeveloper.apple.com
  6. Appledeveloper.apple.com
  7. Applegithub.com
  8. Appledeveloper.apple.com
  9. Appledeveloper.apple.com
  10. Appledeveloper.apple.com
  11. mlx-lmgithub.com
  12. LM Studiolmstudio.ai
  13. Llama 3.1 8Bhuggingface.co
  14. Qwen3.6 35B A3Bhuggingface.co
  15. mlx-lmgithub.com

بیشتر بخوانید