LM Studio e Qwen: como LLMs locais lidam com codificação no MacBook M4 Pro
LLMs locais para codificação agora podem ser usados sem a nuvem se a tarefa envolve chats rápidos e edições simples. No experimento com MacBook M4 Pro, os…
Processado por IA de Habr AI; editado por Hamidun News
Modelos de linguagem locais já podem ser usados para escrever e editar código sem enviar o código-fonte para a nuvem, mas o conforto desse trabalho ainda depende muito da tarefa e do hardware disponível. Um experimento em um MacBook Pro com M4 Pro e 48 GB de memória mostra que a combinação de LM Studio e modelos modernos com pesos abertos já entrega resultados tangíveis em modo chat, mas em modo de agentes completos rapidamente esbarra em limitações de memória, calor e tempo de execução. O ponto de partida aqui é simples: modelos em nuvem são convenientes, mas têm limitações, dependência de rede e a principal desvantagem para muitos desenvolvedores — dados, código e prompts são enviados para servidores remotos.
A execução local promete privacidade e controle total, mas exige compreensão de como um modelo consome RAM e VRAM, quanta memória resta para contexto e como formatos como GGUF e MLX diferem. Os testes foram conduzidos em um MacBook Pro com chip M4 Pro e 48 GB de memória unificada, onde CPU e GPU compartilham um pool de memória comum. Isso ajuda a acomodar modelos maiores, mas simultaneamente significa que o modelo compete por recursos com IDE, Docker e dezenas de abas do navegador.
Uma parte separada da análise se concentra em escolher um modelo para o hardware. O autor sugere não apenas olhar para o tamanho em bilhões de parâmetros, mas também para especialização, quantização, suporte a function calling e tipo de arquitetura. Para programação, ele usou Qwen3-Coder 30B A3B Instruct em variantes MLX e GGUF, e também comparou com Qwen3-Coder Next, Qwen3.
5, Nvidia Nemotron-3 Nano e Gemma 4 26B A4B. O artigo explica bem o significado prático de abreviaturas: por exemplo, A3B indica uma abordagem MoE, onde apenas parte dos parâmetros de um modelo grande são ativados, o que torna a velocidade mais próxima de modelos pequenos enquanto a qualidade se aproxima de modelos maiores. LM Studio foi escolhido como o runtime: através dele, os modelos são facilmente baixados, um servidor local é configurado, CORS é ativado e agentes como Claude Code, Open Code, Kilo Code e Aider podem ser conectados.
A previsão de desempenho para Qwen3-Coder prometia cerca de 150 tokens por segundo, mas a medição real em LM Studio se mostrou mais próxima a 82 tokens por segundo, o que imediatamente traz a conversa da teoria para a prática. A parte mais interessante começa com as medições. Em modo chat regular, modelos locais não se parecem mais com um brinquedo, mas com um compromisso funcional.
Qwen3-Coder 30B A3B Instruct em MLX 4bit se encaixou aproximadamente em 2 minutos 9 segundos para todo o cenário de três etapas e atingiu uma pontuação final de 8,5 de 10. Gemma 4 26B A4B em GGUF mostrou um dos melhores equilíbrios: cerca de 2 minutos 23 segundos e uma pontuação final de 10 de 10. Modelos mais pensantes deram melhores resultados, mas ao custo do tempo: Qwen3.
5 35B A3B alcançou 10 de 10 em aproximadamente 5 minutos 43 segundos, enquanto Qwen3.5 27B se estendeu quase até meia hora. A conclusão dessa parte é sóbria: modelos locais já às vezes correspondem a modelos em nuvem em velocidade de resposta, especialmente sem modo de pensamento, mas no mesmo tempo frequentemente ficam atrás em qualidade.
Enquanto isso, modelos MoE recentes se parecem notavelmente mais práticos que variantes densas. Em modo agente, o quadro muda dramaticamente. O contexto cresce, o número de chamadas aumenta, e segundos se transformam em minutos ou até dezenas de minutos.
Aider com o mesmo Qwen3-Coder MLX 4bit completou o cenário em 2 minutos 50 segundos com uma pontuação de 9,5, Open Code em 7 minutos 33 segundos com uma pontuação de 9, mas Kilo Code com o mesmo modelo levou 15 minutos 5 segundos e alcançou apenas 6 pontos. Com o Qwen3.5 35B A3B mais pesado, Kilo Code levou 57 minutos 3 segundos, embora a qualidade final tenha melhorado para 9 de 10.
Claude Code com Gemma 4 26B completou o experimento com uma pontuação máxima de 10 de 10, mas gastou um total de 21 minutos 14 segundos, e a combinação Claude Code com Qwen3-Coder realmente travou devido à memória insuficiente para contexto. Paralelamente, o laptop sofreu notavelmente: a GPU aqueceu até cerca de 100 graus, os ventiladores quase não paravam, e swap em alguns cenários inchou até 20 GB. Diante disso, agentes em nuvem se pareciam trivialmente mais convenientes: por exemplo, Kilo Code com Qwen3.
5 Plus deu 9 de 10 em 6 minutos 53 segundos, e Claude Opus 4.6 — 10 de 10 em 12 minutos 15 segundos, embora com custo. A conclusão é simples: LLMs locais agora podem ser seriamente considerados para chat privado, tarefas únicas de refatoração e cenários simples onde o controle de dados importa mais que a velocidade absoluta.
Mas se você precisa de modo agente constante em um laptop de trabalho, especialmente ao lado de IDE, navegador e Docker, a pilha local ainda é um compromisso. O cenário mais razoável dessa experiência é usar modelos MoE recentes, usar agentes mais simples como Aider ou Open Code, e quando possível, executar o modelo local em uma máquina separada como Mac mini.
Quer parar de ler sobre IA e começar a usar?
AI News é um feed curado de notícias de IA. A Hamidun Academy ensina você a usar IA no trabalho.