Confiei em meu LLM local com tudo, menos meu código, e o recebi de volta

Usei hardware de inferência local suficiente para fazer com que meu fornecedor de eletricidade me enviasse um cartão de Natal, então, quando decidi passar uma semana em minhas rotas diárias através de um LLM localAchei que sabia exatamente onde traçar o limite. Os modelos locais cuidariam das coisas do dia-a-dia – resumos, classificação de pesquisas, compilação, as intermináveis ​​perguntas “o que esse erro significa”, e a codificação se limitaria aos modelos de limite, porque a codificação é a parte difícil. Isso é Esta tem sido minha filosofia há mais de um ano: local para coisas simples, nuvem para tudo o que importa.

Recebi de volta uma semana depois. As tarefas diárias eram onde o modelo nativo falhava silenciosamente, e a única carga de trabalho que eu havia isolado códigoacabou sendo aquilo para o qual foi realmente construído. Não demorei uma semana inteira para ver o que estava errado, e a forma correta de dividir as tarefas era o oposto do que eu estava construindo.

As regras que estabeleci pareciam razoáveis ​​na época

O instinto não era infundado, apenas errado

A instalação foi bastante fácil. Execute Qwen3-Coder-30B-A3B em uma caixa Strix Halo com Lemonade Server acessível pela rede e coloque meu equipamento RTX 5090 em espera para mais contextos. Tudo o que eu normalmente jogaria em um chatbot na nuvem era local: pesquisar artigos, pesquisar arquivos de log, coletar logs de alterações, debater ideias para artigos, tudo. A codificação foi deixada para Claude e Codex, com Zed fazendo pequenas e simples correções, já que eu havia internalizado a ideia de que o código era mais importante para a qualidade do modelo, e já tinha visto scripts shell meia-boca suficientes para ser cauteloso.

Esta cautela não se deveu a uma desconfiança geral na IA. Os modelos de fronteira dominam no lado do agente de codificação, onde conversores de vários arquivos, requisitos vagos, zero prompts e recuperação de chamadas de ferramentas com falha são objetivamente melhores. Meu erro foi presumir que essa lacuna se aplica todos codificação e que as tarefas diárias sem codificação eram o nível mais fácil. Não são, mas são difíceis de uma maneira diferente.

A semana do “todo o resto” foi boa e o problema está em ordem

Demorei muito para perceber

Nos primeiros dias, o experimento pareceu bem-sucedido. O modelo nativo foi capaz de compilar sites ou repositórios GitHub para mim e fornecer etapas de instalação com competência. Ele poderia responder razoavelmente bem a perguntas reais, nunca atingir o limite de taxa e nunca me pedir para atualizar para o próximo nível ou adicionar créditos de API. E funcionou quando a internet caiu, o que aconteceu uma vez devido a uma tempestade.

Mas a “penalidade” nunca é realmente boa, e o custo de uso mudou da assinatura para o meu tempo. Tudo o que baixei para o modelo nativo foi difícil de testar. Comecei a ler o material fonte resumido como uma verificação e continuei lendo porque nem sempre podia confiar nos resultados. Quando pedi pesquisa, ou perdi material facilmente encontrado ou citei com segurança coisas que não existiam.

Por exemplo, consegui compilar o OpenClaw e dizer como instalá-lo. Os resultados foram utilizáveis, embora em um nível muito superficial. Pedi então para investigar se algum usuário relatou problemas com o software, pois sabemos que o OpenClaw tem muitos problemas. O LLM local disse com segurança que não encontrou problemas no GitHub, problemas no fórum de usuários, relatórios de bugs ou documentação de solução de problemas e parecia ter uma “atitude muito positiva em relação aos usuários”.

Se eu aceitasse isso pelo valor nominal, estaria em apuros, com segredos jorrando de todos os portos. Perguntei a mesma coisa a Claude e recebi um processo de instalação com várias camadas de reforço de segurança antes de adicionar qualquer outra coisa ao OpenClaw, bem como instruções sobre como executá-lo em uma VM em sandbox para fins de segurança. Isso poderia ter se transformado em um erro muito caro. No final das contas, o gasto foi principalmente de tempo, já que você mesmo tinha que ler as fontes.

A noite em que quebrei minha lei

O modelo não ficou mais inteligente; a tarefa tornou-se verificável

Descobri que havia feito as coisas ao contrário quando uma sessão de codificação noturna atingiu meus limites. Não queria esperar uma redefinição, então direcionei a sessão para o LLM local, que não escondi do meu editor. Eu esperava ter que tomar conta dele ou, pelo menos, responder a mais perguntas do que um modelo de nuvem normalmente faria. Mas encontrou o erro e corrigiu, não precisei fazer nada além de confirmar que alguma ferramenta foi chamada.

E quando falhou, foi um fracasso retumbante com falhas nos testes, e não um absurdo que parecia plausível que eu tivesse que verificar os fatos. Essa é a diferença: eu não mostrei que os modelos nativos são melhores em código do que em prosa, apenas que o código é o único domínio em que não preciso confiar na saída. O conjunto de ferramentas fornece confiança para mim.

A lacuna na fronteira é real

Mas apenas para aquelas tarefas que raramente faço

Os modelos nativos ainda são claramente piores na extremidade complexa da codificação. Peça para dividir uma solicitação de recurso obscura em uma dúzia de arquivos e ela desaparecerá, chamará uma ferramenta ou ficará presa em um loop de uma forma que os modelos Claude ou Codex raramente fazem. A utilização de modelos locais acarreta um custo de tempo, uma vez que o ciclo de revisão e correção demora significativamente mais tempo do que com modelos de fronteira.

Não estou fingindo que os modelos locais estão substituindo os modelos em nuvem; a maioria dos fluxos de trabalho que priorizam o agente são projetados usando Claude Code ou uma estrutura de agente semelhante, e até mesmo os menores modelos de nuvem superam os modelos locais. Mas depende do que consiste o seu dia de codificação. O meu é principalmente coisas pequenas, scripts para renomear capturas de tela ou benchmarks, expressões regulares que me recuso a aprender com que frequência as uso, testes de unidade para algo que já escrevi e vasculhar arquivos de log para descobrir por que algo não está funcionando como esperado.

São a maioria das minhas aulas de codificação, arquivo único, autoteste e descomplicado. As coisas maiores ficam em Claude, onde os tokens são bem utilizados, mas para as pequenas coisas, o local tem sido um substituto bom o suficiente.

Agora eu dirijo as tarefas de maneira diferente

Esta semana pensei que estava protegendo meu código de um modelo mais fraco. Saí percebendo que estava protegendo a propriedade errada o tempo todo. O LLM nativo agora vive em meu editor, deslizando por scripts e testes, onde o compilador faz isso de maneira justa e os modelos de nuvem cuidam de todo o resto, onde um erro certo pode realmente me prejudicar. Se você estiver usando modelos nativos e se perguntando onde eles se encaixam, não comece com um organograma mental de “tarefas fáceis” e “tarefas difíceis”. Comece com quais falhas você pode detectar gratuitamente.

Link da fonte