Lucas Souza
{AI Engineer} — apaixonado por Laravel, arquitetura de software e construir produtos com impacto. Compartilho aqui tutoriais, descobertas e reflexões sobre o dia a dia de engenharia.
pgvector no Postgres: onde guardar a memória do seu agente
Antes de assinar um serviço gerenciado de memória, descubra por que o Postgres que você já tem resolve 80% do problema com pgvector: instalação, uso no Laravel e critérios de decisão.
Montando um agente mínimo viável com Claude API + Laravel
Um walkthrough de um agente funcional em PHP puro com Laravel, batendo direto na Claude API, sem framework de agente nenhum. Só o loop prompt, tool use e resposta.
Reranker: o passo que faz seu RAG parar de devolver lixo
A busca vetorial traz 20 candidatos "parecidos" — mas parecido não é relevante. O reranker reordena por relevância real antes de mandar pro modelo. Este post mostra cross-encoder vs busca híbrida e quando cada um vale, com código rodando.
RAG do zero: chunking, embeddings e busca que funciona
RAG não é mágica: é quebrar texto, virar vetor e buscar bem. O passo a passo de um RAG do zero — chunking recursive com overlap, embeddings com text-embedding-3-small e busca por similaridade no Postgres com pgvector e índice HNSW. Errar o chunking é onde 80% dos RAGs nascem ruins.
Quando usar RAG (e quando fine-tuning ou contexto resolvem melhor)
RAG virou resposta automática pra tudo, e quase sempre é a escolha errada. O mapa de decisão entre RAG, fine-tuning e contexto pelos critérios que importam: volatilidade do dado, custo, rastreabilidade e tamanho.
System prompt de produção: a espinha dorsal do comportamento do agente
O system prompt não é onde você manda o modelo ser legal. É a constituição do agente: papel, políticas, ferramentas e formato. Como estruturar um de produção e por que ele joga num campeonato diferente de um prompt de chat.
Progressive disclosure: como não afogar seu agente em 50 ferramentas
Colocar 50 ferramentas no contexto do agente degrada a escolha e estoura tokens. Progressive disclosure carrega tools sob demanda: o agente descobre o que precisa quando precisa. Padrão central de arquitetura de agentes que escalam.
Programmatic tool calling: deixe o agente escrever o código em vez de chamar tool a tool
Chamar 12 tools uma a uma é caro, lento e entope o contexto. Programmatic tool calling vira o jogo: o agente escreve um código que orquestra as chamadas e devolve só a resposta. Entenda o padrão com exemplos da Claude API e do Code Mode da Cloudflare.
Engenharia de prompt: o guia honesto (sem fórmula mágica)
Engenharia de prompt não é decorar fórmula nem lista de "100 prompts mágicos". É escrever instrução como contrato: estrutura, instrução clara, exemplos few-shot e formato de saída. O guia honesto para quem constrói software com IA.
Como criar seu primeiro MCP server (tool + resource) e plugar no Claude
Tutorial em PT-BR pra escrever um MCP server do zero em Python: uma tool que consulta CEP e um resource que expoe os padroes do time. No fim, voce pluga no Claude e ve o agente chamar uma ferramenta que voce mesmo escreveu.
Tool calling na prática: como o agente decide chamar uma ferramenta
Anatomia do loop ReAct e do tool calling: quando o agente decide buscar/agir vs. responder direto, com design de tools (contratos, schemas, idempotência) e um exemplo de tool de busca em banco no Laravel via Claude API.
Engenharia de contexto: o que vai no prompt (e o que NÃO vai)
O recurso mais escasso de um agente é a janela de contexto. Veja como decidir o que entra no prompt — system prompt, exemplos, histórico, dados recuperados — e por que encher de contexto degrada a resposta.