Saída Estruturada em LLMs: JSON Schema Explicado

Peça a um modelo para responder em JSON e na maioria das vezes json.loads() funciona sem problemas. As falhas são as que custam uma sessão de debug: um comentário de uma linha dentro do objeto, um code fence de markdown envolvendo tudo, uma chave escrita userEmail quando seu código espera user_email. Um prompt mais estrito (“responda APENAS com o objeto JSON, sem nenhum outro texto”) torna esses casos mais raros. Não os torna impossíveis, porque o modelo ainda pode ignorar o pedido. A saída estruturada remove o pedido da equação: você entrega à API um JSON Schema, que restringe a amostragem de tokens do próprio modelo para que a resposta tenha que corresponder a ele. ...

6 de novembro de 2026 · 9 minutos · 1875 palavras · SpaghettiCoder

Como Criar um LLM Eval: Testar Prompts Como Código

Por que “parece certo” não é um teste para um prompt Você aperta a redação de um prompt que roteia tickets, testa nos três exemplos abertos no seu notebook de rascunho e coloca no ar. Uma semana depois, reclamações de cobrança que antes caíam na fila certa começam a cair em “pergunta”. Não os três casos que você checou: os outros quatrocentos que você não checou. Nada quebra. Não há stack trace. O prompt, lido em voz alta, ainda parece bom. ...

30 de outubro de 2026 · 9 minutos · 1737 palavras · SpaghettiCoder

Function Calling e Tool Use em LLMs, Explicados

O que o function calling realmente faz em um LLM Pergunte a um modelo “qual é a previsão do tempo em Austin agora” sem nenhuma conexão com o mundo externo, e ele tem duas opções: dizer que não sabe, ou inventar alguma coisa. O function calling dá a ele uma terceira opção. Ele descreve o que precisa, passa essa descrição para o seu código e espera uma resposta real antes de responder. ...

22 de outubro de 2026 · 8 minutos · 1611 palavras · SpaghettiCoder

O Que São Embeddings e a Busca Vetorial

Procure por “filhote” em um sistema que só compara palavras-chave e um documento sobre adestramento de cães não vai aparecer, mesmo que qualquer pessoa que lesse os dois achasse que eles têm tudo a ver. A busca por palavras-chave compara strings de texto. Ela não sabe que “filhote” e “cachorro” significam quase a mesma coisa. Os embeddings resolvem exatamente isso. Eles transformam um texto em uma lista de números, um vetor, posicionado de forma que textos com significado parecido fiquem próximos entre si, independentemente das palavras usadas. ...

15 de outubro de 2026 · 8 minutos · 1549 palavras · SpaghettiCoder

Como Funcionam os Agentes CLI de Código e Qual Escolher

O que diferencia um agente de CLI de código do outro Peça a um agente de CLI para código que conserte um teste que está falhando, e ele não vai responder com uma sugestão. Ele lê a saída do teste, abre o arquivo, edita uma linha, roda o teste de novo e avisa quando ele passar. Esse loop é o produto, não a janela de chat. O modelo dentro do loop recebe a maior parte da atenção, e é também a parte que muda mais rápido: os fornecedores trocam de modelo a cada poucos meses, e vários agentes deixam você escolher. O que fica fixo é o harness ao redor do modelo — quais tools ele alcança, como gerencia o contexto, o que pode rodar sem perguntar, e onde esses comandos executam. Dois agentes rodando o mesmo modelo podem se comportar de forma bem diferente por causa disso. O harness é o que você está de fato escolhendo. ...

23 de setembro de 2026 · 8 minutos · 1689 palavras · SpaghettiCoder

O Que É um Modelo System One e Quando Usá-lo

Por que tantas chamadas de LLM são na verdade classificação Boa parte do tráfego de LLM em produção devolve uma palavra só. Escalar esse ticket ou não. Spam ou não spam. Qual dos seis handlers processa esse evento. Para conseguir essa palavra, você manda o prompt inteiro para um modelo de propósito geral, espera ele decodificar uma resposta token por token, e extrai um objeto JSON do resultado. Você paga o preço e a latência de geração de texto, e o que volta é uma decisão que cabe em um enum. ...

23 de setembro de 2026 · 7 minutos · 1382 palavras · SpaghettiCoder

Como Executar um LLM Local com o Ollama

Cada chamada a uma API de LLM hospedada envia seu prompt para o servidor de outra pessoa e cobra por token. Perdeu a rede, ela para de responder. O Ollama tira os dois problemas do caminho: baixa um modelo de pesos abertos para a sua máquina e o disponibiliza por uma API REST em localhost:11434. Um único binário funciona como gerenciador de modelos, cliente de chat e servidor. O que o Ollama faz de verdade O Ollama usa o llama.cpp e engines de inferência parecidas por baixo dos panos, então você nunca precisa mexer numa flag de compilador ou num caminho de biblioteca CUDA. ollama pull llama3.2 baixa um arquivo de modelo quantizado (formato GGUF) do próprio registro do Ollama em vez do Hugging Face, embora também consiga importar arquivos GGUF de lá. Ao executar o modelo, o Ollama entrega esses pesos a um servidor em segundo plano, que os carrega na RAM (ou VRAM, se encontrar uma GPU compatível), os mantém residentes por alguns minutos após a última requisição para que a próxima seja rápida, e os descarrega assim que você para de fazer perguntas. ...

19 de setembro de 2026 · 8 minutos · 1499 palavras · SpaghettiCoder

O Que É RAG: Retrieval-Augmented Generation Explicado

Pergunte a um LLM genérico qual é a política de reembolso da sua empresa ou o que diziam os tickets de suporte da semana passada, e ele vai dizer que não sabe ou vai inventar algo plausível. O conhecimento dele para no que estava nos dados de treinamento. Ele nunca viu os seus documentos e não pode ir consultá-los no meio da conversa. A retrieval-augmented generation (RAG) resolve exatamente isso: antes de o modelo responder, uma etapa separada encontra o texto relevante nos seus próprios dados e o entrega ao modelo como parte do prompt. ...

12 de setembro de 2026 · 8 minutos · 1568 palavras · SpaghettiCoder