O comando fm do macOS: o LLM local da Apple no Terminal.

O macOS 27 vem com uma ferramenta de linha de comando chamada fm que coloca o próprio modelo de linguagem da Apple no Terminal: perguntas avulsas, um chat e JSON estruturado para scripts. Veja o que a Apple diz que ele faz, o que o seu Mac precisa, onde o pequeno modelo no dispositivo para e o que um modelo aberto no mesmo Mac pode fazer no lugar.

Atualizado

Em resumo

  • O fm vem pré-instalado no macOS 27. Digite fm no Terminal para listar os comandos, como respond, chat e schema (Apple).
  • Por padrão ele usa o modelo no dispositivo que vem com o macOS. --model pcc envia o prompt para o modelo do Private Cloud Compute da Apple, muito maior, que tem limites de uso.
  • O modelo no dispositivo precisa de um Mac compatível com a Apple Intelligence (M1 ou posterior). A Apple Intelligence ocupa até 14 GB de armazenamento em Macs com M3 ou posterior e 12 GB de memória ou mais, e até 8 GB nos outros (Apple).
  • A janela de contexto é pequena: 4.096 tokens na documentação da Apple e 8.192 em um exemplo de código da WWDC26. Para documentos longos ou tarefas mais difíceis, um modelo aberto na GPU do seu Mac vai mais longe: veja o que o seu Mac consegue rodar.

1O que é o fm

O fm é a ferramenta de linha de comando da Apple para os Apple Foundation Models, os modelos por trás da Apple Intelligence. "Starting from macOS 27, this command line tool comes pre-installed on your Mac", diz a Apple na sessão da WWDC26 sobre ele; você abre o Terminal e digita fm (Apple). A Apple o apresenta para scripts e automação "without writing a line of app code" (Apple).

Ele conversa com dois modelos. Por padrão usa "the on-device model that comes with macOS, and that's always available". Também pode usar o Apple Foundation Model no Private Cloud Compute, que a Apple chama de "a much bigger model than the on-device model", que "will perform better on complex problems" e que "has usage limits" (Apple). O modelo no dispositivo roda no seu Mac e funciona sem conexão com a internet (Apple); um prompt enviado ao Private Cloud Compute vai para os servidores da Apple.

O fm é software da Apple e não tem nada a ver com a MLX Network. A MLX Network é independente e não tem afiliação com a Apple.

2Os comandos

Estes são os comandos e opções que a Apple mostra nas sessões da WWDC26 (Apple, Apple):

Comando ou opçãoO que faz
fmLista os comandos disponíveis.
fm respond "…"Envia um prompt ao modelo e imprime a resposta, para scripts e perguntas avulsas.
fm chatUma conversa interativa no Terminal. Dentro dela, /model troca para o modelo do Private Cloud Compute e /save salva a conversa para retomar depois.
fm schema objectCria um schema para que fm respond devolva JSON estruturado.
--model pccEnvia o prompt para o modelo do Private Cloud Compute em vez do modelo no dispositivo.
--imageAdiciona uma imagem ao prompt.
--schemaFaz a resposta seguir um schema criado com fm schema object.
--instructionsDá ao modelo instruções separadas do prompt.
--helpMostra todas as opções.
A Apple diz que há mais comandos do que estes; fm sozinho lista todos no seu Mac.

Os exemplos da própria Apple, da sessão:

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
Posts sobre o macOS 27 também descrevem comandos como fm serve, fm available e fm license. As sessões da Apple na WWDC26 e a documentação do Foundation Models que lemos não os descrevem, então este guia também não. Rode fm no seu Mac para ver o que a sua versão tem.

3O que você precisa e quanto ele baixa

  • macOS 27. O fm vem com ele (Apple).
  • Um Mac compatível com a Apple Intelligence. Os Apple Foundation Models precisam de um (Apple); no macOS 27 é qualquer Mac com M1 ou posterior (Apple).
  • Um idioma compatível. A Apple Intelligence exige que o idioma do dispositivo e o idioma da Siri sejam o mesmo idioma compatível, e por enquanto não funciona em dispositivos comprados na China continental (Apple).
  • Espaço livre em disco para a Apple Intelligence, abaixo.
MacArmazenamento da Apple Intelligence no macOS 27
M3 ou posterior com pelo menos 12 GB de memória unificadaAté 14 GB
Outros Macs com Apple Intelligence (M1, M2 ou menos de 12 GB de memória)Até 8 GB
Dos requisitos da Apple Intelligence da Apple. A Apple dá esses números para a Apple Intelligence como um todo, não só para o modelo que o fm usa.

O modelo pode ficar indisponível por um tempo depois que você ativa a Apple Intelligence: o framework da Apple informa que ele não está pronto "because it's downloading or because of other system reasons" (Apple).

Para o SDK de Python, que usa o mesmo modelo no dispositivo, a Apple pede macOS 26.0 ou posterior, Xcode 26.0 ou posterior com o contrato aceito e Python 3.10 ou posterior (Apple), em um Mac com Apple silicon (Apple).

4No que o modelo no dispositivo é bom e onde ele para

A Apple é direta: os modelos no dispositivo se destacam em várias tarefas de geração de texto, como resumir, extrair entidades, entender texto e imagens, refinar textos, diálogos para jogos e gerar conteúdo criativo; quando você precisa de mais capacidade de raciocínio e mais contexto, use o Private Cloud Compute ou qualquer provedor de modelos em servidor (Apple).

  • Uma janela de contexto pequena. A documentação da Apple dá ao modelo no dispositivo "a context window of 4096 tokens per session" (Apple) e lista 4K contra 32K do Private Cloud Compute (Apple). Na sessão da WWDC26 sobre o macOS 27, o exemplo de código da Apple imprime um contextSize de 8.192 (Apple). O prompt, as instruções e a resposta dividem essa janela.
  • Quanto cabe. Em inglês um token costuma ter de três a quatro caracteres (Apple), então 8.192 tokens são mais ou menos de 25.000 a 33.000 caracteres de entrada e saída juntas: algumas páginas, não um livro nem uma base de código.
  • Prompts curtos e simples. "An on-device model has fewer parameters and a small context window", então a Apple pede prompts "short and succinct" e diz que os modelos no dispositivo "have limited reasoning abilities": divida uma tarefa difícil em etapas (Apple).
  • Ele muda com o macOS. A Apple atualiza o modelo nas atualizações do sistema; o macOS 27 traz uma versão nova (Apple). Os resultados de um script podem mudar depois de uma atualização.

A Apple não informa o tamanho do modelo no dispositivo nessas páginas, então nós também não.

5Usando o fm em scripts e código

fm respond imprime a resposta, então entra em qualquer script de shell. Com --schema a resposta é JSON que você pode passar para o jq. A sessão da Apple organiza assim a pasta de um projeto: pergunta ao modelo quais arquivos são finais e quais são rascunhos, e depois copia e move os arquivos. Versão encurtada do exemplo da 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[]'

Para Python existe o Foundation Models SDK da Apple, pip install apple_fm_sdk, com o mesmo modelo no dispositivo, geração guiada e chamada de ferramentas (Apple). O exemplo da 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)

Muitos apps e agentes de programação esperam, em vez disso, uma API no estilo OpenAI ou Anthropic numa porta local. Se é disso que você precisa, o mlx_lm.server serve o modelo aberto que você escolher numa API no estilo OpenAI em localhost:8080 (mlx-lm), e o servidor local do LM Studio fala os formatos OpenAI e Anthropic (LM Studio). Mais opções: os melhores apps para rodar LLMs no Mac.

6Quando trocar por um modelo aberto

Fique com o fm para tarefas curtas: resumir uma nota, dar nome a um arquivo, tirar campos de um texto, uma pergunta rápida. Ele já está no Mac e não precisa de configuração. Parta para um modelo aberto quando a entrada não couber em alguns milhares de tokens, quando a tarefa pedir mais raciocínio ou código, quando você quiser escolher o modelo ou quando uma ferramenta precisar de uma API.

Um modelo aberto roda na GPU do seu Mac, e o que cabe depende da memória unificada. A nossa conta em Compare dá à GPU cerca de 75% por padrão e deixa espaço para o contexto:

Memória do MacPara a GPURoda bem, por exemploMemória necessária
8 GBcerca de 6 GBLlama 3.1 8B em 4 bits4,5 GB; 6,0 GB com contexto
16 GBcerca de 12 GBLlama 3.1 8B em 8 bits, Qwen3.5 9B em 6 bits8,5 GB e 7,3 GB; 10,0 e 8,8 GB com contexto
24 GBcerca de 18 GBgpt-oss-20b, 4,25 bits nativos13,8 GB; 15,3 GB com contexto
32 GBcerca de 24 GBQwen3.6 35B A3B em 4 bits19,7 GB; 21,3 GB com contexto
Nossa conta com base nos cards oficiais dos modelos: o MLX guarda (bits + 0,5) por peso, mais 8% ou 1,5 GB para o contexto. Tudo o que cada tamanho roda, com faixas de velocidade: 8 GB, 16 GB, 24 GB, 32 GB.

Esses modelos listam janelas de contexto bem maiores nos seus cards, 128K tokens para o Llama 3.1 8B e 262.144 para o Qwen3.6 35B A3B, embora um contexto longo precise de memória além do espaço contado acima. Não sabe o que o seu Mac tem? Menu Apple, Sobre Este Mac, e depois veja os Macs por chip.

O mlx-lm é uma forma de rodá-los: as ferramentas MLX da própria Apple baixam modelos MLX do Hugging Face, conversam com eles no Terminal e servem a API local acima. O LM Studio e o Ollama fazem o mesmo num app (os melhores apps para rodar LLMs no Mac). Quando você não está usando o Mac, o MLX Node pode rodar tarefas de IA para a MLX Network dentro dos limites que você definir e ganha tokens MLX pelo trabalho verificado. Tokens MLX podem perder valor; leia os riscos.

7Perguntas

O comando fm do macOS é grátis?
Ele vem pré-instalado no macOS 27 e por padrão usa o modelo no dispositivo que vem com o macOS. O modelo maior do Private Cloud Compute tem limites de uso (Apple).
O fm funciona offline?
Com o modelo no dispositivo, sim: a Apple diz que ele funciona sem conexão com a internet (Apple). A Apple Intelligence precisa ser baixada antes, e --model pcc ou /model no fm chat usam os servidores da Apple.
Qual o tamanho máximo de um prompt no fm?
O prompt, as instruções e a resposta dividem uma janela de contexto: 4.096 tokens na documentação da Apple e 8.192 no exemplo da Apple na WWDC26 para o macOS 27 (Apple). Em inglês são mais ou menos três a quatro caracteres por token.
O fm oferece uma API compatível com a OpenAI?
As sessões da Apple na WWDC26 e a documentação do Foundation Models que lemos não descrevem um modo servidor, então não podemos confirmar como ele funciona. Para uma API local documentada, o mlx_lm.server serve modelos abertos em localhost:8080 no estilo OpenAI, e o LM Studio nos formatos OpenAI e Anthropic.
Quais Macs podem usar o fm?
Macs com macOS 27 compatíveis com a Apple Intelligence: qualquer Mac com M1 ou posterior, configurado em um idioma compatível, com até 14 GB (M3 ou posterior com 12 GB ou mais) ou até 8 GB de armazenamento livre (Apple).

Fontes

  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

Leia também