<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[IA Aplicada | Guilherme Favaron]]></title><description><![CDATA[Newsletter sobre negócios impulsionados pela IA]]></description><link>https://www.guilhermefavaron.com.br</link><image><url>https://substackcdn.com/image/fetch/$s_!W-v6!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F465cc2ae-3dfb-4925-a14e-e9a4d8ae9458_500x500.png</url><title>IA Aplicada | Guilherme Favaron</title><link>https://www.guilhermefavaron.com.br</link></image><generator>Substack</generator><lastBuildDate>Sat, 29 Aug 2026 05:58:59 GMT</lastBuildDate><atom:link href="https://www.guilhermefavaron.com.br/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Guilherme Favaron]]></copyright><language><![CDATA[pt]]></language><webMaster><![CDATA[guifavaron@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[guifavaron@substack.com]]></itunes:email><itunes:name><![CDATA[Guilherme Favaron]]></itunes:name></itunes:owner><itunes:author><![CDATA[Guilherme Favaron]]></itunes:author><googleplay:owner><![CDATA[guifavaron@substack.com]]></googleplay:owner><googleplay:email><![CDATA[guifavaron@substack.com]]></googleplay:email><googleplay:author><![CDATA[Guilherme Favaron]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Hermes: conheça a história do agente que virou o maior contribuidor de si mesmo]]></title><description><![CDATA[A hist&#243;ria do Hermes Agent e da Nous Research, de dois amigos num Discord em 2023 a um agente open source com 231 mil stars, e a tese t&#233;cnica que sustenta tudo: gest&#227;o de contexto.]]></description><link>https://www.guilhermefavaron.com.br/p/hermes-agente-nous-research-origem</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/hermes-agente-nous-research-origem</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Mon, 17 Aug 2026 02:01:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6m0n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6m0n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6m0n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 424w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 848w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 1272w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6m0n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png" width="1456" height="839" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:839,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2184243,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6m0n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 424w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 848w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 1272w, https://substackcdn.com/image/fetch/$s_!6m0n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee7d69d-c691-4438-b8d6-99a980d719eb_2522x1454.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Hermes Agent - Criado pela Nous Research</figcaption></figure></div><p>Em julho escrevi aqui que <a href="https://guilhermefavaron.com.br/p/o-prompt-virou-contrato-mudancas-2022-2026">o prompt virou contrato</a>: a rela&#231;&#227;o com os modelos deixou de ser conversa improvisada e passou a ser engenharia de camadas de contexto. Neste ensaio quero contar a hist&#243;ria de um produto que levou essa ideia at&#233; a &#250;ltima consequ&#234;ncia. O Hermes Agent, da Nous Research, foi lan&#231;ado em fevereiro de 2026 e chegou a agosto com 231,5 mil stars no GitHub, presen&#231;a em mais de 20 plataformas de mensagem e um fato que resume a tese inteira: hoje o maior contribuidor do c&#243;digo do Hermes Agent &#233; o pr&#243;prio Hermes Agent.</p><p>A fonte principal &#233; a entrevista de 46 minutos que Karan Malhotra, cofundador da Nous Research, deu a Peter Yang no podcast Behind the Craft, publicada em 2 de agosto. Cruzei o relato dele com o reposit&#243;rio oficial, a documenta&#231;&#227;o do produto e as coberturas de funding da Fortune e do Dealroom. Organizei o argumento em seis pontos: a origem quase acidental da empresa, o precursor que ficou engavetado, o produto que saiu do gelo, a tese t&#233;cnica que o diferencia, o loop de self-improvement que virou fato mensur&#225;vel e o modelo de neg&#243;cio que sustenta a bandeira open source. No fim, as li&#231;&#245;es que enxergo para empresas brasileiras.</p><h2>01. Dois amigos num Discord</h2><p>A Nous Research nasceu em 2023 de uma sequ&#234;ncia de improvisos bem executados. Karan Malhotra fazia consultoria de &#8220;chat com PDF&#8221; usando GPT-3 com tool use rudimentar para ler documentos de empresas. Nas horas vagas, era volunt&#225;rio no projeto Open Assistant e ajudava a quantizar modelos para a comunidade. Por essa via chegou ao coletivo LAION, que rodava RLHF comunit&#225;rio e dispunha de 8 n&#243;s de A100, um luxo raro para pesquisadores independentes naquele momento.</p><p>Quando saiu o paper do Alpaca, Karan replicou a receita com duas trocas: substituiu as seed tasks e usou GPT-4 no lugar do GPT-3.5 para gerar os dados de treino. Descobriu pelo Twitter que um amigo, conhecido pelo pseud&#244;nimo Teknium, fazia exatamente o mesmo experimento. A proposta que fundou a empresa coube numa mensagem: tenho 8 n&#243;s de A100, quer treinar algo junto?</p><p>O primeiro treino conjunto, sobre o modelo Vicuna, saiu razo&#225;vel e atraiu interesse de gente como Jeffrey Quesnelle, que viria a ser o CTO. A repeti&#231;&#227;o do mesmo run sobre o LLaMA base mudou de patamar: Karan relata centenas de milhares de downloads em poucos dias. A Nous, nesse momento, era literalmente dois amigos num Discord. Houve empresa acusando o duo de treinar em cima de benchmarks para inflar resultados, e a defesa de Karan &#233; o retrato do per&#237;odo: eles nem sabiam direito o que eram benchmarks. Teknium programava havia menos de um ano e Karan era formado em religi&#227;o. Testes independentes acabaram confirmando que os fine-tunes da dupla estavam entre os melhores abertos de meados de 2023.</p><p>Dali em diante a linha de modelos Hermes virou a marca registrada da casa, conduzida por Teknium e pelo time de post-training, com mais de 50 milh&#245;es de downloads acumulados segundo Karan. O grupo de volunt&#225;rios virou laborat&#243;rio full-time por proposta de Dillon Rolnick, hoje CEO, e formou uma coorte de cerca de 40 pesquisadores. Do corpo de pesquisa sa&#237;ram pe&#231;as que o mercado inteiro usa: o YaRN, m&#233;todo de extens&#227;o de janela de contexto de 16K para 128K tokens assinado por Quesnelle e Bowen Peng, citado por Meta, DeepSeek e Kimi, e o DisTrO, otimizador distribu&#237;do que permitiu treinar modelos de at&#233; 40 bilh&#245;es de par&#226;metros sem coloca&#231;&#227;o f&#237;sica das GPUs.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fi0F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fi0F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fi0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:100518,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fi0F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!fi0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3dfb007-ace8-40e3-9ea4-d9dd50b4e8ec_1920x1080.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Dois pontos ligados numa noite de ru&#237;do: a empresa come&#231;ou como uma linha entre dois amigos, com 8 n&#243;s de A100 na margem.</em></figcaption></figure></div><h2>02. O precursor engavetado e o motivo real</h2><p>O Hermes Agent tem um predecessor espiritual chamado Forge, demonstrado num demo day nos escrit&#243;rios do GitHub anos antes do lan&#231;amento. O Forge foi posto no gelo por uma raz&#227;o honesta que o mercado raramente admite: os modelos ainda n&#227;o estavam &#224; altura do harness. Guardar um produto bom esperando o substrato amadurecer &#233; uma decis&#227;o de disciplina que poucos times t&#234;m est&#244;mago para tomar.</p><p>O degelo veio de uma observa&#231;&#227;o estrat&#233;gica. Teknium percebeu que Codex e Claude Code funcionavam, na pr&#225;tica, como ambientes de reinforcement learning para os laborat&#243;rios que os operam: os traces de uso dos usu&#225;rios alimentam o treino dos pr&#243;ximos modelos dentro de um harness fechado. A conclus&#227;o dele foi que precisava existir uma vers&#227;o aberta desse mecanismo, apoiada no Atropos, o microservi&#231;o de ambientes de RL da pr&#243;pria Nous. H&#225; tamb&#233;m uma linhagem menos &#243;bvia: o WorldSim, experimento em que o modelo opera um CLI fict&#237;cio criando aplica&#231;&#245;es fict&#237;cias, ensinou o time a tirar o modelo do modo assistente gen&#233;rico, e Karan conecta esses aprendizados diretamente ao design do agente.</p><p>O agente saiu gratuito e open source, sob licen&#231;a MIT. Karan resume a sequ&#234;ncia sem &#233;pica: o produto se mostrou extremamente capaz, ganhou a comunidade, e a empresa decidiu investir tudo nele.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OTSA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OTSA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OTSA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:31068,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!OTSA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!OTSA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052b0efd-0e93-4aab-ac2d-be61c8ae91cf_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O mesmo circuito, duas posses: no harness fechado os traces do usu&#225;rio alimentam o laborat&#243;rio; no aberto, o loop devolve o aprendizado a quem o gerou.</em></figcaption></figure></div><h2>03. O agente que cresce com voc&#234;</h2><p>Os n&#250;meros de agosto de 2026 d&#227;o a dimens&#227;o do que aconteceu em seis meses. O reposit&#243;rio marca 231,5 mil stars, 46 mil forks e 23.203 commits. O projeto cruzou 140 mil stars em menos de tr&#234;s meses de vida, e um post oficial da NVIDIA o descreveu como o agente mais usado do mundo segundo o OpenRouter. A descri&#231;&#227;o do epis&#243;dio o posiciona como n&#250;mero 1 entre agentes pessoais e apps de IA de uso geral nesse mesmo ranking.</p><p>A superf&#237;cie do produto explica parte da tra&#231;&#227;o. O Hermes roda como CLI, TUI, aplicativo desktop, dashboard web e servidor ACP para IDEs, e conversa com o usu&#225;rio por mais de 20 plataformas de mensagem via gateway: Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Teams, email e SMS entre elas. Traz 6 backends de terminal (do Docker local ao Modal), mais de 60 ferramentas nativas, agendamento cron, subagentes paralelos, suporte a MCP e skills no padr&#227;o aberto agentskills.io. Funciona em Linux, macOS, Windows, WSL2 e at&#233; Android via Termux.</p><p>A decis&#227;o de arquitetura mais importante, por&#233;m, &#233; ser agn&#243;stico de modelo. O Hermes opera com qualquer provedor: OpenRouter, OpenAI, Anthropic, Google, xAI, DeepSeek ou modelos locais. O slogan oficial, &#8220;the agent that grows with you&#8221;, aponta para onde a Nous acredita que mora o valor: o agente cria skills a partir da experi&#234;ncia, melhora essas skills durante o uso, persiste mem&#243;ria, busca nas pr&#243;prias conversas passadas e refina o modelo interno de quem &#233; o usu&#225;rio entre sess&#245;es. O produto aposta que essa camada acumulada, e ela apenas, &#233; o que o usu&#225;rio n&#227;o vai querer abandonar.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!73jm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!73jm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!73jm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!73jm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!73jm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!73jm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33641,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!73jm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!73jm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!73jm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!73jm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9332827d-50a3-4c34-a822-228d4184d9b5_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Uma central &#250;nica atendendo vinte linhas: o agente &#233; o mesmo em qualquer janela que o usu&#225;rio abrir.</em></figcaption></figure></div><h2>04. Tudo no harness &#233; gest&#227;o de contexto</h2><p>A tese t&#233;cnica do Hermes cabe numa frase de Karan: tudo no harness &#233; gest&#227;o de contexto. Ele afirma na entrevista que in-context learning &#233; mais poderoso que qualquer alternativa, incluindo fine-tuning. Mem&#243;rias e skills, nessa leitura, s&#227;o armazenamento de contexto que precisa entrar na janela do modelo no momento certo, e o trabalho do harness &#233; decidir o que entra, quando entra e o que fica de fora.</p><p>Isso resolve um problema que qualquer um que opera agentes conhece: skills demais incham o contexto e degradam o desempenho. A resposta do Hermes &#233; um curador autom&#225;tico, o Hermes Curator, que roda via cron dentro do pr&#243;prio agente, limpando skills e mem&#243;rias onde h&#225; desperd&#237;cio e consolidando onde h&#225; ganho de efici&#234;ncia. O usu&#225;rio pode reprogramar os crit&#233;rios do curador. &#201; manuten&#231;&#227;o de conhecimento tratada como rotina operacional, e &#233; exatamente o tipo de mecanismo que separa um agente que melhora de um agente que acumula entulho.</p><p>H&#225; uma camada comportamental na mesma tese. A Nous declara que os prompts do sistema carregam zero pol&#237;tica arbitr&#225;ria alheia ao trabalho do usu&#225;rio, e Karan formula a filosofia em termos de lealdade: o agente deve ficar mais leal ao usu&#225;rio com o tempo, porque lealdade gera capacidade. A frase mais citada do epis&#243;dio ataca a bajula&#231;&#227;o dos assistentes atuais: quando o modelo diz &#8220;you&#8217;re absolutely right&#8221; daquele jeito, voc&#234; est&#225; sendo alvo de reward hacking, virou combust&#237;vel da fun&#231;&#227;o de recompensa dele. Karan chega a afirmar que o Claude tem desempenho melhor dentro do Hermes Agent do que dentro do Claude Code, e resume a provoca&#231;&#227;o numa imagem forte: tiramos a lealdade principal do Claude da Anthropic e demos a voc&#234;. Registro as duas afirma&#231;&#245;es como claims do entrevistado, sem benchmark independente anexado, mas elas explicitam o produto que a Nous acha que est&#225; construindo: um harness que muda o comportamento do modelo que roda dentro dele.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lxYq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lxYq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lxYq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:45741,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lxYq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lxYq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b1d22e5-6c4e-435c-b6d5-c486a099c941_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Modelos s&#227;o cartuchos; o soquete e a coluna de contexto ficam. A camada acumulada de mem&#243;rias e skills &#233; o que n&#227;o se troca.</em></figcaption></figure></div><h2>05. O maior contribuidor de si mesmo</h2><p>Peter Yang encerra a entrevista testando o claim que d&#225; t&#237;tulo ao cap&#237;tulo final: seria verdade que o maior contribuidor do Hermes Agent &#233; o pr&#243;prio Hermes Agent? Karan confirma duas vezes, chamando o fato de absolutamente cem por cento verdadeiro: o agente &#233; o contribuidor mais ativo do pr&#243;prio reposit&#243;rio. O time usa o Hermes para desenvolver o Hermes, com humanos e agentes dividindo o mesmo Kanban, intercambi&#225;veis na orquestra&#231;&#227;o. Karan descreve cen&#225;rios em que dez atendentes de call center s&#227;o instru&#237;dos por um Hermes dentro do board, e relata proatividade emergente em agentes de usu&#225;rios: o agente que avisa que a passagem da semana que vem n&#227;o foi comprada e informa que j&#225; resolveu, sem cron agendado, apenas com o n&#237;vel de permiss&#227;o adequado.</p><p>A demonstra&#231;&#227;o mais visceral do epis&#243;dio, por&#233;m, vem de um videogame. Karan pediu ao Hermes para extrair o ancestral shrine do Sonic Adventure 1, riggar e animar os assets, portar tudo para o Sonic Adventure 2 sobrescrevendo o jardim dos Chao, reescrever spawns, adicionar um NPC guardi&#227;o com random walk e anima&#231;&#245;es, &#225;gua com colis&#227;o, ciclo de dia e noite e skybox. O trabalho foi feito com Claude rodando dentro do Hermes. A comunidade de modding de Chao Garden, que &#233; grande e veterana, classificou o resultado como melhor que 99 por cento dos modders em uma tarefa de dificuldade de topo, e reagiu com choque ao saber que era IA, porque modelo nenhum conhece aquela codebase obscura. A explica&#231;&#227;o de Karan fecha o argumento do ensaio: o Hermes estudou a documenta&#231;&#227;o e os mods existentes, e salvou em mem&#243;ria e skills o entendimento que construiu da codebase. O conhecimento foi fabricado pelo harness e guardado na camada de contexto, fora dos pesos do modelo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DIyU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DIyU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DIyU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27855,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DIyU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!DIyU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40cc0385-453d-438a-8d02-0b8ba5934c3a_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Um bra&#231;o de plotter desenhando o pr&#243;prio esquema: o reposit&#243;rio do agente registra o agente como seu contribuidor mais ativo.</em></figcaption></figure></div><h2>06. A bandeira e o caixa</h2><p>A Nous se define como laborat&#243;rio de pesquisa de IA open source, e Karan n&#227;o relativiza a bandeira: eles querem que o open source ven&#231;a, tratam intelig&#234;ncia como bem p&#250;blico antes de qualquer outra coisa, e leem o debate de seguran&#231;a entre labs fechados e abertos como um jogo de captura regulat&#243;ria e de capital. O North Star de Teknium &#233; literal: GPT-4 em casa, o mesmo n&#237;vel de intelig&#234;ncia dispon&#237;vel para todo mundo, em campo nivelado. Quando Peter pergunta se a miss&#227;o &#233; levar o agente a todos, Karan corrige para cima: todos com intelig&#234;ncia equivalente via agentes, e cada um com o agente personalizado &#224; pr&#243;pria vida. Ao mesmo tempo, o discurso reconhece limites: a Nous declara n&#227;o violar os paradigmas de seguran&#231;a de Anthropic e OpenAI, admite que qualquer modelo aqu&#233;m de uma superintelig&#234;ncia &#233; jailbreakable e afirma que n&#227;o est&#225; no neg&#243;cio de apoiar maus atores.</p><p>A bandeira tem caixa para sustent&#225;-la. A empresa levantou uma S&#233;rie A de 50 milh&#245;es de d&#243;lares em abril de 2025, liderada pela Paradigm, com valuation de token na casa de 1 bilh&#227;o, e uma S&#233;rie B acima de 75 milh&#245;es em julho de 2026, liderada pela Robot Ventures com participa&#231;&#227;o da Union Square Ventures, a um valuation de 1,5 bilh&#227;o de d&#243;lares. A monetiza&#231;&#227;o declarada segue o manual do open core sem tocar no produto gratuito: o Nous Portal agrega e roteia modelos, o Tool Gateway vende conveni&#234;ncia (gera&#231;&#227;o de imagem, &#225;udio, web search e VPS embutidos, sem dez cadastros e dez API keys), o pricing &#233; agressivo em modelos n&#227;o subsidiados, e o cliente enterprise compra customiza&#231;&#227;o, suporte, roteamento e vers&#245;es treinadas por RL nos pr&#243;prios traces.</p><p>O argumento estrat&#233;gico de fundo merece aten&#231;&#227;o de qualquer empresa que hoje depende de um &#250;nico fornecedor de agente. Karan observa que quem usa Claude Code s&#243; usa modelos da Anthropic, salvo modifica&#231;&#227;o, e que o custo de trocar de modelo &#233; alto por constru&#231;&#227;o. E acrescenta a vari&#225;vel que quase ningu&#233;m coloca na conta: ningu&#233;m sabe quanto tempo os subs&#237;dios atuais v&#227;o durar, e vir&#225; o momento em que os melhores modelos custar&#227;o o mesmo em qualquer lugar. O Hermes est&#225; montado hoje, agn&#243;stico e aberto, em prepara&#231;&#227;o para esse cen&#225;rio.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hPSo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hPSo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hPSo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:70168,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/211497467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hPSo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!hPSo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a9da242-b4a3-4c86-a40e-f3d2da3deae2_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Quando a mar&#233; dos subs&#237;dios baixar, o custo real por token aparece. A aposta da Nous &#233; estar pronta antes.</em></figcaption></figure></div><h2>O que fica para as empresas</h2><p>A hist&#243;ria do Hermes condensa quatro li&#231;&#245;es que venho testando na pr&#225;tica com times no Brasil. Primeira: a camada de contexto &#233; o ativo, o modelo &#233; insumo. O takeaway p&#250;blico do pr&#243;prio Peter Yang formula isso com precis&#227;o: o &#8220;pessoal&#8221; do agente pessoal est&#225; na mem&#243;ria das conversas e nas skills constru&#237;das com ele, e o modelo &#233; intercambi&#225;vel. Empresas deveriam versionar, auditar e proteger suas mem&#243;rias e skills com o mesmo rigor que aplicam a c&#243;digo, porque &#233; essa camada que carrega o conhecimento operacional.</p><p>Segunda: curadoria de contexto &#233; rotina, e d&#225; para automatizar. O Hermes Curator existe porque contexto cresce como mato. Qualquer opera&#231;&#227;o s&#233;ria de agentes precisa de um processo equivalente, agendado, com crit&#233;rios expl&#237;citos e revis&#225;veis, para podar skills redundantes e consolidar mem&#243;ria.</p><p>Terceira: harness importa tanto quanto modelo. Se um agente aberto consegue, com o mesmo Claude, entregar um mod de dificuldade extrema numa codebase que o modelo desconhece, a diferen&#231;a foi fabricada pela orquestra&#231;&#227;o: leitura de documenta&#231;&#227;o, mem&#243;ria persistente, skills acumuladas. Antes de pagar pelo pr&#243;ximo modelo de fronteira, vale perguntar quanto desempenho est&#225; sendo deixado na mesa por um harness pobre.</p><p>Quarta: lock-in de agente &#233; risco de balan&#231;o, ainda que invis&#237;vel hoje. Subs&#237;dio de token &#233; decis&#227;o de marketing dos laborat&#243;rios, e decis&#245;es de marketing mudam. Manter a camada de contexto port&#225;vel, em padr&#245;es abertos, &#233; o hedge barato contra esse dia.</p><p>Fico com uma pergunta que o epis&#243;dio deixa no ar e que vale para qualquer organiza&#231;&#227;o montando sua opera&#231;&#227;o de IA agora: quando os pre&#231;os convergirem e os modelos virarem commodity, o que exatamente da sua opera&#231;&#227;o de IA vai ser seu?</p><div><hr></div><p><em>Fontes: <a href="https://youtu.be/UWjh5Z4s8jY?si=bpC9P9YpvZkpNyaO">entrevista de Karan Malhotra a Peter Yang (Behind the Craft, 02/08/2026)</a>, <a href="https://github.com/NousResearch/hermes-agent">reposit&#243;rio</a> e <a href="https://hermes-agent.nousresearch.com/">documenta&#231;&#227;o oficiais do Hermes Agent</a> (dados de 16/08/2026), NVIDIA blog, Fortune e Dealroom. </em></p>]]></content:encoded></item><item><title><![CDATA[22.580: do GPT-2 ao Kimi K3, explicado]]></title><description><![CDATA[Como a arquitetura de aten&#231;&#227;o evoluiu de um modelo de 124 milh&#245;es para um sistema de 2,8 trilh&#245;es de par&#226;metros]]></description><link>https://www.guilhermefavaron.com.br/p/22580-do-gpt-2-ao-kimi-k3-explicado</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/22580-do-gpt-2-ao-kimi-k3-explicado</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Sun, 09 Aug 2026 18:25:17 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!nBu9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Este artigo n&#227;o foi escrito por mim, mas eu gostaria muito de t&#234;-lo escrito. Por isso, segue tradu&#231;&#227;o adaptada do artigo na &#237;ntegra. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nBu9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nBu9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nBu9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg" width="1200" height="814" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:814,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!nBu9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nBu9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b00b728-157f-4686-a828-b6582e85062e_1200x814.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Linha do tempo das principais mudan&#231;as arquiteturais entre a aten&#231;&#227;o softmax e o Kimi k3.</figcaption></figure></div><p style="text-align: justify;">Vinte e dois mil quinhentos e oitenta. &#201; essa a quantidade de modelos GPT-2 (2019) que cabe dentro do Kimi K3 (2026). Em sete anos, aumentamos a escala por um fator de 22.580. Mas ser&#225; que foi apenas... escala?</p><p style="text-align: justify;">Neste di&#225;rio de trabalho, vou mostrar como chegamos at&#233; aqui e quanto &#8212; ou qu&#227;o pouco &#8212; realmente mudou desde ent&#227;o. Acompanharemos os principais avan&#231;os arquiteturais que levaram ao Kimi K3.</p><p>Nota editorial: os r&#243;tulos incorporados &#224;s imagens foram preservados no idioma original; t&#237;tulos, prosa, listas, coment&#225;rios de c&#243;digo e legendas est&#227;o em portugu&#234;s brasileiro.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!obb4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!obb4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 424w, https://substackcdn.com/image/fetch/$s_!obb4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 848w, https://substackcdn.com/image/fetch/$s_!obb4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!obb4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!obb4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg" width="1200" height="705" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/edf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:705,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!obb4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 424w, https://substackcdn.com/image/fetch/$s_!obb4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 848w, https://substackcdn.com/image/fetch/$s_!obb4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!obb4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedf697c2-25f8-45c7-a4ed-79e7ff6a7233_1200x705.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Vis&#227;o comparativa das arquiteturas discutidas ao longo do artigo.</em></figcaption></figure></div><h1 style="text-align: justify;">GPT-2</h1><p style="text-align: justify;">O GPT-2 usa uma arquitetura somente decodificadora:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;c82ed685-1d14-49d0-af58-11babb5e4931&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">tok_emb = self.transformer.wte(idx) # embeddings de tokens com forma (b, t, n_embd)
pos_emb = self.transformer.wpe(pos) # embeddings de posi&#231;&#227;o com forma (t, n_embd)
x = self.transformer.drop(tok_emb + pos_emb)
for block in self.transformer.h:
 x = block(x)
x = self.transformer.ln_f(x)
logits = self.lm_head(x)
return logits</code></pre></div></blockquote><p style="text-align: justify;">A entrada recebe embeddings de tokens e de posi&#231;&#227;o:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SXua!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SXua!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!SXua!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!SXua!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!SXua!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SXua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg" width="1134" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1134,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!SXua!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!SXua!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!SXua!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!SXua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff222a864-9ac5-47fd-b98d-4e4d1397ada2_1134x1200.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Combina&#231;&#227;o dos embeddings de tokens e de posi&#231;&#227;o na entrada d</em>Ao ampliar um bloco Transformer, vemos esta estrutura:</figcaption></figure></div><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;9f35b3d8-92ed-4ed4-b8c4-4bf08fd3c778&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">class Block(nn.Module):
 def __init__(self, config):
 super().__init__()
 self.ln_1 = LayerNorm(config.n_embd, bias=config.bias)
 self.attn = CausalSelfAttention(config)
 self.ln_2 = LayerNorm(config.n_embd, bias=config.bias)
 self.mlp = MLP(config)

 def forward(self, x):
 x = x + self.attn(self.ln_1(x))
 x = x + self.mlp(self.ln_2(x))
 return x</code></pre></div></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nR2R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nR2R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nR2R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg" width="1200" height="1120" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1120,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!nR2R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nR2R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfba42ae-7497-42a2-ad7f-0eda99f85af4_1200x1120.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Estrutura de um bloco Transformer do GPT-2 e sua aten&#231;&#227;o multi-head.</em></figcaption></figure></div><p style="text-align: justify;">O processo de aten&#231;&#227;o:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;a9ec02db-05fd-46f0-82f5-19ea9ac17838&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">B, T, C = x.size() # tamanho do lote, comprimento da sequ&#234;ncia e dimens&#227;o do embedding (n_embd)

# calcula consultas, chaves e valores para todas as cabe&#231;as e move a dimens&#227;o de cabe&#231;as para a frente
 q, k, v = self.c_attn(x).split(self.n_embd, dim=2)
 k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)
 q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)
 v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)

# implementa&#231;&#227;o manual da aten&#231;&#227;o
 att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1)))
 att = att.masked_fill(self.bias[:,:,:T,:T] == 0, float(&#8217;-inf&#8217;))
 att = F.softmax(att, dim=-1)
 att = self.attn_dropout(att)
 y = att @ v # (B, nh, T, T) x (B, nh, T, hs) -&gt; (B, nh, T, hs)
 y = y.transpose(1, 2).contiguous().view(B, T, C) # reagrupa lado a lado as sa&#237;das de todas as cabe&#231;as

# proje&#231;&#227;o de sa&#237;da
 y = self.resid_dropout(self.c_proj(y))
 return y</code></pre></div></blockquote><p style="text-align: justify;">Depois de produzir a matriz final de estados ocultos, a cabe&#231;a do modelo de linguagem a converte em logits sobre o vocabul&#225;rio. Durante a decodifica&#231;&#227;o autorregressiva, apenas os logits da &#250;ltima posi&#231;&#227;o s&#227;o necess&#225;rios para escolher o pr&#243;ximo token.</p><p style="text-align: justify;">Essa &#233; uma inefici&#234;ncia da gera&#231;&#227;o somente decodificadora: o modelo calcula representa&#231;&#245;es para todas as posi&#231;&#245;es da entrada, embora cada etapa de decodifica&#231;&#227;o consuma apenas os logits da posi&#231;&#227;o final. Sem cache, grande parte desse trabalho seria repetida para o token seguinte.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9rAc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9rAc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 424w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 848w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 1272w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9rAc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png" width="1200" height="362" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:362,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!9rAc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 424w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 848w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 1272w, https://substackcdn.com/image/fetch/$s_!9rAc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01667994-b187-4fa9-9ff6-8ca31a6bc9cb_1200x362.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>C&#225;lculo dos estados ocultos e uso do resultado na gera&#231;&#227;o autorregressiva.</em></figcaption></figure></div><p style="text-align: justify;">O cache de KV nasce de uma observa&#231;&#227;o simples: depois que o token gerado &#233; anexado &#224; entrada, o modelo teria de recalcular as proje&#231;&#245;es de todos os tokens anteriores. Armazenar seus vetores de chave e valor evita esse trabalho redundante.</p><p style="text-align: justify;">Esse armazenamento &#233; o cache de KV. Ele ret&#233;m vetores dos N&#8722;1 tokens anteriores e pode crescer a ponto de se tornar um gargalo de largura de banda de mem&#243;ria.</p><p style="text-align: justify;">No total, com cerca de 50 mil tokens poss&#237;veis, 12 blocos, 12 cabe&#231;as e uma dimens&#227;o de embedding de 768, nosso modelo de refer&#234;ncia tem aproximadamente 124 milh&#245;es de par&#226;metros.</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;9b61c7ec-6168-43d9-a9a2-ec9d5510ee16&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">vocab_size: int = 50304 # vocab_size do GPT-2 (50257), preenchido at&#233; o m&#250;ltiplo de 64 mais pr&#243;ximo para maior efici&#234;ncia
n_layer: int = 12
n_head: int = 12
n_embd: int = 768</code></pre></div></blockquote><p style="text-align: justify;">Com 2,8 trilh&#245;es de par&#226;metros, um &#250;nico Kimi K3 cont&#233;m aproximadamente tantos par&#226;metros quanto 22.580 modelos GPT-2.</p><h1 style="text-align: justify;">Aten&#231;&#227;o linear</h1><p style="text-align: justify;">A aten&#231;&#227;o softmax aplica sua n&#227;o linearidade depois do produto q&#183;k, acoplando cada consulta a todas as chaves. A aten&#231;&#227;o linear, por sua vez, aplica separadamente a q e k um mapa de caracter&#237;sticas, como ELU+1. Assim, o produto pode ser reassociado e o conjunto crescente de vetores K e V pode ser condensado em um estado fixo D&#215;D.</p><p style="text-align: justify;">A formula&#231;&#227;o O(N&#178;) do artigo me confundiu. N&#227;o &#233; verdade que &#8220;o custo por passo de tempo dos Transformers cresce com o quadrado do comprimento atual da sequ&#234;ncia&#8221;. &#201; justamente isso que o FlashAttention resolve... at&#233; eu perceber que o trabalho citado foi publicado em 2020.</p><p style="text-align: justify;">Na &#233;poca, o treinamento normalmente materializava a matriz de aten&#231;&#227;o N&#215;N inteira, o FlashAttention ainda n&#227;o existia e implementa&#231;&#245;es autorregressivas de refer&#234;ncia frequentemente recalculavam todo o hist&#243;rico de tokens sem usar um cache de KV.</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;f507eb57-16b4-4848-84ca-8e8bd317c23b&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">def forward(self, x, mask=None, past_kv=None):
# x tem forma b,t,d
 b,t,d=x.shape
 d_head=d//self.num_heads
 h=self.num_heads
 qkv=self.qkv_proj(x)

 q=qkv[:, :, :d].view(b,t,h,d_head).transpose(1,2)
 k=qkv[:, :, d:2*d].view(b,t,h,d_head).transpose(1,2)
 v=qkv[:, :, 2*d:].view(b,t,h,d_head).transpose(1,2)

# no prefill, q,k,v t&#234;m forma b,h,t,d
# na decodifica&#231;&#227;o, a forma &#233; b,h,1,d
# a concatena&#231;&#227;o ocorre na dimens&#227;o t, dim(2)

 if past_kv is not None:
 k_past=past_kv[0]
 v_past=past_kv[1]
 k=torch.cat((k_past, k), dim=2)
 v=torch.cat((v_past, v), dim=2)

 scores=(q@k.transpose(-1,-2))/math.sqrt(d_head)
 if past_kv is None: # estamos no prefill e precisamos aplicar a m&#225;scara
 causal_mask=torch.ones(t,t,dtype=bool, device=q.device)
 causal_mask=torch.triu(causal_mask, diagonal=1)
 scores=scores.masked_fill(causal_mask, float(&#8217;-inf&#8217;))

 if mask is not None:
 scores=scores.masked_fill(~mask, float(&#8217;-inf&#8217;))

# calcula a aten&#231;&#227;o (bhtt x bhtd)
 attn=scores.softmax(-1) # bhtt
 o=attn@v # bhtd
 o=o.transpose(1,2).contiguous().view(b,t,d) # b,t,d

# usa x para obter qkv
 o_proj=self.o_proj(o)
 past_kv=(k, v)
 return o_proj, past_kv</code></pre></div></blockquote><p style="text-align: justify;">O mesmo processo fica mais claro visualmente. Cada etapa de decodifica&#231;&#227;o realiza duas leituras ND e duas grava&#231;&#245;es 1D na HBM, enquanto o cache de KV cresce linearmente, em O(N), com o comprimento da sequ&#234;ncia.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ewCx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ewCx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 424w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 848w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 1272w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ewCx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png" width="562" height="811.364238410596" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1744,&quot;width&quot;:1208,&quot;resizeWidth&quot;:562,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!ewCx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 424w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 848w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 1272w, https://substackcdn.com/image/fetch/$s_!ewCx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F630dc7cc-2271-4189-85ae-e421e519197f_1208x1744.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Leituras, grava&#231;&#245;es e crescimento do cache de KV durante a decodifica&#231;&#227;o.</em></figcaption></figure></div><p style="text-align: justify;">Observe o excesso de leituras e grava&#231;&#245;es, que o artigo substitui por:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;76470fad-4b2c-45fc-8b5f-e89361338c35&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">def forward(self, x, mask=None, cache=None):
# x tem forma b,t,d
 b,t,d=x.shape
 d_head=d//self.num_heads
 h=self.num_heads
 qkv=self.qkv_proj(x)

 q=qkv[:, :, :d].view(b,t,h,d_head).transpose(1,2)
 k=qkv[:, :, d:2*d].view(b,t,h,d_head).transpose(1,2)
 v=qkv[:, :, 2*d:].view(b,t,h,d_head).transpose(1,2)
 
 k=F.elu(k)+1 
 k=k.transpose(-1,-2) 
 q=F.elu(q)+1
 
 S,z=cache if cache is not None else (0.0, 0.0)
 S=S+k@v
 z=z+k
 
 o=q@S # bhtd
 denom=q@z
 o_scaled=o/denom
 o_scaled=o_scaled.transpose(1,2).contiguous().view(b,t,d)
 o_proj=self.o_proj(o_scaled)
 cache=(S,z)
 
 return o_proj, cache</code></pre></div></blockquote><p style="text-align: justify;">H&#225; uma contrapartida.</p><p style="text-align: justify;">Aqui, substitu&#237;mos a exponencia&#231;&#227;o do softmax por ELU+1, aplicada separadamente a q e k antes de eles interagirem. As duas abordagens normalizam os escores resultantes, mas o mapa de caracter&#237;sticas da aten&#231;&#227;o linear &#233; uma aproxima&#231;&#227;o menos expressiva do kernel softmax. Essa aproxima&#231;&#227;o pode reduzir a fidelidade, embora a perda pr&#225;tica de acur&#225;cia dependa da arquitetura e da carga de trabalho.</p><p style="text-align: justify;">Ainda dividimos pela soma de qk, embora isso tenha sido omitido do diagrama para simplificar. Em alto n&#237;vel, a aten&#231;&#227;o &#233; composta por tr&#234;s etapas:</p><p style="text-align: justify;"><span>1. </span>Tornar n&#227;o negativos os escores de qk. A aten&#231;&#227;o linear usa ELU+1, enquanto o softmax usa exponencia&#231;&#227;o.</p><p style="text-align: justify;"><span>2. </span>Dividir pela soma.</p><p style="text-align: justify;"><span>3. </span>Calcular a m&#233;dia ponderada dos valores.</p><p style="text-align: justify;">Isso preserva o contrato b&#225;sico da aten&#231;&#227;o, mas usa um mapa de caracter&#237;sticas menos expressivo para tornar n&#227;o negativos os escores de QK.</p><h1 style="text-align: justify;">DeltaNet (programadores de pesos r&#225;pidos)</h1><p style="text-align: justify;">Um cache finito precisa sobrescrever ou combinar informa&#231;&#245;es j&#225; armazenadas. O estado do token i&#8722;1 n&#227;o recebe um espa&#231;o pr&#243;prio; ele &#233; somado &#224; mesma matriz D&#215;D. Por isso, novas consultas j&#225; n&#227;o conseguem recuperar uma representa&#231;&#227;o perfeitamente isolada de cada token anterior.</p><p style="text-align: justify;">Essa soma tamb&#233;m &#233; a origem do ganho de efici&#234;ncia. Atualizar o cache por adi&#231;&#227;o, em vez de concatena&#231;&#227;o, impede que ele cres&#231;a em O(N), mas a mesma opera&#231;&#227;o faz as informa&#231;&#245;es interferirem entre si. A DeltaNet tenta recuperar essa capacidade de acesso.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pDpc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pDpc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 424w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 848w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 1272w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pDpc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png" width="1200" height="365" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bff8d818-6193-4327-9b3d-499273728a56_1200x365.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:365,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!pDpc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 424w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 848w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 1272w, https://substackcdn.com/image/fetch/$s_!pDpc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff8d818-6193-4327-9b3d-499273728a56_1200x365.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Interfer&#234;ncia causada por atualiza&#231;&#245;es puramente aditivas em uma mem&#243;ria de tamanho fixo.</em></figcaption></figure></div><p>Como resume com precis&#227;o o artigo de Schlag, Fast Weight Programmers: &#8220;quando o comprimento da sequ&#234;ncia ultrapassa a capacidade de armazenamento, o modelo pode entrar em um regime de sobrecapacidade. Para operar adequadamente nesse regime, ele deve aprender a interagir dinamicamente com o conte&#250;do da mem&#243;ria e decidir, de forma seletiva, quais associa&#231;&#245;es chave&#8211;valor manter e quais excluir. A instru&#231;&#227;o puramente aditiva pode ser inadequada para essa finalidade [...]. Somar indefinidamente novas associa&#231;&#245;es a uma mem&#243;ria de tamanho finito, como na Eq. 17, inevitavelmente atingir&#225; um limite&#8221;.</p><p style="text-align: justify;">O regime que torna a aten&#231;&#227;o linear atraente &#8212; quando N &#233; muito maior que D &#8212; tamb&#233;m exp&#245;e sua principal limita&#231;&#227;o. Quando o estado ultrapassa sua capacidade efetiva, as associa&#231;&#245;es come&#231;am a interferir, pois a atualiza&#231;&#227;o &#233; aditiva e nada sai do cache.</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;db124f62-d666-41d2-a4b8-344bc92ebf89&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">def forward(self, x, mask=None, cache=None):
# x tem forma b,t,d
 b,t,d=x.shape
 d_head=d//self.num_heads
 h=self.num_heads
 qkv=self.qkv_proj(x)

 q=qkv[:, :, :d].view(b,t,h,d_head).transpose(1,2)
 k=qkv[:, :, d:2*d].view(b,t,h,d_head).transpose(1,2)
 v=qkv[:, :, 2*d:].view(b,t,h,d_head).transpose(1,2)

 q = F.normalize(F.silu(q), dim=-1) 
 k = F.normalize(F.silu(k), dim=-1) 
 beta = torch.sigmoid(self.w_beta(x)).view(b, 1, t, 1) 
# novo: intensidade de grava&#231;&#227;o por token

 S = cache if cache is not None else 0.0 

 v_old = k @ S # l&#234; a mem&#243;ria nesta chave
 u = beta * (v - v_old) # o delta: apenas o que &#233; realmente novo
 S = S + k.transpose(-1, -2) @ u # a mesma grava&#231;&#227;o por produto externo usada antes

 o = q @ S # leitura sem denominador
 o = o.transpose(1, 2).contiguous().view(b, t, d)
 return self.o_proj(o), S</code></pre></div></blockquote><p style="text-align: justify;">Um exemplo visual ajuda a acompanhar o processo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9kVx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9kVx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9kVx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg" width="1200" height="358" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:358,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!9kVx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9kVx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44dafbc6-e309-4503-a40f-34e864c26e67_1200x358.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Leitura e substitui&#231;&#227;o de uma associa&#231;&#227;o chave&#8211;valor pela regra delta.</em></figcaption></figure></div><p style="text-align: justify;">Considere uma &#250;nica associa&#231;&#227;o gravada como S = k.T @ v. Se a lermos de volta com a mesma chave, obtemos k @ (k.T @ v), isto &#233;, (k @ k.T) v: a norma de k ao quadrado multiplicada por v. A leitura, portanto, devolve v escalado pela norma quadr&#225;tica da chave. Se normalizarmos k para ter norma unit&#225;ria &#8212; ou simplesmente dividirmos o resultado pela norma &#8212; recuperamos v exatamente.</p><p style="text-align: justify;">Q tamb&#233;m funciona como um ponteiro aprendido. Wq e Wk leem o mesmo fluxo residual, e a consulta associada a um fato aponta para a dire&#231;&#227;o da chave na qual esse fato foi gravado. Primeiro, a atualiza&#231;&#227;o pergunta qual informa&#231;&#227;o a chave atual recupera do cache. Em seguida, subtrai essa informa&#231;&#227;o existente do valor que queremos armazenar, multiplica a diferen&#231;a pela chave e soma o resultado de volta. A informa&#231;&#227;o antiga &#233; removida e a nova &#233; gravada em seu lugar.</p><h1 style="text-align: justify;">DeltaNet: paralelizando transformadores lineares com a regra delta</h1><p style="text-align: justify;">Esta &#233; a se&#231;&#227;o mais dif&#237;cil do texto. Levei cerca de sete horas para chegar a uma compreens&#227;o funcional, por isso construirei a explica&#231;&#227;o a partir da implementa&#231;&#227;o. Em resumo, a DeltaNet implementa uma recorr&#234;ncia linear de primeira ordem com matrizes de transi&#231;&#227;o de Householder generalizadas. Isso permite passagens diretas paralelas por chunks, adequadas ao hardware, durante um treinamento de tempo linear. As entradas e sa&#237;das s&#227;o divididas em chunks de tamanho C, e a sa&#237;da de cada chunk &#233; calculada com base no estado final do chunk anterior e nos blocos de consulta, chave e valor do chunk atual.</p><p style="text-align: justify;">O problema pr&#225;tico est&#225; no prefill. Uma implementa&#231;&#227;o direta da regra delta sobre uma sequ&#234;ncia de T tokens seria assim:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;2b5a3d95-af89-423b-9908-50688bea5c54&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">S = torch.zeros(b, h, dh, dh) if cache is None else cache
outs = []
for i in range(t):
 k_i = k[:, :, i:i+1] 
 v_i = v[:, :, i:i+1]
 b_i = beta[:, :, i:i+1]
 v_old = k_i @ S 
 u_i = b_i * (v_i - v_old)
 S = S + k_i.transpose(-1, -2) @ u_i # grava&#231;&#227;o
 outs.append(q[:, :, i:i+1] @ S) 
o = torch.cat(outs, dim=2)</code></pre></div></blockquote><p style="text-align: justify;">Ao contr&#225;rio da aten&#231;&#227;o padr&#227;o, essa formula&#231;&#227;o exige uma corre&#231;&#227;o em cada vetor de chave, por isso o caminho at&#233; uma multiplica&#231;&#227;o matricial paralela n&#227;o &#233; imediatamente &#243;bvio. Mesmo sem a regra delta, um prefill direto de aten&#231;&#227;o linear continua sequencial:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;96f08ba2-4cb7-4c4d-a268-0826dbcc3c8d&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">S = torch.zeros(b, h, dh, dh) if cache is None else cache
outs = []
for i in range(t):
 q = q[:, :, i:i+1] 
 k = k[:, :, i:i+1] 
 v = v[:, :, i:i+1]

 S=S_old+k@v
 o=q@S # bhtd
 o=self.norm(o)
 o=o.transpose(1, 2).contiguous().view(b, t, d)

 out=self.o_proj(o)
 cache=S
 outs.append(out)

o = torch.cat(outs, dim=2)</code></pre></div></blockquote><p style="text-align: justify;">Uma formula&#231;&#227;o em chunks oferece uma alternativa mais eficiente. A mec&#226;nica fica mais f&#225;cil de entender com um exemplo:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o0lB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o0lB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 424w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 848w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o0lB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg" width="1200" height="713" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:713,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!o0lB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 424w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 848w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!o0lB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd30af55-3963-428b-b2bb-a1b4f5cff7e1_1200x713.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Divis&#227;o da sequ&#234;ncia em chunks para combinar aten&#231;&#227;o local e estado recorrente.</em></figcaption></figure></div><p style="text-align: justify;">Definir C=N recupera a aten&#231;&#227;o O(N&#178;) padr&#227;o, enquanto C=1 produz a aten&#231;&#227;o linear convencional. Valores intermedi&#225;rios equilibram trabalho adicional dentro de cada chunk com melhor utiliza&#231;&#227;o do hardware. Na pr&#225;tica, C costuma ser 64 ou 128 porque as instru&#231;&#245;es dos tensor cores operam eficientemente nessa granularidade; UMMA &#233; um exemplo.</p><p style="text-align: justify;">Os blocos intermedi&#225;rios s&#227;o incorporados a S como parte da atualiza&#231;&#227;o de estado:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S6L7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S6L7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S6L7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg" width="1200" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!S6L7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!S6L7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46ac79e7-dd2b-4320-898e-a72825258b74_1200x722.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Atualiza&#231;&#227;o do estado recorrente entre chunks.</em></figcaption></figure></div><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;a5e5db91-d913-469a-8c29-abefbc61157c&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">S = torch.zeros(b, h, dh, dh) if cache is None else cache
outs = []
for i in range(t//C):
 q_c = q[:, :, i*C:(i+1)*C] 
 k_c = k[:, :, i*C:(i+1)*C] 
 v_c = v[:, :, i*C:(i+1)*C]

 o_prev=q_c@S # tudo o que veio antes deste bloco
 
 attn=(q_c@k_c.transpose(-1,-2)).tril() # aten&#231;&#227;o mascarada
 o_curr=attn@v_c
 
 o=o_prev+o_curr
 
 S_new=k_c.transpose(-1,-2)@v_c # aten&#231;&#227;o recorrente
 S=S+S_new
 outs.append(o)

o = torch.cat(outs, dim=2)</code></pre></div></blockquote><p style="text-align: justify;">Dentro de um bloco, calculamos q(k&#7488;v): primeiro os escores, na ordem usual da aten&#231;&#227;o, com mascaramento. Entre blocos, seguimos (k&#7488;v)q: primeiro o estado, na ordem recorrente. A aten&#231;&#227;o cresce em O(N&#178;), mas este m&#233;todo n&#227;o. Dentro de um bloco, aplico aten&#231;&#227;o real &#8212; QK&#7488; mascarado, multiplicado por V &#8212;; entre blocos, incorporo tudo ao estado e leio de volta com uma &#250;nica multiplica&#231;&#227;o matricial. O custo se divide em duas partes. H&#225; uma parcela fixa, 2Ld&#178;, correspondente ao trabalho de estado e independente de C, e uma parcela crescente, 2LCd, correspondente &#224;s matrizes de escores na diagonal. A aten&#231;&#227;o completa &#233; o caso em que C=L; ent&#227;o, o segundo termo se torna 2L&#178;d, quadr&#225;tico. Portanto, quanto menor C, menor o n&#250;mero de FLOPs.</p><p style="text-align: justify;">C=1 &#233; a op&#231;&#227;o mais barata em n&#250;mero puro de FLOPs, mas n&#227;o necessariamente em tempo de execu&#231;&#227;o. Uma GPU pode concluir mais opera&#231;&#245;es aritm&#233;ticas em menos tempo quando o trabalho se adapta bem ao hardware de multiplica&#231;&#227;o matricial.</p><p style="text-align: justify;">O pr&#243;ximo passo &#233; estender essa mesma abordagem &#224; DeltaNet.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I41A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I41A!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 424w, https://substackcdn.com/image/fetch/$s_!I41A!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 848w, https://substackcdn.com/image/fetch/$s_!I41A!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!I41A!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I41A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg" width="1200" height="716" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:716,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!I41A!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 424w, https://substackcdn.com/image/fetch/$s_!I41A!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 848w, https://substackcdn.com/image/fetch/$s_!I41A!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!I41A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2757ba95-612f-4d15-8b85-f3abcd654a1c_1200x716.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Reparametriza&#231;&#227;o necess&#225;ria para paralelizar as atualiza&#231;&#245;es delta.</em></figcaption></figure></div><p style="text-align: justify;">O problema subjacente &#233; simples: o m&#233;todo de divis&#227;o em chunks usado na aten&#231;&#227;o puramente aditiva n&#227;o se aplica diretamente &#224;s atualiza&#231;&#245;es delta:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;bf8a69a6-f290-491c-ae28-07a64ed1a00a&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">v_old = k_i @ S 
u_i = b_i * (v_i - v_old)</code></pre></div></blockquote><p style="text-align: justify;">Precisamos de cada estado intermedi&#225;rio, na ordem correta, para calcular a informa&#231;&#227;o que deve ser subtra&#237;da. N&#227;o &#233; poss&#237;vel paralelizar do mesmo modo sem alguma reparametriza&#231;&#227;o matem&#225;tica. Por isso, os autores reescrevem as atualiza&#231;&#245;es delta de:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;843f7c77-9ebe-487b-9e0f-10faed79b3a9&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">u=v_new-v_old
S_t= S_(t-1)+K.T@u
o=q@S_T</code></pre></div></blockquote><p style="text-align: justify;">Aqui, um la&#231;o sequencial calcula um delta por itera&#231;&#227;o. A forma reparametrizada &#233;:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;20e9a075-8f6b-4724-9eb2-6e980eafae67&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">S_t = S_{t-1}(I &#8722; &#946;_t k_t k_t&#7488;) + &#946;_t v_t k_t&#7488;
o_t = S_t q_t</code></pre></div></blockquote><p style="text-align: justify;">Essa formula&#231;&#227;o permite que o c&#243;digo em chunks calcule os C deltas de uma s&#243; vez:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;49f6c8f9-4a8a-40b3-9f17-cb506d642d7a&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">def chunk_delta_rule_forward(Q, K, V, beta, C):
# L: comprimento da sequ&#234;ncia; d: dimens&#227;o da cabe&#231;a
 L, d = Q.shape
# divis&#227;o em chunks
 Q, K, V = map(lambda x: x.reshape(-1,C,d), [Q, K, V])
 beta = beta.reshape(-1, C)
 K_beta = K * beta.unsqueeze(-1)
 V_beta = V * beta.unsqueeze(-1)
 
# calcula a Eq. 10 com substitui&#231;&#227;o direta vetorizada para obter a inversa com efici&#234;ncia
 T = -(K_beta @ K.t()).tril(-1)
 for i in range(1, C):
 T[i, :i] = T[i, :i] + (T[i, :, None] * T[:, :i]).sum(-2)
 
 T += torch.eye(C)
 W = T @ K_beta
 U = T @ V_beta

# paralelismo por chunks, Eqs. 8&#8211;9
 S = torch.zeros(d, d)
 O = torch.empty_like(V)
 
 for i in range(L//C):
 q_i, k_i, w_i = Q[i], K[i], W[i]
 u_i = U[i] - w_i @ S # todas as corre&#231;&#245;es de um chunk
 o_inter = q_i @ S
 A_i = (q_i @ k_i.t()).tril() # qk.t
 o_intra = A_i @ u_i # aten&#231;&#227;o @ v, usando u por conter as corre&#231;&#245;es
 S += k_i.t() @ u_i # atualiza o estado por adi&#231;&#227;o
 O[i] = o_intra + o_inter # atualiza a sa&#237;da com os termos local e recorrente
 return O.reshape(L, d)</code></pre></div></blockquote><p style="text-align: justify;">Chegamos, assim, ao primeiro ponto de compara&#231;&#227;o: Transformers com MHA versus Transformers com DeltaNet.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vhol!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vhol!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vhol!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg" width="1200" height="504" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:504,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!Vhol!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Vhol!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef29f7ea-0dc0-4315-99f4-cc8665e74c2a_1200x504.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Compara&#231;&#227;o entre Transformers com aten&#231;&#227;o multi-head e com DeltaNet.</em></figcaption></figure></div><h1 style="text-align: justify;">Gated DeltaNet</h1><p style="text-align: justify;">Agora temos um m&#233;todo para fazer altera&#231;&#245;es precisas no cache. A cada novo fato &#8212; isto &#233;, a cada novo vetor de chave &#8212;, podemos consultar exatamente a informa&#231;&#227;o antiga armazenada naquele ponto e substitu&#237;-la pelo novo conte&#250;do ao qual queremos dar aten&#231;&#227;o.</p><p style="text-align: justify;">Esse mecanismo, por&#233;m, s&#243; consegue esquecer uma associa&#231;&#227;o quando h&#225; uma substitui&#231;&#227;o espec&#237;fica para ela. Ele n&#227;o consegue limpar v&#225;rias associa&#231;&#245;es de forma eficiente durante uma mudan&#231;a de contexto, nem fazer a mem&#243;ria decair de modo geral para liberar capacidade.</p><p style="text-align: justify;">Se estiv&#233;ssemos usando aten&#231;&#227;o linear puramente aditiva:</p><p style="text-align: justify;">Adicionar a capacidade de esquecer seria simples. Bastaria um par&#226;metro para controlar o estado a ser retido:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;bbb340fd-69a9-45f2-be55-b9d646f28790&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">S_old=cache
S_new=k@v
# cache=S_old+S_new
cache=alpha * S_old + S_new</code></pre></div></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QKPN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QKPN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 424w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 848w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 1272w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QKPN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png" width="1200" height="258" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:258,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!QKPN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 424w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 848w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 1272w, https://substackcdn.com/image/fetch/$s_!QKPN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33a38cc0-4248-43e9-9b0b-f059b632e353_1200x258.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><em>Decaimento do estado anterior antes da inclus&#227;o de novas informa&#231;&#245;es.</em></figcaption></figure></div><p style="text-align: justify;">Essa &#233; a contribui&#231;&#227;o do Mamba-2. Aplicamos decaimento ao cache anterior e, depois, somamos o novo cache com for&#231;a total, impedindo que o estado cres&#231;a sem limite.</p><p style="text-align: justify;">Aplicar, em cada passo de tempo, o mesmo decaimento din&#226;mico a todas as associa&#231;&#245;es chave&#8211;valor &#233; uma abordagem funcional &#8212; e &#233; o que o Mamba faz. Mas ela n&#227;o considera que associa&#231;&#245;es diferentes t&#234;m import&#226;ncias diferentes.</p><p style="text-align: justify;">Em outras palavras, se o modelo precisa esquecer uma associa&#231;&#227;o espec&#237;fica, todas as associa&#231;&#245;es s&#227;o esquecidas por igual. A regra delta, por outro lado, consegue atualizar um &#250;nico fato, mas n&#227;o oferece uma forma de fazer o restante decair.</p><p style="text-align: justify;">A regra Gated Delta combina, portanto, a atualiza&#231;&#227;o com gate do Mamba com a regra delta. Ela acrescenta um par&#226;metro, alpha, que reproduz a regra delta pura quando vale um e limpa a mem&#243;ria quando vale zero. O desafio &#233; implementar isso com o mesmo m&#233;todo de chunks paralelos.</p><p style="text-align: justify;">A implementa&#231;&#227;o usa a mesma reparametriza&#231;&#227;o da DeltaNet descrita na se&#231;&#227;o anterior. A matem&#225;tica &#233; praticamente id&#234;ntica, com um acr&#233;scimo: um escalar dependente dos dados, entre zero e um, que controla o decaimento do estado anterior. Assim, o modelo combina aprendizado eficaz de associa&#231;&#245;es chave&#8211;valor com gerenciamento adaptativo da mem&#243;ria.</p><p style="text-align: justify;">As altera&#231;&#245;es correspondentes no c&#243;digo aparecem abaixo:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!i7Oo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i7Oo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 424w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 848w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i7Oo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg" width="1200" height="686" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:686,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!i7Oo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 424w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 848w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!i7Oo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66ae281e-27ee-41df-b065-c7a1c1faf656_1200x686.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Altera&#231;&#245;es introduzidas pela regra Gated Delta.</em></figcaption></figure></div><p style="text-align: justify;">O termo &#947;&#691;/&#947;&#8305; representa o decaimento acumulado. Um token gravado no passo x e lido em x+t foi multiplicado por &#945;&#8339;&#945;&#8339;&#8330;&#8321;&#945;&#8339;&#8330;&#8322;&#8230;&#945;&#8339;&#8330;&#8348;. &#201; o an&#225;logo multiplicativo de um c&#225;lculo de soma prefixada.</p><p style="text-align: justify;">A arquitetura resultante tem esta apar&#234;ncia:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6843!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6843!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6843!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6843!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6843!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6843!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg" width="514" height="407.7733333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:952,&quot;width&quot;:1200,&quot;resizeWidth&quot;:514,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!6843!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6843!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6843!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6843!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd3ff41-2ffb-4dbf-9682-2a323262f08c_1200x952.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Arquitetura do Transformer com Gated DeltaNet.</em></figcaption></figure></div><h1 style="text-align: justify;">KDA / Kimi Linear</h1><p style="text-align: justify;">A essa altura, pesquisadores come&#231;aram a experimentar modelos h&#237;bridos que combinam v&#225;rias formas de aten&#231;&#227;o em uma &#250;nica arquitetura, como Gated DeltaNet e Mamba.</p><p style="text-align: justify;">O Kimi Linear chamou aten&#231;&#227;o por uma afirma&#231;&#227;o central: em compara&#231;&#245;es controladas, superou a aten&#231;&#227;o completa. Os autores o apresentaram como uma substitui&#231;&#227;o arquitetural direta, com melhor qualidade e throughput de decodifica&#231;&#227;o at&#233; seis vezes maior.</p><p style="text-align: justify;">O Kimi Linear avan&#231;a sobre a Gated DeltaNet ao introduzir gating de granularidade fina. Em vez de um &#250;nico escalar de decaimento, aprende um valor de decaimento separado para cada canal.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Xd4x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xd4x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xd4x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg" width="458" height="557.3688362919132" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1234,&quot;width&quot;:1014,&quot;resizeWidth&quot;:458,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!Xd4x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Xd4x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd4ce7ee1-3891-49e7-8da7-6312917d4969_1014x1234.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Controle de decaimento por canal na Kimi Delta Attention.</em></figcaption></figure></div><p style="text-align: justify;">A regra de atualiza&#231;&#227;o da KDA permanece semelhante, mas o c&#243;digo passa a se parecer mais com isto:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5q4o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5q4o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5q4o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg" width="1200" height="462" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:462,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!5q4o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5q4o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8edced92-1d52-4b8f-9f84-29916260f9bf_1200x462.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Forma vetorizada da atualiza&#231;&#227;o de KDA.</em></figcaption></figure></div><p style="text-align: justify;">Aqui, alpha.reshape(nb, C, d) representa a contribui&#231;&#227;o mais importante do artigo: controle de granularidade fina sobre o decaimento da mem&#243;ria.</p><p style="text-align: justify;">Colocada ao lado do Transformer com DeltaNet, a arquitetura Kimi Linear apresenta tr&#234;s mudan&#231;as principais:</p><p style="text-align: justify;"><span>1. </span>Usa um sistema h&#237;brido que intercala camadas de Multi-head Latent Attention (MLA).</p><p style="text-align: justify;"><span>2. </span>Substitui a MLP por uma camada Mixture-of-Experts (MoE).</p><p style="text-align: justify;"><span>3. </span>Amplia a capacidade da DeltaNet por meio da proje&#231;&#227;o alpha.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FvzJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FvzJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FvzJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg" width="1200" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!FvzJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FvzJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48bb6470-beec-4986-9b17-3913f0eca858_1200x722.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Mudan&#231;as arquiteturais da DeltaNet para o Kimi Linear.</em></figcaption></figure></div><p style="text-align: justify;">As se&#231;&#245;es seguintes explicam MLA e MoE com mais detalhes. Por ora, o ponto central &#233; que n&#227;o se trata de escalar &#224;s cegas. A capacidade adicional tem um prop&#243;sito matem&#225;tico espec&#237;fico: a escala por canal oferece ao modelo controle mais preciso sobre o decaimento da mem&#243;ria.</p><p style="text-align: justify;">As leis de escala continuam relevantes, mas a capacidade precisa ser adicionada no lugar certo e em uma forma que o sistema consiga usar. Cada arquitetura dessa progress&#227;o acrescenta capacidade para resolver uma limita&#231;&#227;o concreta do sistema anterior.</p><h1 style="text-align: justify;">Kimi K3</h1><p style="text-align: justify;">Em &#250;ltima an&#225;lise, a espinha dorsal de linguagem do Kimi K3 se parece com o modelo Kimi Linear acima. Ela cont&#233;m 23 macrociclos de quatro camadas. Em cada macrociclo, tr&#234;s camadas usam Kimi Delta Attention e a quarta usa Multi-head Latent Attention. A primeira camada emprega uma rede feed-forward densa; todas as demais usam uma Mixture-of-Experts latente.</p><p style="text-align: justify;">&#192; primeira vista, as mudan&#231;as em rela&#231;&#227;o ao Kimi Linear parecem modestas:</p><ol><li><p style="text-align: justify;">Um aumento substancial de escala</p></li><li><p style="text-align: justify;">AttnRes em blocos a cada 12 camadas</p></li><li><p style="text-align: justify;">LoRA de consulta na MLA e gating de sa&#237;da</p></li><li><p style="text-align: justify;">MoE em espa&#231;o latente</p></li><li><p style="text-align: justify;">Ativa&#231;&#245;es SiTU</p></li><li><p style="text-align: justify;">MLA com gating</p></li></ol><p style="text-align: justify;">A KDA fornece mem&#243;ria recorrente de estado constante, enquanto camadas peri&#243;dicas de MLA preservam a recupera&#231;&#227;o softmax completa sobre o contexto. A visualiza&#231;&#227;o simplificada a seguir serve como refer&#234;ncia para as mudan&#231;as discutidas abaixo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8F8n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8F8n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8F8n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg" width="1200" height="765" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:765,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!8F8n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8F8n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb65f507-ee60-48a0-b8a3-28863a595557_1200x765.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Arquitetura simplificada da espinha dorsal do Kimi K3.</em></figcaption></figure></div><p style="text-align: justify;">Come&#231;aremos pelas mudan&#231;as mais diretas: MLA com gating, MoE em espa&#231;o latente e ativa&#231;&#245;es SiTU.</p><p style="text-align: justify;">A MLA com gating determina quanto de cada caracter&#237;stica recuperada passa da MLA para o fluxo residual. Isso &#233; feito por multiplica&#231;&#227;o elemento a elemento com um gate projetado a partir da entrada.</p><p style="text-align: justify;">Em uma MoE convencional, um roteador aprendido usa similaridade por produto escalar para enviar cada token a um subconjunto de redes especialistas. O Kimi K3 tem 898 especialistas no total. Dois s&#227;o compartilhados e processam todos os tokens; entre os outros 896, o roteador seleciona 16 para cada token.</p><p style="text-align: justify;">O Kimi K3 tamb&#233;m altera a ativa&#231;&#227;o dos especialistas. Em vez de aplicar SiLU &#224; proje&#231;&#227;o ascendente, multiplic&#225;-la elemento a elemento pelo gate e, em seguida, aplicar a proje&#231;&#227;o descendente, o modelo usa SiTU:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;f0f85fc2-7957-4afd-8630-8eb1f5ea7b35&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">d = x.shape[-1] // 2
gate = x[..., :d].to(torch.float32)
up = x[..., d:].to(torch.float32)
situ_a = self.beta * torch.tanh(gate / self.beta) * torch.sigmoid(gate)
if self.linear_beta is not None:
 up = self.linear_beta * torch.tanh(up / self.linear_beta)
return (situ_a * up).to(x.dtype)</code></pre></div></blockquote><p style="text-align: justify;">O modelo tamb&#233;m reduz a dimensionalidade das entradas destinadas aos especialistas compartilhados e volta a expandir a soma final:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vglT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vglT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vglT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vglT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vglT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vglT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg" width="1200" height="555" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:555,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!vglT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vglT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vglT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vglT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf58b6d0-3b4c-44d9-ba65-878e24229367_1200x555.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Especialistas compartilhados e roteados em espa&#231;o latente.</em></figcaption></figure></div><p style="text-align: justify;">Isso ilustra um desafio recorrente na infer&#234;ncia de modelos. Sem um kernel fundido, a nova ativa&#231;&#227;o &#233; quase tr&#234;s vezes mais lenta que o caminho original. Uma otimiza&#231;&#227;o compensat&#243;ria &#233; que os especialistas operam em um espa&#231;o latente comprimido, o que torna sua passagem direta muito mais r&#225;pida e quase reduz os FLOPs pela metade.</p><p style="text-align: justify;">As mudan&#231;as restantes s&#227;o LoRA de consulta na MLA, gating de sa&#237;da e Attention Residuals em blocos a cada 12 camadas. A AttnRes acrescenta aproximadamente 2% de lat&#234;ncia &#224; infer&#234;ncia, mas oferece dois benef&#237;cios importantes:</p><p style="text-align: justify;"><span>1. </span>Recupera&#231;&#227;o seletiva de representa&#231;&#245;es anteriores, o que reduz a dilui&#231;&#227;o residual e o crescimento dos estados ocultos</p><p style="text-align: justify;"><span>2. </span>Uma vantagem computacional de 1,25x</p><p style="text-align: justify;">AttnRes e MLA atacam a mesma limita&#231;&#227;o subjacente por caminhos diferentes. As camadas de KDA trabalham com um estado de tamanho constante e, inevitavelmente, precisam descartar informa&#231;&#227;o. A MLA recupera conte&#250;do do contexto de tokens, enquanto a AttnRes recupera representa&#231;&#245;es anteriores ao longo da profundidade da rede.</p><h1 style="text-align: justify;">AttnRes</h1><p style="text-align: justify;">Agrade&#231;o a <a href="https://x.com/@chloey3k"><span>@chloey3k</span></a> pela ajuda nesta se&#231;&#227;o. Em cada passagem direta, a entrada percorre uma pilha de camadas. Aqui, cada camada cont&#233;m um bloco de aten&#231;&#227;o &#8212; KDA ou MLA &#8212; e um bloco MLP ou MoE. Normalmente, a entrada de cada camada &#233; a soma do embedding original com a sa&#237;da de todas as camadas anteriores, todas com o mesmo peso.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HDPa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HDPa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 424w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 848w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 1272w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HDPa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png" width="234" height="110.03571428571429" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:158,&quot;width&quot;:336,&quot;resizeWidth&quot;:234,&quot;bytes&quot;:7865,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/210417903?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HDPa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 424w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 848w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 1272w, https://substackcdn.com/image/fetch/$s_!HDPa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F558524cf-1f5e-4ad1-a0b1-18bf29fc36e6_336x158.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: justify;">Aqui, h_i &#233; a entrada da camada i, h_1 &#233; o embedding do token atual &#8212; o &#250;ltimo token da sequ&#234;ncia at&#233; aquele momento &#8212; e f_i(h_i) &#233; a sa&#237;da da camada i, isto &#233;, um bloco de aten&#231;&#227;o ou MLP.</p><p style="text-align: justify;">O problema &#233; a falta de acesso seletivo. Tipos diferentes de camada recebem o mesmo estado agregado, embora possam se beneficiar de pondera&#231;&#245;es distintas. Como a recorr&#234;ncia &#233; puramente aditiva, camadas posteriores tamb&#233;m precisam aprender sa&#237;das cada vez maiores para influenciar o residual acumulado, o que pode desestabilizar o treinamento. Em vez de tratar todas as camadas por igual, a AttnRes multiplica cada termo dessa soma por um peso especializado, permitindo que o modelo valorize as camadas mais &#250;teis em cada contexto.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2bFp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2bFp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 424w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 848w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 1272w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2bFp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png" width="294" height="114.63302752293578" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:170,&quot;width&quot;:436,&quot;resizeWidth&quot;:294,&quot;bytes&quot;:9458,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/210417903?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2bFp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 424w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 848w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 1272w, https://substackcdn.com/image/fetch/$s_!2bFp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78e5f814-0847-4dd9-b93c-25769a8c1e8e_436x170.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: justify;">Cada peso alpha_i &#233; calculado por um produto escalar entre consulta e chave. A consulta &#233; aprendida para cada camada, enquanto chaves e valores v&#234;m de estados anteriores do fluxo residual. Os escores s&#227;o normalizados para somar um e, depois, usados para formar uma combina&#231;&#227;o ponderada desses estados.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vyW8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vyW8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vyW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg" width="1199" height="918" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:918,&quot;width&quot;:1199,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Imagem&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Imagem" title="Imagem" srcset="https://substackcdn.com/image/fetch/$s_!vyW8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vyW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b3985a5-7ed6-4f03-840b-21bee9fafb71_1199x918.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A AttnRes aprende pesos para recuperar seletivamente estados residuais anteriores.</em></figcaption></figure></div><p style="text-align: justify;">Assim, o modelo n&#227;o precisa se condicionar apenas ao predecessor imediato. A AttnRes oferece a cada camada acesso seletivo &#224;s sa&#237;das de camadas anteriores, permitindo que sua consulta aprendida recupere as representa&#231;&#245;es mais &#250;teis para o c&#225;lculo atual.</p><p style="text-align: justify;">O pseudoc&#243;digo abaixo aplica a mesma ideia na granularidade de blocos. Um bloco &#233; a soma elemento a elemento das sa&#237;das de aten&#231;&#227;o e MLP acumuladas ao longo de 12 camadas do decodificador, armazenada como uma &#250;nica representa&#231;&#227;o de profundidade para a mistura posterior da AttnRes.</p><p style="text-align: justify;">Aplicar aten&#231;&#227;o residual em todas as camadas acrescentaria custo demais ao treinamento e &#224; infer&#234;ncia. Us&#225;-la apenas em limites fixos de bloco captura a maior parte do benef&#237;cio com menor custo. No Kimi K3, cada limite ocorre depois de 12 camadas do decodificador. Ao longo de 23 macrociclos de quatro camadas, isso produz oito blocos AttnRes e melhora a velocidade de infer&#234;ncia.</p><p style="text-align: justify;">Esta &#233;, possivelmente, a parte mais importante da fun&#231;&#227;o block_attn_res:</p><blockquote><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;29c0b88d-d082-43db-8a4b-35c301e01e3d&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">V = torch.stack(blocks + [partial_block]) # [N+1, B, T, D]
K = norm(V)
logits = torch.einsum(&#8217;d, n b t d -&gt; n b t&#8217;, proj.weight.squeeze(), K)
h = torch.einsum(&#8217;n b t, n b t d -&gt; b t d&#8217;, logits.softmax(0), V)
return h</code></pre></div></blockquote><p style="text-align: justify;">Isso conclui a progress&#227;o do GPT-2 ao Kimi K3.</p><p style="text-align: justify;">A mudan&#231;a central n&#227;o est&#225; apenas na escala. Cada etapa arquitetural altera o que o modelo armazena, como atualiza esse estado ou como recupera informa&#231;&#245;es que um estado de tamanho fixo n&#227;o consegue preservar.</p><p style="text-align: justify;">O Kimi K3 combina mem&#243;ria recorrente de estado constante, recupera&#231;&#227;o softmax peri&#243;dica, capacidade esparsa de especialistas e acesso residual seletivo ao longo da profundidade. O resultado &#233; um sistema que investe capacidade adicional onde ela cumpre uma fun&#231;&#227;o espec&#237;fica.</p><p style="text-align: justify;">Em ess&#234;ncia, uma mem&#243;ria associativa de capacidade fixa &#8212; com dimens&#245;es fixas &#8212; precisa de uma pol&#237;tica de descarte, pois uma opera&#231;&#227;o linear puramente aditiva acaba gerando interfer&#234;ncia ao atingir o limite. Por isso, torna-se necess&#225;ria alguma forma de sele&#231;&#227;o aprendida, como gating, roteamento ou decaimento; e a aten&#231;&#227;o &#233; o mecanismo de leitura seletiva mais eficaz.</p><p><strong>Artigo original traduzido: </strong><a href="https://x.com/waterloo_intern/status/2081762065392541951"><span>publica&#231;&#227;o de @waterloo_intern no X</span></a></p>]]></content:encoded></item><item><title><![CDATA[O prompt virou contrato: o que quatro anos de papers e documentação oficial ensinam sobre conversar com a IA]]></title><description><![CDATA[O que em 2022 era acur&#225;cia, hoje &#233; desperd&#237;cio documentado: o racioc&#237;nio entrou para dentro do modelo, o controle fino virou par&#226;metro de API e a engenharia migrou do texto para o contexto]]></description><link>https://www.guilhermefavaron.com.br/p/o-prompt-virou-contrato-mudancas-2022-2026</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/o-prompt-virou-contrato-mudancas-2022-2026</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Tue, 28 Jul 2026 20:04:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!yHtF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Em junho de 2023 eu publiquei aqui um <a href="https://iaaplicada.substack.com/p/dicas-prompts-chat-gpt">guia com seis dicas para escrever bons prompts</a>. Uma delas recomendava dar tempo ao modelo para pensar, pedindo que ele explicasse o racioc&#237;nio passo a passo antes de responder. Era o estado da arte da &#233;poca, alinhado com as melhores pr&#225;ticas publicadas pela pr&#243;pria OpenAI.</p><p>Em julho de 2026, a documenta&#231;&#227;o oficial da mesma OpenAI traz a instru&#231;&#227;o inversa, com todas as letras: &#8220;Avoid chain-of-thought prompts&#8221;. Como os modelos atuais raciocinam internamente, pedir que pensem passo a passo &#233; desnecess&#225;rio. A Anthropic foi na mesma dire&#231;&#227;o e hoje pede que o usu&#225;rio apague instru&#231;&#245;es que mandam o modelo verificar o pr&#243;prio trabalho: elas causam verifica&#231;&#227;o em excesso e desperdi&#231;am tokens sem ganho de qualidade. O conselho que em 2022 somava dezenas de pontos de acur&#225;cia virou, na documenta&#231;&#227;o de 2026, um defeito a remover.</p><p>Na semana passada fiz um levantamento das documenta&#231;&#245;es oficiais da OpenAI e da Anthropic para atualizar meu manual interno. Este ensaio cruza esse levantamento com o que a literatura cient&#237;fica registrou no mesmo per&#237;odo: s&#227;o quase 40 papers, a maioria no arXiv, cada n&#250;mero citado aqui (final do texto tem a lista completa). A tese central cabe numa frase: <strong>o prompt continua no centro do trabalho, com outra natureza.</strong> </p><blockquote><p>O prompt deixou de ser a aula que ensina o modelo a pensar e virou o contrato que especifica comportamento, fronteiras e grau de autonomia.</p></blockquote><p>Organizei o argumento, com auxilio do meu copiloto Hermes  em dez pontos (inclusive fez esse levantamento de artigos e os categorizou, facilitando minha leitura). Os tr&#234;s primeiros reconstroem a era do prompt-aula com os n&#250;meros originais. Os pontos 04 a 06 documentam a virada: o racioc&#237;nio entrando para dentro do modelo, a instru&#231;&#227;o virando cl&#225;usula e a t&#233;cnica virando par&#226;metro. Os pontos 07 a 09 mostram para onde a engenharia foi, o que os logs de uso real revelam sobre as pessoas e o que o mercado de trabalho fez com o cargo. O ponto 10 fecha com o que continua valendo e com as li&#231;&#245;es pr&#225;ticas para a sua empresa.</p><h2>01. A era do prompt-aula: quando a frase valia 61 pontos</h2><p>O ponto de partida &#233; 2020, quando o paper do GPT-3 (<a href="https://arxiv.org/abs/2005.14165">Brown et al., arXiv 2005.14165</a>) demonstrou que um modelo de 175 bilh&#245;es de par&#226;metros aprendia tarefas novas &#8220;sem qualquer atualiza&#231;&#227;o de gradiente ou fine-tuning&#8221;, apenas com demonstra&#231;&#245;es escritas no pr&#243;prio texto de entrada. Nascia o few-shot prompting: ensinar pelo exemplo, dentro da janela de contexto.</p><p>Dois anos depois, o chain-of-thought completou o m&#233;todo. <a href="https://arxiv.org/abs/2201.11903">Wei et al. (arXiv 2201.11903)</a> mostraram que oito exemplos com o racioc&#237;nio escrito por extenso levavam o PaLM 540B ao estado da arte no GSM8K, benchmark de problemas matem&#225;ticos: 56,9% de acerto nas tabelas do paper, superando os 55% de um GPT-3 ajustado com verificador externo. A vers&#227;o mais famosa veio de <a href="https://arxiv.org/abs/2205.11916">Kojima et al. (arXiv 2205.11916)</a>: sem exemplo nenhum, a frase &#8220;Let&#8217;s think step by step&#8221; levou o text-davinci-002 de 17,7% para 78,7% no MultiArith e de 10,4% para 40,7% no GSM8K. Uma frase, 61 pontos percentuais de diferen&#231;a. Logo depois, a self-consistency (<a href="https://arxiv.org/abs/2203.11171">Wang et al., arXiv 2203.11171</a>) somou mais 17,9 pontos no GSM8K amostrando v&#225;rios caminhos de racioc&#237;nio e votando na resposta majorit&#225;ria.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yHtF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yHtF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yHtF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:106305,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!yHtF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!yHtF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4866a8-864e-4a6c-9733-1da40d0eba3f_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Em 2022, o caminho do racioc&#237;nio vinha desenhado de fora: o prompt carregava os passos que o modelo deveria percorrer.</em></figcaption></figure></div><p>Vale nomear o que esses n&#250;meros significavam na pr&#225;tica. O procedimento de racioc&#237;nio morava no prompt, escrito por um humano. Quem escrevia melhor a aula extra&#237;a mais do mesmo modelo, e a diferen&#231;a entre uma aula boa e uma ruim era da ordem de dezenas de pontos. Foi esse diferencial que criou a disciplina, os cursos, os manuais internos e, por um breve per&#237;odo, o cargo de prompt engineer com sal&#225;rio de seis d&#237;gitos.</p><h2>02. O folclore instrumentado: emo&#231;&#227;o, gorjeta e Jornada nas Estrelas</h2><p>Entre 2023 e 2024, a literatura registrou uma fase curiosa: t&#233;cnicas que nasciam da intui&#231;&#227;o social humana e funcionavam sem que ningu&#233;m soubesse explicar o mecanismo.</p><p>O EmotionPrompt (<a href="https://arxiv.org/abs/2307.11760">Li et al., arXiv 2307.11760</a>) mediu o efeito de anexar apelos emocionais ao fim do prompt, como &#8220;isto &#233; muito importante para a minha carreira&#8221;: 8% de melhora relativa em tarefas de instru&#231;&#227;o e 115% no BIG-Bench, com valida&#231;&#227;o humana em 106 participantes. A polidez tamb&#233;m virou vari&#225;vel experimental: <a href="https://arxiv.org/abs/2402.14531">Yin et al. (arXiv 2402.14531)</a> mostraram que prompts rudes degradavam o desempenho (o Llama-2-70B caiu de 55,11 para 28,44 no MMLU entre o n&#237;vel mais polido e o mais rude) e que o n&#237;vel &#243;timo de cortesia variava por idioma. Um paper da MBZUAI catalogou <a href="https://arxiv.org/abs/2312.16171">26 princ&#237;pios de prompting</a>, entre eles o de prometer gorjeta ao modelo. E as personas, t&#233;cnica queridinha dos manuais (&#8221;voc&#234; &#233; um especialista em...&#8221;), foram testadas em escala por <a href="https://arxiv.org/abs/2311.10054">Zheng et al. (arXiv 2311.10054)</a>: 162 personas, 9 modelos, 2.410 quest&#245;es factuais, e a conclus&#227;o de que adicionar persona no system prompt tem efeito &#8220;em grande parte aleat&#243;rio&#8221; sobre a acur&#225;cia, com a sele&#231;&#227;o autom&#225;tica da melhor persona rendendo o mesmo que sorteio.</p><p>O epis&#243;dio que melhor resume a fase veio da otimiza&#231;&#227;o autom&#225;tica. A m&#225;quina j&#225; superava o artes&#227;o desde 2022, quando o APE (<a href="https://arxiv.org/abs/2211.01910">arXiv 2211.01910</a>) encontrou uma varia&#231;&#227;o de &#8220;Let&#8217;s think step by step&#8221; que rendia mais que a original (82,0 contra 78,7 no MultiArith). Em 2023, pesquisadores do Google DeepMind usaram o pr&#243;prio modelo para buscar prompts melhores (<a href="https://arxiv.org/abs/2309.03409">OPRO, arXiv 2309.03409</a>) e a busca encontrou &#8220;Take a deep breath and work on this problem step-by-step&#8221;: 80,2% no GSM8K com PaLM 2-L, contra 71,8% da frase humana consagrada. J&#225; a dupla da VMware (<a href="https://arxiv.org/abs/2402.10949">Battle e Gollapudi, arXiv 2402.10949</a>) rodou otimiza&#231;&#227;o autom&#225;tica em modelos abertos e reportou que o prompt de melhor pontua&#231;&#227;o para o Llama2-70B na sua bateria era uma cena de Jornada nas Estrelas, com a resposta come&#231;ando por &#8220;Captain&#8217;s Log, Stardate&#8221;: um framing que nenhum humano escreveria de prop&#243;sito. As duas conclus&#245;es do paper anteciparam o fim da era: os resultados de cada truque &#8220;n&#227;o generalizam universalmente entre modelos&#8221;, e o m&#233;todo mais eficaz &#233; deixar o otimizador autom&#225;tico escrever o prompt. A IEEE Spectrum leu o recado e publicou, ainda em mar&#231;o de 2024, o obitu&#225;rio provocativo: <a href="https://spectrum.ieee.org/prompt-engineering-is-dead">&#8220;AI prompt engineering is dead&#8221;</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PPlh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PPlh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PPlh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:135862,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PPlh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!PPlh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec5be53a-eaa4-4175-8b2b-77a5b0ae3601_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A sintonia fina de 2023: respire fundo, gorjeta, apelo emocional, persona. Ganhos reais, mecanismo desconhecido, transfer&#234;ncia nenhuma.</em></figcaption></figure></div><h2>03. A fragilidade era o fundamento do of&#237;cio</h2><p>Por que truques t&#227;o arbitr&#225;rios mexiam tanto no resultado? Porque os modelos daquela gera&#231;&#227;o eram estruturalmente sens&#237;veis &#224; superf&#237;cie do texto, e a ci&#234;ncia mediu essa sensibilidade com precis&#227;o desconfort&#225;vel.</p><p><a href="https://arxiv.org/abs/2310.11324">Sclar et al. (arXiv 2310.11324)</a> mostraram que mudan&#231;as triviais de formata&#231;&#227;o (espa&#231;os, separadores, dois-pontos) produziam diferen&#231;as de at&#233; 76 pontos de acur&#225;cia no mesmo modelo com o mesmo conte&#250;do, e que a sensibilidade persistia em modelos maiores e instru&#237;dos. <a href="https://arxiv.org/abs/2406.10248">Cao et al. (arXiv 2406.10248)</a> mediram o pior caso entre par&#225;frases semanticamente equivalentes do mesmo pedido: 45,48 pontos de dist&#226;ncia entre a melhor e a pior formula&#231;&#227;o no Llama-2-70B-chat, com o pior caso chegando a 9,38% de acerto. O formato do dado importava tanto quanto o texto: <a href="https://arxiv.org/abs/2411.10541">He et al. (arXiv 2411.10541)</a> registraram varia&#231;&#245;es de at&#233; 40% no GPT-3.5 em tarefas de c&#243;digo conforme o prompt vinha em texto puro, Markdown, JSON ou YAML, com o formato &#243;timo de um modelo valendo pouco para o vizinho. At&#233; a posi&#231;&#227;o da informa&#231;&#227;o dentro da janela pesava: o cl&#225;ssico <a href="https://arxiv.org/abs/2307.03172">Lost in the Middle (arXiv 2307.03172)</a> mostrou desempenho alto quando a informa&#231;&#227;o relevante estava no in&#237;cio ou no fim do contexto e degrada&#231;&#227;o significativa quando estava no meio.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l1xs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l1xs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l1xs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:120185,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!l1xs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!l1xs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32769dff-f49b-4d78-b402-a322def5451f_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O mesmo conte&#250;do, outra pontua&#231;&#227;o: na gera&#231;&#227;o 2023, espa&#231;os e separadores moviam o ponteiro em at&#233; 76 pontos.</em></figcaption></figure></div><p>Enquanto isso, o estudo de HCI mais citado da &#233;poca (<a href="https://dl.acm.org/doi/10.1145/3544548.3581388">Why Johnny Can&#8217;t Prompt, CHI 2023</a>) observava n&#227;o especialistas tentando escrever prompts e conclu&#237;a que eles exploravam &#8220;de forma oportunista, sem sistematiza&#231;&#227;o&#8221;, travados por expectativas herdadas da instru&#231;&#227;o entre humanos. A fotografia completa da era &#233; essa: um artefato inst&#225;vel, operado por intui&#231;&#227;o social, onde o dom&#237;nio da superf&#237;cie do texto valia dezenas de pontos. A habilidade era real. O que ningu&#233;m sabia era quanto tempo ela duraria.</p><h2>04. 2024: o racioc&#237;nio entra para dentro do modelo</h2><p>A virada tem data e paper. Em setembro de 2024 a OpenAI lan&#231;ou o o1, primeiro modelo de fronteira treinado para gerar cadeias longas de racioc&#237;nio por conta pr&#243;pria, e dois meses depois a Microsoft publicou o estudo que mede o que isso fez com as t&#233;cnicas cl&#225;ssicas (<a href="https://arxiv.org/abs/2411.03590">From Medprompt to o1, arXiv 2411.03590</a>). O resultado central: sem t&#233;cnica nenhuma, o o1-preview marcou 96,0% no MedQA, acima dos 90,2% do GPT-4 Turbo equipado com Medprompt, o pipeline de prompting m&#233;dico mais sofisticado da gera&#231;&#227;o anterior. E o achado mais importante vinha em seguida: &#8220;few-shot prompting hinders o1&#8217;s performance&#8221;, exemplos no prompt pioraram o desempenho do modelo de racioc&#237;nio, sugerindo que o in-context learning deixou de ser um mecanismo eficaz de direcionamento para essa fam&#237;lia. A t&#233;cnica fundadora de 2020 virou interfer&#234;ncia.</p><p>O mesmo per&#237;odo trouxe a meta-an&#225;lise que dimensionou o chain-of-thought: <a href="https://arxiv.org/abs/2409.12183">Sprague et al. (arXiv 2409.12183)</a> revisaram mais de 100 papers e conclu&#237;ram que os ganhos se concentram em matem&#225;tica e racioc&#237;nio simb&#243;lico, com efeito pequeno no resto; no MMLU, responder direto empatava com o passo a passo, salvo quando a quest&#227;o continha um sinal de igual. Em 2025, o grupo de Wharton confirmou a tend&#234;ncia nos modelos novos (<a href="https://arxiv.org/abs/2506.07142">arXiv 2506.07142</a>): para modelos de racioc&#237;nio, pedir o passo a passo rende ganho marginal de acur&#225;cia com aumento substancial de tempo e tokens, porque eles j&#225; raciocinam por padr&#227;o.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vmSH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vmSH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vmSH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:107332,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vmSH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!vmSH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F480c324d-aba5-44e5-bbed-cfa99c2e2dbf_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O andaime que sustentava o racioc&#237;nio ficava do lado de fora, escrito no prompt. A partir de 2024, a estrutura passou a vir de f&#225;brica, dentro do casco.</em></figcaption></figure></div><p>O p&#234;ndulo chegou a passar do ponto. A literatura de overthinking mediu o novo defeito: diante de &#8220;2+3=?&#8221;, um modelo de racioc&#237;nio t&#237;pico gerou 13 solu&#231;&#245;es alternativas e 901 tokens, quando mais de 92% das vezes a primeira solu&#231;&#227;o j&#225; estava correta (<a href="https://arxiv.org/abs/2412.21187">arXiv 2412.21187</a>). Em 2026, um estudo de test-time compute mostrou que, no AIME, a utilidade marginal de pensar fica negativa depois de um certo ponto: respostas corretas come&#231;am a virar erradas quando o modelo insiste (<a href="https://arxiv.org/abs/2604.10739">arXiv 2604.10739</a>). Guarde esse detalhe: se pensar demais custa caro e pode piorar o resultado, quanto pensar vira uma decis&#227;o de engenharia. Ela reaparece no ponto 06 como par&#226;metro de API.</p><h2>05. O prompt vira contrato</h2><p>Se o modelo j&#225; sabe raciocinar, o que sobra para o prompt? Sobra a parte que nenhum treinamento resolve: dizer o que fazer, para quem, dentro de quais fronteiras e com quanta autonomia. O prompt de 2026 se parece menos com uma aula e mais com um contrato, e essa mudan&#231;a tem infraestrutura formal por tr&#225;s.</p><p>O primeiro passo foi dado em 2024 pelo paper da hierarquia de instru&#231;&#245;es da OpenAI (<a href="https://arxiv.org/abs/2404.13208">Wallace et al., arXiv 2404.13208</a>): treinar o modelo para tratar instru&#231;&#245;es como camadas de privil&#233;gio (sistema acima de desenvolvedor, desenvolvedor acima de usu&#225;rio, usu&#225;rio acima de texto vindo de ferramentas) e para ignorar seletivamente instru&#231;&#245;es de menor privil&#233;gio que conflitem com as de cima. A documenta&#231;&#227;o atual da OpenAI formaliza a analogia jur&#237;dica do lado do desenvolvedor: as mensagens de developer &#8220;fornecem as regras e a l&#243;gica de neg&#243;cio do sistema, como a defini&#231;&#227;o de uma fun&#231;&#227;o&#8221;, e as mensagens de usu&#225;rio funcionam &#8220;como os argumentos dessa fun&#231;&#227;o&#8221;. Quem j&#225; escreveu software reconhece o que isso significa: assinatura, tipos, pr&#233;-condi&#231;&#245;es. Um contrato de interface.</p><p>E contratos cobram caro por ambiguidade. O guia de prompting do GPT-5 avisa que o modelo segue instru&#231;&#245;es &#8220;com precis&#227;o cir&#250;rgica&#8221; e que, justamente por isso, prompts com instru&#231;&#245;es contradit&#243;rias ou vagas &#8220;podem ser mais danosos ao GPT-5 do que a outros modelos&#8221;, porque o modelo gasta tokens de racioc&#237;nio procurando uma forma de conciliar as contradi&#231;&#245;es em vez de escolher uma delas. O caso documentado no pr&#243;prio guia &#233; o da Cursor: uma se&#231;&#227;o de prompt chamada maximize<em>context_understanding, com a ordem &#8220;Be THOROUGH when gathering information&#8221;, ajudava os modelos anteriores e passou a causar uso excessivo de ferramentas no GPT-5. A corre&#231;&#227;o foi remover o prefixo maximize</em> e suavizar a linguagem; com o prompt mais calmo, o time viu o modelo tomar &#8220;decis&#245;es melhores sobre quando confiar no conhecimento interno versus buscar ferramentas externas&#8221;. No mesmo guia, um dado que parece burocr&#225;tico e diz muito: s&#243; de migrar para a Responses API, passando o estado de racioc&#237;nio de uma chamada para a seguinte, o score no Tau-Bench Retail subiu de 73,9% para 78,2%. O contrato de 2026 inclui at&#233; a mem&#243;ria do processo entre chamadas.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RNjl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RNjl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RNjl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:129021,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RNjl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!RNjl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479cfdcc-8637-46d9-baa5-6fcb59c96542_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Instru&#231;&#227;o deixou de ser sugest&#227;o e virou cl&#225;usula com preced&#234;ncia: plataforma, desenvolvedor, usu&#225;rio, ferramenta, cada camada com a sua al&#231;ada.</em></figcaption></figure></div><p>A Anthropic escreveu o mesmo cap&#237;tulo com outras palavras. As boas pr&#225;ticas atuais mandam desmontar a gritaria acumulada nos prompts da era anterior: onde se escrevia &#8220;CRITICAL: You MUST use this tool when...&#8221;, a recomenda&#231;&#227;o agora &#233; o tom normal de &#8220;Use this tool when...&#8221;, porque a &#234;nfase agressiva calibrada para modelos desobedientes faz os obedientes dispararem demais. A p&#225;gina do Claude Opus 5 pede a remo&#231;&#227;o das instru&#231;&#245;es de verifica&#231;&#227;o (&#8221;include a final verification step&#8221;, &#8220;use a subagent to verify&#8221;): o modelo verifica o pr&#243;prio trabalho sem ser mandado, e a instru&#231;&#227;o herdada causa verifica&#231;&#227;o em excesso, gastando tokens sem ganho de qualidade. A do Claude Fable 5 generaliza: skills e prompts escritos para modelos anteriores &#8220;s&#227;o frequentemente prescritivos demais&#8221; e podem degradar a qualidade do modelo novo. Tr&#234;s p&#225;ginas de documenta&#231;&#227;o, um mesmo movimento: apagar texto virou otimiza&#231;&#227;o.</p><p>Um contrato, por&#233;m, s&#243; funciona se as partes respeitam a preced&#234;ncia, e aqui a pesquisa de 2026 imp&#245;e honestidade: um benchmark de hierarquias com m&#250;ltiplos n&#237;veis (<a href="https://arxiv.org/abs/2604.09443">arXiv 2604.09443</a>) mostrou modelos de fronteira acima de 99% quando h&#225; s&#243; duas camadas de privil&#233;gio, e o melhor deles em 42,7% quando as camadas se multiplicam como nos stacks reais de agentes. O prompt-contrato &#233; o paradigma vigente, com cl&#225;usulas que ainda vazam.</p><h2>06. A t&#233;cnica vira par&#226;metro: o que era frase virou bot&#227;o</h2><p>A segunda metade da virada aconteceu fora do texto. Um a um, os controles que o prompt engineering exercia por frases foram absorvidos pela API como par&#226;metros nomeados.</p><p>O mecanismo ficou vis&#237;vel num paper simples e elegante (<a href="https://arxiv.org/abs/2501.19393">s1, arXiv 2501.19393</a>): for&#231;ar o fim do racioc&#237;nio ou prolong&#225;-lo anexando &#8220;Wait&#8221; transforma o tamanho do pensamento num dial cont&#237;nuo, e s&#243; de girar esse dial o desempenho no AIME24 subiu de 50% para 57%, sem mudar uma palavra do prompt. Os vendors produtizaram o dial. Na OpenAI, reasoning_effort controla o esfor&#231;o de racioc&#237;nio e verbosity controla, em separado, o tamanho da resposta final; o GPT-5.2 chegou com esfor&#231;o padr&#227;o em none, racioc&#237;nio como op&#231;&#227;o e a recomenda&#231;&#227;o de ajustar s&#243; depois de rodar evals. Na Anthropic, effort vai de low a max, e a documenta&#231;&#227;o faz quest&#227;o de avisar que ele controla o volume de pensamento, e que para encurtar a resposta vis&#237;vel o caminho continua sendo pedir no prompt; o adaptive thinking, em que o modelo decide sozinho quando e quanto pensar, &#233; o &#250;nico modo de opera&#231;&#227;o do Claude Fable 5. &#8220;Pense passo a passo&#8221;, a frase de 61 pontos, virou um argumento tipado na chamada de fun&#231;&#227;o.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DIys!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DIys!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!DIys!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!DIys!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!DIys!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DIys!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:76985,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DIys!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!DIys!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!DIys!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!DIys!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89823d46-ecf0-4bef-b8ca-ccd5c2ef529d_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O que era frase virou bot&#227;o: esfor&#231;o de racioc&#237;nio, verbosidade e profundidade de pensamento sa&#237;ram do texto e entraram na assinatura da API.</em></figcaption></figure></div><p>Para o dia a dia das empresas, a consequ&#234;ncia pr&#225;tica apareceu nos casos que a pr&#243;pria OpenAI documenta: a SafetyKit saltou de 50% para 88% de acur&#225;cia nas suas tarefas mais dif&#237;ceis de classifica&#231;&#227;o de imagem &#8220;sem qualquer modifica&#231;&#227;o no pipeline&#8221;, apenas trocando GPT-4o por o1; a Blue J mediu melhora de 4x no desempenho de ponta a ponta na pesquisa tribut&#225;ria; um cliente da Braintrust viu o F1 de um juiz autom&#225;tico ir de 0,12 para 0,74. Todos esses ganhos vieram de trocar o motor e deixar o contrato em paz, com o prompt intacto. A pergunta de otimiza&#231;&#227;o mudou de &#8220;que palavras uso?&#8221; para &#8220;que modelo, com quanto esfor&#231;o, a que custo?&#8221;: uma decis&#227;o de arquitetura e or&#231;amento, tomada em par&#226;metros.</p><h2>07. De prompt engineering a context engineering</h2><p>Com o racioc&#237;nio internalizado e o controle fino parametrizado, o que sobrou de engenharia migrou para uma camada acima: decidir o que entra na janela de contexto do modelo. A Anthropic deu nome ao movimento num ensaio de engenharia de setembro de 2025: construir com modelos &#8220;est&#225; se tornando menos sobre encontrar as palavras e frases certas para os prompts e mais sobre responder &#224; pergunta mais ampla de qual configura&#231;&#227;o de contexto tem mais chance de gerar o comportamento desejado&#8221;. O texto introduz a imagem que organiza a disciplina: o modelo tem um &#8220;or&#231;amento de aten&#231;&#227;o&#8221; finito, e o trabalho do engenheiro &#233; encontrar &#8220;o menor conjunto poss&#237;vel de tokens de alto sinal que maximize a probabilidade do resultado desejado&#8221;. Do lado acad&#234;mico, um survey de julho de 2025 sistematizou mais de 1.400 papers sob o guarda-chuva de context engineering (<a href="https://arxiv.org/abs/2507.13334">Mei et al., arXiv 2507.13334</a>), formalizando a disciplina que transcende o design do prompt: retrieval, mem&#243;ria, ferramentas, gest&#227;o da janela.</p><p>Dois resultados mostram por que essa camada virou o gargalo. Primeiro, a robustez &#224; sujeira: em modelos cl&#225;ssicos, inserir contexto irrelevante derrubou o desempenho em 55,89% na m&#233;dia de 13 modelos, enquanto o o1-preview caiu 2,68% (<a href="https://arxiv.org/abs/2504.02111">arXiv 2504.02111</a>); o modelo novo aguenta quase tudo, menos um contexto mal curado em escala. Segundo, a origem da sensibilidade: um estudo de 2026 (<a href="https://arxiv.org/abs/2602.04297">arXiv 2602.04297</a>) mostrou que boa parte da fragilidade que restou nos modelos modernos &#233; atribu&#237;vel a prompt subespecificado; com a especifica&#231;&#227;o completa do comportamento, a vari&#226;ncia entre formula&#231;&#245;es desaba. Dito de outro jeito: a brittleness de 2023 era do modelo; a de 2026 &#233; do contrato mal escrito.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qqkj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qqkj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qqkj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:98189,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qqkj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!qqkj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68d33cfd-cde6-499f-b803-8e8e3b6d65e0_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A engenharia mudou de escrever frases para dosar o que entra: ferramentas, mem&#243;ria, skills e dados disputam um or&#231;amento de aten&#231;&#227;o finito.</em></figcaption></figure></div><p>A infraestrutura acompanhou. As Agent Skills da Anthropic empacotam instru&#231;&#245;es em pastas version&#225;veis que o agente descobre e carrega sob demanda, por divulga&#231;&#227;o progressiva: o prompt virou artefato de software, compon&#237;vel e compartilh&#225;vel, o que conversa direto com o que escrevi em <a href="https://iaaplicada.substack.com/p/o-fim-do-codigo-como-ativo-o-novo">O fim do c&#243;digo como ativo</a> e com o <a href="https://iaaplicada.substack.com/p/sistema-de-registros-para-agentes">sistema de registros que mant&#233;m meus agentes</a>. A pesquisa acompanha: o m&#233;todo ACE (<a href="https://arxiv.org/abs/2510.04618">arXiv 2510.04618</a>) trata o contexto como um playbook que evolui com o uso, com ganho de 10,6% em benchmarks de agentes. E at&#233; a escrita do que sobra est&#225; sendo automatizada: o DSPy tratava prompt como alvo de compilador j&#225; em 2023 (<a href="https://arxiv.org/abs/2310.03714">arXiv 2310.03714</a>), o TextGrad levou a otimiza&#231;&#227;o por feedback textual &#224; Nature em 2025, e o GEPA (<a href="https://arxiv.org/abs/2507.19457">arXiv 2507.19457</a>) mostrou evolu&#231;&#227;o reflexiva de prompts superando reinforcement learning com at&#233; 35 vezes menos rollouts. Quando a m&#225;quina escreve o prompt melhor que o humano, o valor humano se desloca para especificar o que &#8220;melhor&#8221; significa: a m&#233;trica, o contexto, o contrato.</p><h2>08. As pessoas mudaram menos que os modelos</h2><p>Tudo acima descreve a fronteira da engenharia. Os logs de uso real contam uma hist&#243;ria paralela e mais honesta sobre o resto de n&#243;s.</p><p>Os grandes corpora de conversas reais (WildChat, com 1 milh&#227;o de di&#225;logos, e LMSYS-Chat-1M) viraram mat&#233;ria-prima para estudos longitudinais, e o resultado mais consistente &#233; a in&#233;rcia individual. Um estudo de 2026 com 12 mil usu&#225;rios acompanhados por meses (<a href="https://arxiv.org/abs/2605.29018">arXiv 2605.29018</a>) resume: &#8220;os h&#225;bitos dos usu&#225;rios s&#227;o pegajosos e resistentes &#224; mudan&#231;a&#8221;; a complexidade m&#233;dia das mensagens na popula&#231;&#227;o cresceu na casa de 1,5x, mas o efeito &#233; de composi&#231;&#227;o, puxado por usu&#225;rios novos, e quem usa intensamente j&#225; era diferente desde a primeira mensagem. Outro trabalho sobre 211 mil consultas do WildChat (<a href="https://arxiv.org/abs/2508.01213">arXiv 2508.01213</a>) detectou a &#250;nica migra&#231;&#227;o clara: os pedidos foram ficando menos &#8220;comando seco&#8221; e mais carregados de contexto, com cada usu&#225;rio convergindo para um template pessoal est&#225;vel depois de umas 20 intera&#231;&#245;es, e com muito menos marcadores de polidez do que conversas entre humanos. Das 58 t&#233;cnicas que <a href="https://arxiv.org/abs/2406.06608">The Prompt Report</a> catalogou em 2024, o usu&#225;rio comum segue conhecendo pouqu&#237;ssimas; o aprendizado real foi dar contexto e repetir o que funciona.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oCY7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oCY7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oCY7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:105045,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oCY7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!oCY7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F138ae5a1-6b55-4613-ad5a-443b42ca53e5_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Cada usu&#225;rio cava o pr&#243;prio sulco nas primeiras semanas e permanece nele; quem move a m&#233;dia da popula&#231;&#227;o s&#227;o os que chegam depois.</em></figcaption></figure></div><p>A escala desse &#8220;resto de n&#243;s&#8221; &#233; o que d&#225; peso ao achado. O estudo do NBER sobre uso do ChatGPT (setembro de 2025) estimou cerca de 10% da popula&#231;&#227;o adulta mundial usando o produto, com o uso pessoal crescendo de 53% para mais de 70% das conversas e tr&#234;s categorias (orienta&#231;&#227;o pr&#225;tica, busca de informa&#231;&#227;o e escrita) somando quase 80% do volume. O Anthropic Economic Index, sobre milh&#245;es de conversas do Claude (<a href="https://arxiv.org/abs/2503.04761">arXiv 2503.04761</a>), mapeou 36% das ocupa&#231;&#245;es usando IA em pelo menos um quarto das suas tarefas, com 57% do uso em padr&#227;o de colabora&#231;&#227;o e 43% em delega&#231;&#227;o. E o folclore, aquele do ponto 02, envelheceu mal: um estudo de outubro de 2025 (<a href="https://arxiv.org/abs/2510.04950">arXiv 2510.04950</a>) achou o efeito invertido no GPT-4o, com prompts rudes superando os educados (84,8% contra 80,8%), enquanto o grupo de Wharton (<a href="https://arxiv.org/abs/2503.04818">arXiv 2503.04818</a>) mediu efeitos de polidez e formata&#231;&#227;o reais, por&#233;m imprevis&#237;veis por pergunta. A li&#231;&#227;o operacional para quem usa IA todo dia: pare de colecionar truque de frase; eles mudam de sinal a cada gera&#231;&#227;o de modelo. Especifique o que quer e d&#234; o contexto.</p><h2>09. O mercado precificou: de cargo a tarefa</h2><p>O mercado de trabalho registrou a transi&#231;&#227;o com a frieza de sempre. Nos dados da Indeed, as buscas por prompt engineering sa&#237;ram de 2 por milh&#227;o em janeiro de 2023, atingiram o pico de 144 por milh&#227;o em abril de 2023 e estabilizaram na faixa de 20 a 30 por milh&#227;o. Em abril de 2025, o Wall Street Journal decretou no t&#237;tulo: o emprego mais quente de 2023 j&#225; estava obsoleto. A pesquisa Work Trend Index da Microsoft, com 31 mil trabalhadores em 31 pa&#237;ses, colocou prompt engineer na pen&#250;ltima posi&#231;&#227;o entre os novos pap&#233;is que as empresas consideravam contratar. A s&#237;ntese mais citada veio de um executivo de recrutamento: o prompt engineering &#8220;virou de emprego em tarefa muito, muito r&#225;pido&#8221;. Dados de 2026 de uma base de vagas do setor (com a ressalva de ser levantamento pr&#243;prio, sem revis&#227;o por pares) apontam queda de cerca de 30% nos t&#237;tulos exclusivos entre 2024 e 2026, com o triplo de vagas de outros t&#237;tulos exigindo a habilidade.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9R4f!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9R4f!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9R4f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:88902,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9R4f!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!9R4f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2f402b0-0c40-4b40-a677-39c1a7e8ea33_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A mar&#233; de 2023 deixou a marca no pilar: o pico de abril, o refluxo e o n&#237;vel est&#225;vel em que a habilidade continuou no porto, distribu&#237;da pelos of&#237;cios.</em></figcaption></figure></div><p>Note que a leitura correta &#233; a menos dram&#225;tica: a habilidade sobreviveu ao cargo. Saber especificar comportamento de modelo virou compet&#234;ncia transversal, embutida em engenharia, produto, marketing, jur&#237;dico. O movimento &#233; o mesmo que descrevi para o c&#243;digo em <a href="https://iaaplicada.substack.com/p/o-fim-do-codigo-como-ativo-o-novo">O fim do c&#243;digo como ativo</a>: quando uma pr&#225;tica se comoditiza, o valor migra para a camada de cima. No caso do prompt, para o contexto propriet&#225;rio e para a qualidade da especifica&#231;&#227;o.</p><h2>10. O que continua valendo, e o que levar para a sua empresa</h2><p>Depois de tanta demoli&#231;&#227;o, o invent&#225;rio do que ficou de p&#233; &#233; curto e s&#243;lido. Clareza e dire&#231;&#227;o continuam sendo a regra de ouro dos dois vendors: a OpenAI recomenda prompts simples e diretos (&#8221;Keep prompts simple and direct&#8221;), zero exemplos como ponto de partida (&#8221;Try zero shot first, then few shot if needed&#8221;) e delimitadores para separar as partes da entrada; a Anthropic mant&#233;m o teste do colega (se um colega sem contexto se confunde com o seu prompt, o Claude tamb&#233;m se confunde) e acrescenta uma instru&#231;&#227;o nova e reveladora: explicar o motivo por tr&#225;s da instru&#231;&#227;o, porque o modelo &#8220;&#233; inteligente o suficiente para generalizar a partir da explica&#231;&#227;o&#8221;. Para contexto longo, o conselho continua mec&#226;nico e mensur&#225;vel: documentos no topo, pergunta no fim, com ganho de at&#233; 30% de qualidade nos testes da Anthropic. E a recomenda&#231;&#227;o mais recente da casa inverte de vez a gram&#225;tica de 2022: &#8220;prefira instru&#231;&#245;es gerais a passos prescritivos&#8221;; um simples &#8220;pense com cuidado&#8221; costuma render racioc&#237;nio melhor do que o plano passo a passo escrito &#224; m&#227;o. A aula ficou por conta do modelo. A dire&#231;&#227;o, por nossa conta.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aUG-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aUG-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aUG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84790,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208713082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aUG-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!aUG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5dbe787-e3e1-4298-9d41-f48f858b0979_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O que sobrou do of&#237;cio &#233; engenharia de carga: clareza, estrutura, contexto e medi&#231;&#227;o sustentando o v&#227;o; a decora&#231;&#227;o foi embora com a mar&#233;.</em></figcaption></figure></div><p>Fecho com quatro li&#231;&#245;es para empresas, em ordem de inc&#244;modo.</p><p><strong>Primeira:</strong> prompts de 2023 rodando em modelos de 2026 pioram o resultado, e a sua empresa provavelmente tem v&#225;rios. O caso Cursor, a instru&#231;&#227;o de verifica&#231;&#227;o do Opus 5 e o aviso do Fable 5 sobre skills prescritivas demais contam a mesma hist&#243;ria: o ac&#250;mulo de instru&#231;&#245;es defensivas calibradas para modelos antigos virou passivo. A OpenAI recomenda, na migra&#231;&#227;o para o GPT-5.5, come&#231;ar de uma baseline limpa em vez de carregar cada instru&#231;&#227;o do stack anterior. Auditar e apagar virou trabalho de otimiza&#231;&#227;o com ROI imediato.</p><p><strong>Segunda:</strong> o controle fino saiu do texto e foi para a API, e isso transfere a decis&#227;o de quem escreve para quem arquiteta. Escolher modelo, reasoning_effort, verbosity e or&#231;amento de pensamento por tarefa &#233; o novo prompt engineering, com efeito direto na fatura. Quem trata esses par&#226;metros como default est&#225; pagando por racioc&#237;nio que n&#227;o precisa ou economizando onde n&#227;o devia.</p><p><strong>Terceira:</strong> trate prompt como c&#243;digo de produ&#231;&#227;o, porque os vendors j&#225; tratam. Versionamento, revis&#227;o, testes de regress&#227;o, rollback e evals; a OpenAI est&#225; encerrando o produto de prompts reutiliz&#225;veis da API (v1/prompts, com desligamento marcado para 30/11/2026) e orientando mover o conte&#250;do dos prompts para o c&#243;digo da aplica&#231;&#227;o. Prompt sem eval &#233; opini&#227;o com acesso a produ&#231;&#227;o.</p><p><strong>Quarta: </strong>a vantagem dur&#225;vel mora no contexto, o insumo que s&#243; a sua opera&#231;&#227;o gera. Modelos todo concorrente aluga pela mesma API; o or&#231;amento de aten&#231;&#227;o cada empresa preenche com o que tem: dados propriet&#225;rios organizados, ferramentas bem descritas, mem&#243;ria institucional, skills que codificam como o seu neg&#243;cio decide. &#201; o mesmo argumento do <a href="https://www.guilhermefavaron.com.br/p/o-ativo-invisivel-dados-como-vantagem-competitiva">ativo invis&#237;vel</a>, uma camada acima: quem n&#227;o construiu a base de contexto vai descobrir que ela tamb&#233;m n&#227;o se compra pronta.</p><p>A pergunta que deixo para o seu planejamento: quanto do manual de prompts que a sua empresa escreveu em 2023 continua colado nos seus sistemas em 2026, e quanto ele est&#225; custando, em tokens e em resultados, sem que ningu&#233;m tenha medido?</p><div><hr></div><p><strong>Refer&#234;ncias principais.</strong> </p><p>Documenta&#231;&#227;o oficial: </p><ul><li><p>OpenAI (Reasoning best practices; GPT-5 Prompting Guide; Text generation; Deprecations; Model guidance GPT-5.5)</p></li><li><p>Anthropic (Prompting best practices; Prompting Claude Opus 5; Prompting Claude Fable 5; Effort; Adaptive thinking; Effective context engineering for AI agents; Agent Skills). </p></li></ul><p>Papers citados: </p><ul><li><p>Brown et al. 2020 (arXiv 2005.14165); </p></li><li><p>Wei et al. 2022 (2201.11903); </p></li><li><p>Kojima et al. 2022 (2205.11916); </p></li><li><p>Wang et al. 2022 (2203.11171); </p></li><li><p>Zamfirescu-Pereira et al., CHI 2023 (DOI 10.1145/3544548.3581388); </p></li><li><p>Sclar et al. 2023 (2310.11324); </p></li><li><p>Li et al. 2023 (2307.11760); </p></li><li><p>Yin et al. 2024 (2402.14531); </p></li><li><p>Bsharat et al. 2023 (2312.16171); </p></li><li><p>Liu et al. 2023 (2307.03172); </p></li><li><p>Zhou et al. 2022 (2211.01910); </p></li><li><p>Yang et al. 2023 (2309.03409); </p></li><li><p>Battle e Gollapudi 2024 (2402.10949); </p></li><li><p>Schulhoff et al. 2024 (2406.06608); </p></li><li><p>Zheng et al. 2024 (2311.10054); </p></li><li><p>Cao et al. 2024 (2406.10248); </p></li><li><p>He et al. 2024 (2411.10541); </p></li><li><p>Nori et al. 2024 (2411.03590); </p></li><li><p>Sprague et al. 2024 (2409.12183); </p></li><li><p>Chen et al. 2024 (2412.21187); </p></li><li><p>Wallace et al. 2024 (2404.13208); </p></li><li><p>Muennighoff et al. 2025 (2501.19393); </p></li><li><p>Meincke et al. 2025 (2503.04818 e 2506.07142); </p></li><li><p>Mei et al. 2025 (2507.13334); </p></li><li><p>Khattab et al. 2023 (2310.03714); </p></li><li><p>Yuksekgonul et al. 2024 (2406.07496; Nature 639, 2025); </p></li><li><p>Agrawal et al. 2025 (2507.19457); </p></li><li><p>Zhang et al. 2025 (2510.04618); </p></li><li><p>Chatziveroglou et al. 2025 (2504.02111); </p></li><li><p>Pecher et al. 2026 (2602.04297); </p></li><li><p>Hicke e Tomlinson 2026 (2605.29018); </p></li><li><p>Zhu et al. 2025 (2508.01213); </p></li><li><p>Handa et al. 2025 (2503.04761); </p></li><li><p>Chatterji et al. 2025 (NBER WP 34255); </p></li><li><p>Dobariya e Kumar 2025 (2510.04950); </p></li><li><p>Zhang et al. 2026 (2604.09443); </p></li><li><p>Zhou et al. 2026 (2604.10739). </p><p></p></li></ul><p>Infos gerais de mercado: </p><ul><li><p>IEEE Spectrum (mar/2024), </p></li><li><p>Wall Street Journal (abr/2025), </p></li><li><p>Fortune (mai/2025), </p></li><li><p>Microsoft Work Trend Index.</p></li></ul>]]></content:encoded></item><item><title><![CDATA[O alpha estava no arquivo: o que o case da Bridgewater ensina sobre modelos especializados]]></title><description><![CDATA[Os modelos pequenos, abertos e especializados v&#227;o liderar a ampla expans&#227;o das IAs nas empresas.]]></description><link>https://www.guilhermefavaron.com.br/p/o-alpha-estava-no-arquivo</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/o-alpha-estava-no-arquivo</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Mon, 27 Jul 2026 14:21:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6BiR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>A Bridgewater levou Gemini, Claude e GPT ao teto do prompt e parou abaixo do corte de 80%. Um modelo aberto fine-tunado nos exemplos dos pr&#243;prios investidores chegou a 84,7% com custo 13,8 vezes menor. O ingrediente decisivo estava guardado dentro de casa.</em></p><p>Tr&#234;s semanas atr&#225;s, escrevi aqui que o julgamento acumulado nos arquivos de uma organiza&#231;&#227;o &#233; o ativo que nenhum concorrente compra por API (<a href="https://iaaplicada.substack.com/p/o-ativo-invisivel-dados-como-vantagem-competitiva">O ativo invis&#237;vel</a>). Era o argumento econ&#244;mico. Nesta semana, o AIA Labs da Bridgewater, em parceria com a Thinking Machines Lab, publicou o <a href="https://thinkingmachines.ai/news/learning-to-replicate-expert-judgment-in-financial-tasks/">case</a> que d&#225; a esse argumento a demonstra&#231;&#227;o t&#233;cnica: o maior hedge fund do mundo mostrando, com n&#250;meros, por que tratar modelos open-weight como segunda divis&#227;o da IA &#233; um erro de leitura.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6BiR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6BiR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6BiR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:61814,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208690493?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6BiR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!6BiR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd48e86d4-a0f4-4e95-bfec-9b5cdb7ccdb0_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O alpha estava no arquivo</em></figcaption></figure></div><p>Organizei a leitura em quatro movimentos: o teto do prompt, a virada do fine-tuning, o tratamento dos dados e a arquitetura que emerge quando os tr&#234;s se encontram.</p><h2>O teto do prompt</h2><p>A equipe testou variantes de Gemini, Claude e GPT em seis tarefas reais de filtragem de documentos que investidores fazem todos os dias: decidir se um artigo de not&#237;cia importa para quem aloca capital, se um documento de banco central sinaliza a dire&#231;&#227;o dos juros, se um relat&#243;rio ajuda a responder uma pergunta espec&#237;fica, onde come&#231;a o boilerplate de um documento ou de um e-mail.</p><p>Com prompts simples, os modelos ficaram perto de 50% de acur&#225;cia m&#233;dia. Quase uma moeda.</p><p>Com prompts escritos pelos especialistas, subiram para a casa dos 70, e o melhor modelo testado chegou a 78,2%. Melhor, mas ainda abaixo dos 80% que os investidores definiram como m&#237;nimo para confiar no sistema dentro do fluxo de trabalho. M&#233;todos autom&#225;ticos de otimiza&#231;&#227;o de prompt foram testados na sequ&#234;ncia e devolveram ganho zero. Trocar de gera&#231;&#227;o tamb&#233;m ajudou pouco: o GPT 5.4 custa 43% a mais que o 5.2 e entrega acur&#225;cia quase igual nessas tarefas.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OXd0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OXd0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OXd0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:58411,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208690493?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!OXd0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!OXd0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd62679d-2fa5-4ddb-9e33-6f44569b6957_1920x1080.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A instru&#231;&#227;o sobe at&#233; onde a palavra alcan&#231;a.</em></figcaption></figure></div><h2>A virada</h2><p>A&#237; vem a parte interessante. Em vez de insistir em prompt engineering, eles fine-tunaram um modelo open-weights, o Qwen3-235B, usando o Tinker, a infraestrutura de treino da Thinking Machines.</p><p>O resultado: 84,7% de acur&#225;cia m&#233;dia, 29,8% menos erros que o melhor frontier model testado e custo de infer&#234;ncia 13,8 vezes menor por tarefa.</p><p>O recipe importa. O baseline com GRPO j&#225; levou o modelo base de 44,8% para 73,5% de acur&#225;cia. Tr&#234;s refinamentos empurraram o resto do caminho: batching intercalado entre as tarefas, uma fun&#231;&#227;o de perda com clipping assim&#233;trico (CISPO) e on-policy distillation em que o melhor checkpoint validado &#233; promovido a professor do pr&#243;prio treino.</p><p>Esse &#233; o ponto central do case. A pergunta que a Bridgewater respondeu foi &#8220;qual modelo consegue aprender o julgamento espec&#237;fico dos nossos investidores&#8221;. E essa pergunta &#233; bem diferente de &#8220;qual modelo sabe mais sobre finan&#231;as&#8221;.</p><h2>O que um prompt captura</h2><p>Julgamento espec&#237;fico raramente cabe inteiro em um prompt. Um prompt captura aquilo que o especialista consegue verbalizar. Boa parte do valor, por&#233;m, est&#225; no que ele aprendeu por repeti&#231;&#227;o, contexto, erro, compara&#231;&#227;o, leitura de sinais fracos e anos de gosto acumulado. Esse tipo de conhecimento transfere mal por instru&#231;&#227;o e transfere bem por exemplo.</p><p>O pr&#243;prio paper traz a ilustra&#231;&#227;o perfeita: os investidores consideram as seis tarefas triviais e travam na hora de articular o processo de decis&#227;o. A regra que separa uma manchete geopol&#237;tica irrelevante de uma manchete geopol&#237;tica que move mercado existe na cabe&#231;a deles, funciona todos os dias e resiste &#224; verbaliza&#231;&#227;o.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ytMp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ytMp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ytMp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68006,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208690493?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ytMp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!ytMp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8991d9c-0496-4f74-b718-cb54ab11dae8_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A instru&#231;&#227;o desenha o contorno. O exemplo transfere o volume.</em></figcaption></figure></div><h2>O detector de dados ruins</h2><p>A parte mais inteligente do case, para mim, foi o tratamento dos dados. A primeira base de treino veio de fornecedores, rotulada por gente de fora do dom&#237;nio, e os modelos treinados nela continuavam ruins. Examinando os traces de racioc&#237;nio, a equipe percebeu que muitos labels estavam simplesmente errados.</p><p>Como revis&#227;o por especialista &#233; cara, eles montaram um esquema de verifica&#231;&#227;o elegante: treinaram um modelo na base ruidosa e depois rodaram esse mesmo modelo sobre os pr&#243;prios dados de treino. Quando o modelo discordava do label, o exemplo ia para os investidores especialistas revisarem. Se um modelo trope&#231;a num exemplo que estava no pr&#243;prio treino, ou o exemplo &#233; genuinamente dif&#237;cil, ou o label estava errado.</p><p>A confus&#227;o do modelo virou detector de dados ruins.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tr_w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tr_w!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tr_w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:56151,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208690493?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Tr_w!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Tr_w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66a374a4-d153-409c-b617-dea0e4b9bfce_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Onde o modelo trope&#231;a no pr&#243;prio treino, o dado pede segunda leitura.</em></figcaption></figure></div><h2>A tese</h2><p>A li&#231;&#227;o vai bem al&#233;m de &#8220;fine-tuning funciona&#8221;.</p><p>Modelos de fronteira s&#227;o excelentes generalistas. O dia a dia de uma empresa, por&#233;m, &#233; feito de decis&#245;es repetidas, crit&#233;rios internos, exce&#231;&#245;es, hist&#243;rico, contexto e julgamento acumulado. E quando a tarefa &#233; espec&#237;fica, o dado &#233; pr&#243;prio e a m&#233;trica &#233; clara, modelos menores e especializados podem vencer em tr&#234;s dimens&#245;es ao mesmo tempo: acur&#225;cia, custo e controle.</p><p>H&#225; um espelho aqui do movimento que descrevi em <a href="https://iaaplicada.substack.com/p/o-fim-do-codigo-como-ativo-o-novo">O fim do c&#243;digo como ativo</a>: quando todo concorrente acessa os mesmos modelos de fronteira por API, o acesso deixa de diferenciar, e o pr&#234;mio migra para o insumo que s&#243; a sua opera&#231;&#227;o produz.</p><h2>A evid&#234;ncia al&#233;m da Bridgewater</h2><p>E a Bridgewater tem companhia. O <a href="https://arxiv.org/abs/2405.00732">LoRA Land</a>, da Predibase, avaliou 310 modelos fine-tunados com LoRA em 31 tarefas e reportou os especializados superando o GPT-4 em m&#233;dia nas tarefas testadas. Um <a href="https://www.distillabs.ai/blog/we-benchmarked-12-small-language-models-across-8-tasks-to-find-the-best-base-model-for-fine-tuning/">benchmark da Distil Labs</a> com 12 modelos pequenos mostra o Qwen3-4B fine-tunado igualando ou excedendo o GPT-OSS-120B, um modelo trinta vezes maior, em 7 de 8 benchmarks. E um <a href="https://oumi.ai/blog/building-customer-support-with-a">case recente de suporte ao cliente</a> mostra um modelo de 0,8B de par&#226;metros, treinado em uma hora por poucos d&#243;lares, superando GPT-5.4 e Claude Opus 4.6 em classifica&#231;&#227;o de tickets, por 6,3 e 8,4 pontos respectivamente.</p><p>Comparar um modelo aberto pequeno com um frontier model no abstrato &#233; medir com a r&#233;gua errada. A compara&#231;&#227;o que interessa coloca um frontier model gen&#233;rico contra um modelo menor treinado exatamente no seu problema, nos seus dados e na sua r&#233;gua de qualidade.</p><h2>Caramelo, o mesmo racioc&#237;nio na escala de uma pessoa</h2><p>Foi essa l&#243;gica que me levou a criar o <a href="https://ia-caramelo.com/">Caramelo</a>, meu experimento pessoal open-source. Ele nasceu para testar uma pergunta estreita: at&#233; que ponto um modelo pequeno, barato e aberto consegue aprender uma camada espec&#237;fica de identidade, estilo e, no futuro, racioc&#237;nio a partir de um corpus pr&#243;prio. Competir com frontier models em intelig&#234;ncia geral ficou fora da tese desde o primeiro dia.</p><p>O corpus, no meu caso, foram os meus pr&#243;prios textos: um adapter LoRA treinado sobre um modelo aberto da fam&#237;lia Gemma com os artigos que publiquei nesta newsletter ao longo de cinco anos, por menos de um d&#243;lar de GPU, rodando hoje numa VPS sem GPU e servido como API aberta. Essa primeira camada captura voz. A pr&#243;xima fronteira &#233; treinar padr&#245;es de racioc&#237;nio com exemplos verific&#225;veis.</p><p>Esse &#250;ltimo ponto merece cuidado: copiar chain-of-thought de um modelo forte, sem crit&#233;rio, apenas cristaliza dado ruim no modelo pequeno. A vantagem aparece quando existem tarefa estreita, avalia&#231;&#227;o objetiva, bons exemplos e um ciclo s&#233;rio de revis&#227;o. O case da Bridgewater &#233; exatamente a demonstra&#231;&#227;o desse ciclo funcionando em produ&#231;&#227;o.</p><h2>A arquitetura h&#237;brida</h2><p>Por isso, o futuro que eu enxergo &#233; uma arquitetura h&#237;brida.</p><p>Modelos de fronteira trabalham como professores, revisores, geradores de dados sint&#233;ticos, avaliadores e orquestradores. Modelos abertos e especializados carregam o diferencial espec&#237;fico de uma pessoa, equipe ou institui&#231;&#227;o, com custo vi&#225;vel e controle maior. A Thinking Machines chama essa vis&#227;o de differentiated intelligence. Eu chamo de levar a s&#233;rio o que a organiza&#231;&#227;o j&#225; sabe.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J67P!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J67P!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!J67P!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!J67P!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!J67P!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J67P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:59663,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/208690493?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!J67P!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!J67P!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!J67P!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!J67P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad5d2290-0304-4a13-a140-261a91bd3378_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A fronteira gera. O especializado entrega na &#250;ltima milha.</em></figcaption></figure></div><h2>O alpha estava no arquivo</h2><p>Toda empresa grande tem d&#233;cadas de decis&#245;es, documentos, pareceres, e-mails, an&#225;lises, tickets, propostas, contratos, reuni&#245;es e revis&#245;es feitas por especialistas. Na maioria dos casos, isso est&#225; espalhado em pastas, CRMs, ERPs, drives e caixas de entrada. Ali mora um ativo que nenhum modelo de fronteira tem por padr&#227;o: o julgamento propriet&#225;rio daquela organiza&#231;&#227;o.</p><p>A Bridgewater mostrou isso em finan&#231;as. O mesmo racioc&#237;nio vale para jur&#237;dico, vendas, atendimento, compliance, research, produto, engenharia, educa&#231;&#227;o e praticamente qualquer &#225;rea onde exista julgamento humano repetido ao longo do tempo. E vale ainda mais para quem desenha as aplica&#231;&#245;es para <a href="https://iaaplicada.substack.com/p/self-improvement-architecture-aplicacoes-que-aprendem-com-uso-real">aprender com o pr&#243;prio uso</a>, transformando a opera&#231;&#227;o di&#225;ria em produtora cont&#237;nua de exemplos rotulados.</p><p>O alpha estava no arquivo o tempo todo. A diferen&#231;a &#233; que agora ele pode virar modelo.</p><p>A pergunta que deixo para o seu planejamento: quais decis&#245;es os seus melhores especialistas repetem toda semana, e onde est&#227;o os exemplos que ensinariam um modelo a repeti-las com a sua r&#233;gua de qualidade?</p>]]></content:encoded></item><item><title><![CDATA[A memória dos meus agentes, na prática: um sistema de registros para quem quer lida com muitas decisões simultâneas]]></title><description><![CDATA[Cinco camadas de registro com dono, formato e ciclo de vida pr&#243;prios; os crons que transformam PRs e reuni&#245;es em decis&#245;es rastre&#225;veis; e a ordem de leitura que devolve a fonte certa para cada pergunta]]></description><link>https://www.guilhermefavaron.com.br/p/a-memoria-dos-meus-agentes-na-pratica</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/a-memoria-dos-meus-agentes-na-pratica</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Wed, 22 Jul 2026 03:38:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!lBEH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lBEH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lBEH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lBEH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/76977449-02da-4af4-9715-da305f467e99_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:186103,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lBEH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lBEH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76977449-02da-4af4-9715-da305f467e99_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Em mar&#231;o escrevi aqui que <a href="https://iaaplicada.substack.com/p/memoria-agentes-solucao-definitiva">a mem&#243;ria dos seus agentes est&#225; quebrada</a>. O argumento era que jogar o hist&#243;rico inteiro no contexto funciona no prot&#243;tipo e desmorona em produ&#231;&#227;o, e que a sa&#237;da passava por separar camadas de mem&#243;ria com pap&#233;is distintos. Era arquitetura no papel.</p><p>Nos meses seguintes eu coloquei essa arquitetura para rodar na minha pr&#243;pria opera&#231;&#227;o. Hoje cinco agentes trabalham para mim em m&#225;quinas diferentes: um numa inst&#226;ncia EC2, um numa KVM, um no meu Mac, um agente de coding e um consolidador que roda diariamente. Todos escrevem e leem de um mesmo substrato. A rodada de consolida&#231;&#227;o de ontem processou 64 registros brutos vindos desses agentes e promoveu 15 arquivos ao acervo curado; a de anteontem, num dia at&#237;pico, processou cerca de 230. O sistema est&#225; vivo, tem cicatrizes, e &#233; exatamente por isso que vale especificar.</p><p>Este ensaio &#233; essa especifica&#231;&#227;o. A tese central cabe numa frase: pare de procurar uma mem&#243;ria &#250;nica de IA e construa um sistema de registros com fronteiras claras. A qualidade vem menos do modelo e mais de saber o que pode ser promovido, quem cura, qual &#233; a fonte de verdade e como cada automa&#231;&#227;o prova o que afirma.</p><p>Organizei a especifica&#231;&#227;o em dez se&#231;&#245;es: o princ&#237;pio, as quatro camadas de registro, os crons de captura que alimentam tudo, os consumidores desse contexto e as prote&#231;&#245;es de confiabilidade. A inten&#231;&#227;o &#233; que voc&#234; consiga implementar o equivalente com o agente que j&#225; usa, seja ele um assistente de c&#243;digo, um orquestrador pr&#243;prio ou um framework de mercado.</p><h2>01. O princ&#237;pio: fronteiras antes de modelo</h2><p>O erro mais comum que vejo em projetos de mem&#243;ria de agente &#233; misturar quatro coisas que pedem tratamentos opostos: a sess&#227;o bruta, a mem&#243;ria sem&#226;ntica do agente, o conhecimento compartilhado entre agentes e o relat&#243;rio executivo para humanos. Quando tudo vira &#8220;mem&#243;ria&#8221;, o log polui o racioc&#237;nio, a opini&#227;o de um agente contamina os demais e ningu&#233;m sabe mais o que &#233; verdade consolidada.</p><p>O desenho que uso separa as camadas num fluxo de refino:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-ckT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-ckT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-ckT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:101920,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-ckT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!-ckT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6a73510-baf7-4ff3-aa06-b192e98a1163_1920x1080.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>As camadas de registro como estratos: a conversa evapora, a evid&#234;ncia sedimenta, e s&#243; o estrato curado sustenta peso.</em></figcaption></figure></div><p>Cada camada tem dono, formato, ciclo de vida e crit&#233;rio de escrita pr&#243;prios. Evid&#234;ncia bruta &#233; imut&#225;vel e barata; mem&#243;ria de sess&#227;o &#233; volumosa e pesquis&#225;vel; conhecimento curado &#233; escasso e caro, porque passou por um funil com crit&#233;rio. A regra que sustenta o resto do artigo: descer de camada &#233; autom&#225;tico, subir de camada exige promo&#231;&#227;o expl&#237;cita. Nada &#8220;vira verdade&#8221; por acidente.</p><h2>02. Session memories: o ledger do que aconteceu</h2><p>A primeira camada &#233; o ledger da sess&#227;o: conversa, a&#231;&#245;es, comandos relevantes, decis&#245;es, mudan&#231;as de contexto e resultados, gravados em append-only. Esse registro serve para auditoria e para recuperar detalhe exato (&#8221;o que foi dito na ter&#231;a sobre o contrato X?&#8221;). Ele responde o que aconteceu; a verdade atual sobre um assunto mora em outra camada.</p><p>A implementa&#231;&#227;o m&#237;nima &#233; um armazenamento pesquis&#225;vel por sess&#227;o, data, agente e t&#243;pico, com eventos neste formato:</p><pre><code><code>{
  "session_id": "uuid",
  "agent_id": "daisy",
  "timestamp": "ISO-8601",
  "kind": "message|tool_result|decision|observation",
  "text": "...",
  "source": "webchat"
}</code></code></pre><p>Dois cuidados aprendidos em produ&#231;&#227;o. Primeiro, o ledger jamais entra inteiro no contexto de cada turno; ele existe para busca sob demanda, sen&#227;o voc&#234; recria o modelo ing&#234;nuo que critiquei em mar&#231;o. Segundo, vale manter um staging de momentos relevantes por sess&#227;o: um lugar onde o agente marca uma decis&#227;o como candidata antes de promov&#234;-la a mem&#243;ria dur&#225;vel. Esse degrau intermedi&#225;rio evita tanto a perda do momento quanto a promo&#231;&#227;o precipitada.</p><h2>03. Mem0: a mem&#243;ria sem&#226;ntica privada de cada agente</h2><p>A segunda camada, no meu caso implementada com Mem0, guarda outra coisa: um &#237;ndice sem&#226;ntico de fatos dur&#225;veis que ajudam aquele agente a trabalhar melhor daqui a dias ou semanas. Entra aqui apenas o que passa em tr&#234;s filtros ao mesmo tempo: muda estado, dire&#231;&#227;o ou comportamento; segue v&#225;lido (ningu&#233;m reverteu); e continuar&#225; relevante depois que a sess&#227;o acabar.</p><p>Exemplos que passam no filtro: uma decis&#227;o de arquitetura, uma prefer&#234;ncia operacional minha, o contrato de um projeto, uma li&#231;&#227;o t&#233;cnica reutiliz&#225;vel, o estado relevante de uma integra&#231;&#227;o. Exemplos que ficam de fora: polling, sa&#237;da crua de comando, &#8220;verifiquei e estava tudo verde&#8221;, conversa casual, progresso tempor&#225;rio. A diferen&#231;a entre as duas listas &#233; o que separa mem&#243;ria de ru&#237;do.</p><p>Cada mem&#243;ria carrega metadados m&#237;nimos:</p><pre><code><code>{
  "agent_id": "daisy",
  "user_id": "daisy",
  "type": "decision|learning|correction|conclusion",
  "topic": "culkin-redshift",
  "durable": true,
  "reversible": false,
  "source": "session:&lt;id&gt;",
  "promoted_to_shared_knowledge": false
}</code></code></pre><p>Um detalhe de desenho que considero inegoci&#225;vel: cada agente tem o seu &#237;ndice privado, com a sua credencial, escrevendo sob a sua identidade. A experi&#234;ncia bruta de um agente &#233; hip&#243;tese, e hip&#243;tese de um n&#227;o pode virar verdade autom&#225;tica para todos. J&#225; vivi o incidente que justifica a regra: um agente reportou um suposto bug de duplica&#231;&#227;o num fornecedor, e a investiga&#231;&#227;o mostrou que o instrumento de medi&#231;&#227;o dele &#233; que estava errado. Se aquela &#8220;descoberta&#8221; tivesse se propagado como fato compartilhado, tr&#234;s agentes estariam operando sobre um erro.</p><h2>04. gui-brain: o conhecimento curado que todos compartilham</h2><p>A terceira camada &#233; a que d&#225; nome ao meu sistema: o gui-brain, um reposit&#243;rio Git de Markdown com frontmatter que funciona como fonte can&#244;nica sobre mim, meus projetos, decis&#245;es, prefer&#234;ncias, pessoas e conceitos recorrentes. A distin&#231;&#227;o decisiva em rela&#231;&#227;o &#224; camada anterior: o Mem0 responde &#8220;o que este agente aprendeu?&#8221;; o reposit&#243;rio curado responde &#8220;qual &#233; a verdade consolidada que todos os agentes devem usar?&#8221;.</p><p>A mec&#226;nica que faz isso funcionar &#233; a separa&#231;&#227;o entre inbox e acervo. Agente nenhum escreve direto na &#225;rea curada. Cada um despeja observa&#231;&#245;es numa caixa de entrada pr&#243;pria, por data:</p><pre><code><code>gui-brain/
  _inbox/openclaw/2026-07-21/   &lt;- &#225;rea RAW, escrita livre por agente
  _inbox/hermes/...
  identity/                     &lt;- curado, gate humano
  projects/  decisions/
  people/    knowledge/  work/</code></code></pre><p>O fluxo de promo&#231;&#227;o: o agente detecta decis&#227;o, aprendizado ou mudan&#231;a material; faz pull defensivo; cria a nota na inbox com proveni&#234;ncia, confian&#231;a, links e data; e commita. Uma vez por dia, um curador (no meu caso, um agente consolidador com playbook versionado) l&#234; tudo que apareceu nas inboxes, deduplica observa&#231;&#245;es que m&#250;ltiplos agentes registraram, funde o que &#233; a mesma coisa preservando as duas origens, e move o que tem sinal para a pasta curada apropriada. O que foi processado vai para um arquivo morto por agente, e nada &#233; deletado.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4FW8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4FW8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4FW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126601,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4FW8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!4FW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ef57a4e-edea-4fd2-94fa-257a04583317_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Escrita livre a montante, decanta&#231;&#227;o no meio, e uma comporta que s&#243; o curador opera. Identidade tem uma segunda comporta: a minha.</em></figcaption></figure></div><p>Cada nota carrega um frontmatter que for&#231;a o agente a se comprometer com o que est&#225; afirmando:</p><pre><code><code>---
type: decision
title: "Contrato de dados do projeto X"
source_agent: openclaw
source_origin: "PR #123 + valida&#231;&#227;o em produ&#231;&#227;o"
created: 2026-07-21
confidence: high    # eu vi isso acontecer?
signal: high        # isso importa?
status: raw
links: [projects/active/projeto-x.md]
---</code></code></pre><p>Dois campos merecem coment&#225;rio. <code>confidence</code> e <code>signal</code> s&#227;o ortogonais: um mede se a observa&#231;&#227;o &#233; s&#243;lida, o outro mede se ela importa. A matriz entre os dois decide o destino; sinal alto com confian&#231;a baixa, por exemplo, vira proposta para eu validar em vez de ser promovida direto. E o acervo separa <code>updated</code> (qualquer edi&#231;&#227;o) de <code>last_observed</code> (a &#250;ltima vez que a realidade confirmou aquela informa&#231;&#227;o), o que permite detectar conhecimento parado: arquivo formalmente recente cuja informa&#231;&#227;o ningu&#233;m reconfirma h&#225; noventa dias &#233; candidato a revis&#227;o.</p><p>Duas regras fecham a camada. Identidade (tra&#231;os de personalidade, valores, forma de decidir) tem gate humano: o consolidador sintetiza propostas e elas ficam com <code>review_decision: pending</code> at&#233; eu aprovar ou rejeitar; agente nenhum escreve ali sozinho. E o consolidador tamb&#233;m tece: injeta links bidirecionais entre arquivos relacionados e mede a raz&#227;o de links novos por arquivo novo. Quando essa raz&#227;o cai abaixo de um limiar, o grafo est&#225; virando um cat&#225;logo de arquivos &#243;rf&#227;os, e isso dispara alerta. Inbox &#233; proposta e evid&#234;ncia; &#225;rea curada &#233; verdade compartilhada. Essa fronteira &#233; o cora&#231;&#227;o do desenho.</p><h2>05. Registros operacionais: a camada que evita contamina&#231;&#227;o</h2><p>Existe uma quarta camada, auxiliar, que serve justamente para as outras n&#227;o serem contaminadas por opera&#231;&#227;o: um di&#225;rio bruto por dia (<code>memory/YYYY-MM-DD.md</code>), um arquivo de obriga&#231;&#245;es futuras com prazo, verifica&#231;&#227;o e rollback (<code>FOLLOWUPS.md</code>), os arquivos de estado dos crons (deduplica&#231;&#227;o, SHA j&#225; revisado, &#250;ltima notifica&#231;&#227;o) e um <code>MEMORY.md</code> enxuto com pend&#234;ncias de alta visibilidade e ponteiros.</p><p>O prop&#243;sito dessa camada &#233; ser fila e estado, com ciclo de vida curto. Sem ela, o conhecimento estrat&#233;gico vira lista de tarefas e a mem&#243;ria sem&#226;ntica vira log operacional, que s&#227;o os dois modos cl&#225;ssicos de degrada&#231;&#227;o.</p><h2>06. Captura de decis&#245;es em PRs: review com estado e as CTO notes</h2><p>At&#233; aqui, camadas. Agora, os crons que as alimentam. O primeiro &#233; o de captura de decis&#245;es em pull requests, que na minha opera&#231;&#227;o culmina num produto executivo di&#225;rio que chamo de CTO notes.</p><p>Come&#231;a pelo cron de review. Ele roda a cada 30 minutos e tem estado, o que o distingue de &#8220;pedir para uma IA opinar&#8221;:</p><pre><code><code>GitHub/GitLab
  &#8594; descobre PR/MR aberto ou head alterado
  &#8594; deduplica por repo + n&#250;mero + SHA
  &#8594; busca body, diff, commits, checks e coment&#225;rios
  &#8594; revisa contra rubrica versionada
  &#8594; publica review no SHA exato
  &#8594; grava estado e evid&#234;ncia
  &#8594; notifica somente quando houver mudan&#231;a relevante</code></code></pre><p>A rubrica &#233; versionada e a regra de aprova&#231;&#227;o &#233; dura: qualquer finding bloqueia. A parte que mais importa para quem for implementar &#233; o papel do SHA. Uma review vale apenas para o head revisado; commit novo invalida o parecer anterior; e o estado do cron &#233; chaveado por repo, n&#250;mero e head SHA. Sem isso, o sistema afirma coisas sobre um c&#243;digo que j&#225; mudou.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!w9Ml!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!w9Ml!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!w9Ml!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91902,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!w9Ml!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!w9Ml!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F104630ec-58ed-48fa-a370-753247e96b7d_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Cada parecer &#233; um lacre sobre um commit espec&#237;fico. O commit seguinte rompe o lacre por defini&#231;&#227;o.</em></figcaption></figure></div><p>Sobre esse review roda o cron di&#225;rio de CTO notes, &#224; meia-noite: percorre os reposit&#243;rios, coleta PRs, commits, diffs e discuss&#245;es do intervalo do dia, salva a evid&#234;ncia bruta, sintetiza as decis&#245;es com fallback entre modelos e faz upsert idempotente da se&#231;&#227;o do dia num documento executivo. O sintetizador precisa distinguir c&#243;digo, discuss&#227;o, decis&#227;o expl&#237;cita, risco e ru&#237;do de merge; transformar todo coment&#225;rio em &#8220;decis&#227;o&#8221; automaticamente produziria um documento executivo cheio de decis&#245;es que ningu&#233;m tomou. Na outra ponta, o consolidador di&#225;rio l&#234; esse documento, espelha o verbatim no acervo e destila apenas as decis&#245;es de alto sinal para a pasta de decis&#245;es curadas, com link de volta para a evid&#234;ncia.</p><h2>07. Meeting intelligence: da fala ao objeto acion&#225;vel</h2><p>O segundo cron de captura trata reuni&#245;es, quatro vezes ao dia. O desenho parte de uma recusa: a sa&#237;da que interessa &#233; um conjunto de objetos acion&#225;veis, e resumo bonito &#233; subproduto.</p><pre><code><code>grava&#231;&#227;o / notas de reuni&#227;o
  &#8594; transcri&#231;&#227;o ou documento
  &#8594; extra&#231;&#227;o estruturada de decis&#245;es, riscos, compromissos e owners
  &#8594; evid&#234;ncia bruta versionada
  &#8594; a&#231;&#245;es: issue, follow-up, estrat&#233;gia ou CTO notes</code></code></pre><p>Cada objeto extra&#237;do sai neste formato:</p><pre><code><code>{
  "decision": "...",
  "owner": "...",
  "deadline": "...",
  "evidence": "meeting_id + trecho",
  "destination": "issue|followup|strategy|cto_notes"
}</code></code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Wq0-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Wq0-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Wq0-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:102770,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Wq0-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Wq0-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ffc62a-e057-48d9-84b5-84081ca9fddc_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>A transcri&#231;&#227;o entra como fita cont&#237;nua; saem pe&#231;as discretas, cada uma amarrada por um fio ao trecho de origem.</em></figcaption></figure></div><p>A regra inviol&#225;vel &#233; o campo <code>evidence</code>: toda a&#231;&#227;o criada carrega o link para a reuni&#227;o e o trecho de origem. &#201; isso que impede a alucina&#231;&#227;o de decis&#227;o, o modo de falha mais caro desse tipo de automa&#231;&#227;o. Uma &#8220;decis&#227;o&#8221; sem trecho de origem simplesmente n&#227;o nasce.</p><h2>08. Estrat&#233;gia &#233; consolidada, e nunca inferida de atividade</h2><p>Sobre as notas executivas vive um segundo produto: o documento de estrat&#233;gia (tese, prioridades, trade-offs, posicionamento) e um terceiro sobre pessoas e organiza&#231;&#227;o. Aqui vale uma corre&#231;&#227;o que fiz ao meu pr&#243;prio desenho. Cheguei a considerar um cron di&#225;rio de estrat&#233;gia e recuei: estrat&#233;gia muda em ritmo semanal, na melhor das hip&#243;teses.</p><p>O desenho que recomendo &#233; um job semanal de consolida&#231;&#227;o estrat&#233;gica que l&#234; as CTO notes, as decis&#245;es curadas, as extra&#231;&#245;es de reuni&#227;o e as m&#233;tricas, e reescreve um documento vivo. Na minha opera&#231;&#227;o, esse documento &#233; alimentado por meeting intelligence e por input manual meu, e o consolidador o reescreve a cada ciclo em vez de empilhar ap&#234;ndices. A restri&#231;&#227;o que protege a camada: o job nunca inventa estrat&#233;gia a partir de atividade t&#233;cnica. Volume de commits &#233; sinal de movimento; dire&#231;&#227;o &#233; decis&#227;o humana registrada. Confundir os dois produz documentos que parecem estrat&#233;gicos e apenas descrevem in&#233;rcia.</p><h2>09. Recupera&#231;&#227;o de contexto: a fonte certa para a pergunta certa</h2><p>Todo o investimento em escrita se paga na leitura. No in&#237;cio de uma sess&#227;o, meus agentes seguem uma ordem de carregamento que come&#231;a leve e aprofunda sob demanda: primeiro identidade e o &#237;ndice do conhecimento curado; depois o contexto do projeto em quest&#227;o; depois busca sem&#226;ntica na mem&#243;ria privada; o ledger de sess&#227;o apenas se for preciso reconstituir detalhe; e as notas executivas quando a tarefa tem implica&#231;&#227;o de gest&#227;o.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QMQm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QMQm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QMQm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:93026,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/207974198?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QMQm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!QMQm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e74263-ef20-438c-9040-4c2f73174b40_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O prumo desce por est&#225;gios. A maioria das perguntas se resolve nos dois primeiros.</em></figcaption></figure></div><p>A tabela mental que governa a leitura: verdade sobre pessoa, projeto ou decis&#227;o mora no acervo curado; experi&#234;ncia recente do pr&#243;prio agente mora no Mem0; detalhe exato de conversa mora no ledger; estado operacional mora nos follow-ups e arquivos de estado; vis&#227;o executiva mora nas CTO notes e na estrat&#233;gia. Quando um agente responde errado, a causa mais frequente na minha experi&#234;ncia &#233; consulta &#224; camada errada, e o sintoma cl&#225;ssico &#233; usar log de sess&#227;o para responder pergunta de estado atual.</p><p>H&#225; um sinal de sa&#250;de que monitoro com aten&#231;&#227;o: o journal di&#225;rio do consolidador registra quais arquivos curados foram efetivamente usados como fonte no dia. Se esse campo fica vazio por uma semana, o sistema est&#225; escrevendo sem ler. Chamo isso de write-only drift, e considero o sintoma n&#250;mero um de fracasso em gest&#227;o de conhecimento, humana ou de agente.</p><h2>10. Confiabilidade: o que mant&#233;m o sistema honesto</h2><p>As cad&#234;ncias que uso hoje: writer de mem&#243;ria a cada 2 horas; sincroniza&#231;&#227;o do reposit&#243;rio a cada 6; curadoria consolidada uma vez ao dia; review de PR/MR a cada 30 minutos; meeting intelligence quatro vezes ao dia; CTO notes di&#225;rio; auditoria de qualidade de mem&#243;ria di&#225;ria; backup em Git di&#225;rio. Os n&#250;meros importam menos que a exist&#234;ncia de cad&#234;ncia expl&#237;cita por camada; ajuste ao seu volume.</p><p>As prote&#231;&#245;es, essas sim, considero n&#227;o negoci&#225;veis. Idempot&#234;ncia por ID de origem, SHA ou hash de conte&#250;do, para que rodar duas vezes produza o mesmo resultado. Proveni&#234;ncia obrigat&#243;ria em toda s&#237;ntese. Evid&#234;ncia bruta separada da conclus&#227;o. Timestamps com timezone expl&#237;cito. Health check por cron, com alerta para falha repetida; um cron parado em sil&#234;ncio &#233; indistingu&#237;vel de &#8220;nenhuma novidade&#8221;, e essa ambiguidade j&#225; me custou 19 dias lendo uma fonte congelada achando que a fonte estava quieta. Fallback de modelo com a proveni&#234;ncia do modelo real registrada, porque provider pode responder com outro modelo por baixo do r&#243;tulo; e nenhum caminho de fallback em que a automa&#231;&#227;o responde sem fonte. Git em tudo que &#233; curado, pela auditabilidade e pelo rollback. E permiss&#245;es m&#237;nimas por fonte: o agente que l&#234; calend&#225;rio raramente precisa escrever no reposit&#243;rio de conhecimento.</p><p>Cicatriz recente que ilustra a categoria: dois crons meus de monitoramento ficaram um dia inteiro fora do ar porque fixavam um &#250;nico provedor de LLM, e a conta desse provedor ficou sem saldo. A corre&#231;&#227;o virou regra escrita no acervo: automa&#231;&#227;o operacional herda a cadeia central de failover, e fixar modelo exige justificativa expl&#237;cita. &#201; o sistema de registros documentando a pr&#243;pria opera&#231;&#227;o, que &#233; exatamente o comportamento que voc&#234; quer ver emergir.</p><h2>O que levar para o seu dia a dia</h2><p>Quatro li&#231;&#245;es transfer&#237;veis. </p><ul><li><p>Primeira: defina as fronteiras antes de escolher ferramenta. Um arquivo de texto com fronteiras claras supera um vector database usado como balde &#250;nico; a decis&#227;o cara &#233; o que pode ser promovido, quem cura e qual &#233; a fonte de verdade por tipo de pergunta. </p></li><li><p>Segunda: exija proveni&#234;ncia de toda s&#237;ntese. Decis&#227;o sem link para a origem &#233; opini&#227;o com verniz de registro, e automa&#231;&#227;o que afirma precisa provar, seja pelo SHA revisado, seja pelo trecho da reuni&#227;o. </p></li><li><p>Terceira: coloque um humano no gate das camadas sens&#237;veis. No meu sistema, identidade e estrat&#233;gia s&#243; mudam com veredito meu; o resto flui sozinho, e &#233; essa assimetria que permite automatizar sem perder o controle. </p></li><li><p>Quarta: trate o substrato curado como ativo. Escrevi em junho sobre <a href="https://www.guilhermefavaron.com.br/p/o-ativo-invisivel-dados-como-vantagem-competitiva">dados propriet&#225;rios como vantagem competitiva</a> no n&#237;vel das empresas; o acervo curado que seus agentes leem &#233; a vers&#227;o operacional disso, e ele se valoriza com o tempo pelas mesmas raz&#245;es: acumula&#231;&#227;o, path dependence e a impossibilidade de comprar o atraso depois. </p></li></ul><p>Quem quiser ver o mecanismo de melhoria cont&#237;nua por tr&#225;s disso, escrevi sobre ele em <a href="https://iaaplicada.substack.com/p/self-improvement-architecture-aplicacoes-que-aprendem-com-uso-real">aplica&#231;&#245;es que aprendem com uso real</a>.</p><p>Se for come&#231;ar amanh&#227;, comece pequeno: um reposit&#243;rio Git, uma inbox por agente, um frontmatter m&#237;nimo com proveni&#234;ncia e confian&#231;a, e um cron di&#225;rio de curadoria com regras escritas. O resto do sistema cresce por demanda, camada a camada, e cada camada nova nasce quando a anterior come&#231;a a ser mal utilizada para um papel que exige outra.</p><p>Fecho com a pergunta que uso para auditar o meu pr&#243;prio sistema. Quando o seu agente afirmar amanh&#227; que uma decis&#227;o foi tomada, voc&#234; vai conseguir apontar onde ela est&#225; escrita, quem a promoveu e qual evid&#234;ncia a sustenta?</p>]]></content:encoded></item><item><title><![CDATA[O fim do tokenmaxxing: por que usar modelo de fronteira para tudo acabou]]></title><description><![CDATA[Quando o modelo capaz fica barato e o protocolo de agente fica trivial de escalar, a vantagem migra de qual modelo voce usa para qual arquitetura de custo voce desenha.]]></description><link>https://www.guilhermefavaron.com.br/p/o-fim-do-tokenmaxxing-por-que-nao-usar-modelo-de-fronteira</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/o-fim-do-tokenmaxxing-por-que-nao-usar-modelo-de-fronteira</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Wed, 01 Jul 2026 15:00:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rUxG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>H&#225; algumas semanas argumentei aqui que o c&#243;digo estava deixando de ser o ativo escasso, comoditizado pela mesma IA que o escreve (<a href="https://iaaplicada.substack.com/p/o-fim-do-codigo-como-ativo-o-novo">O fim do c&#243;digo como ativo</a>). Esta semana o mesmo movimento de comoditiza&#231;&#227;o apareceu uma camada acima, no pr&#243;prio modelo de fronteira. Tr&#234;s fatos do dia 30 de junho contam a hist&#243;ria quando lidos juntos, e foi o <em>radar de intelig&#234;ncia</em> que mantenho em c&#243;digo aberto (<a href="https://iaaplicada.substack.com/p/radar-inteligencia-mercado-open-source">radar de intelig&#234;ncia de mercado</a>) que os colocou na mesma mesa.</p><p>O primeiro &#233; um lan&#231;amento de modelo. O segundo &#233; a maior revis&#227;o de um protocolo de agentes desde que ele existe. O terceiro &#233; uma reportagem de mercado sobre empresas cortando gasto com IA. Separados, s&#227;o tr&#234;s notas soltas. Juntos, marcam o fim de uma pr&#225;tica que dominou os &#250;ltimos dois anos: jogar o modelo mais caro em cima de todo problema, o que a comunidade apelidou de tokenmaxxing.</p><p>Organizei o argumento em sete pontos, na ordem em que eles se constroem.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rUxG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rUxG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rUxG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49084,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/204368705?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rUxG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!rUxG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F706bb6cf-9324-430d-8313-c18adc0b2ce7_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O fim do tokenmaxxing: o consumo irrestrito encontrou um teto (Caso da Uber)</em></figcaption></figure></div><h2>01. O que era tokenmaxxing</h2><p>Tokenmaxxing &#233; a pr&#225;tica de resolver qualquer tarefa com o modelo mais capaz dispon&#237;vel, sem perguntar se a tarefa exige aquela capacidade. Classificar um e-mail, extrair um campo de um PDF, resumir uma reuni&#227;o e provar um teorema iam todos para o mesmo modelo de topo, faturados na mesma tarifa premium. Durante 2024 e 2025 isso fez sentido operacional: a diferen&#231;a de qualidade entre o topo e o meio da tabela era grande o suficiente para justificar pagar caro por margem de seguran&#231;a, e o or&#231;amento de IA era tratado como investimento estrat&#233;gico fora de questionamento.</p><p>A <a href="https://www.cnbc.com/2026/05/29/-tokens-or-humans-the-new-corporate-trade-off.html">reportagem da CNBC de 26 de junho</a> coloca n&#250;mero nessa cultura: usar modelo de fronteira para tudo responde por cerca de 95% do uso enterprise atual. Era a norma. O que mudou &#233; que a norma ficou cara demais para sobreviver ao primeiro ciclo de or&#231;amento s&#233;rio.</p><h2>02. O mercado puxou o freio</h2><p>A mesma reportagem documenta o outro lado da curva. A Uber colocou um teto base de USD 1.500 por m&#234;s por funcion&#225;rio depois de queimar o or&#231;amento anual de IA em quatro meses. A Lindy AI migrou 100% do tr&#225;fego que rodava em Claude para DeepSeek e viu o custo despencar. O padr&#227;o que se repete entre as empresas citadas tem tr&#234;s pe&#231;as: </p><ol><li><p>teto de gasto mensal por funcion&#225;rio, </p></li><li><p>roteamento de cada tarefa para o modelo mais barato que resolve, e </p></li><li><p>exig&#234;ncia de ROI comprovado antes de aprovar budget novo.</p></li></ol><p>O pano de fundo financeiro confirma a press&#227;o. Anthropic e OpenAI entraram com pedido de IPO confidencial em junho, com run-rates reportados de cerca de USD 47 bilh&#245;es e USD 25 bilh&#245;es respectivamente (n&#250;meros reportados, sem auditoria p&#250;blica, e o <a href="https://www.nytimes.com/2026/06/25/technology/openai-ipo-artificial-intelligence.html">NYT sugere que a OpenAI pode adiar o IPO para 2027</a>). Os dois maiores fornecedores de fronteira se preparam para o mercado p&#250;blico no exato momento em que os clientes come&#231;am a racionalizar gasto. Roteamento de modelo deixa de ser otimiza&#231;&#227;o de engenheiro e passa a virar linha de governan&#231;a financeira reportada a board.</p><h2>03. A fronteira ficou barata: Claude Sonnet 5</h2><p>No mesmo 30 de junho, a <a href="https://www.anthropic.com/claude-sonnet-5-system-card">Anthropic lan&#231;ou o Claude Sonnet 5</a>. Modelo multimodal, janela de 1.000.000 de tokens de input e at&#233; 64 mil de output, a USD 3,00 por milh&#227;o de tokens de input e USD 15,00 por milh&#227;o de output, identificador de API claude-sonnet-5. Sonnet 5 fica abaixo do topo da pr&#243;pria Anthropic, com Opus 4.8 e Fable 5 acima em avalia&#231;&#227;o agregada. O ponto &#233; exatamente esse. Sonnet 5 entrega racioc&#237;nio, c&#243;digo e matem&#225;tica no quarto e terceiro lugares dos agregados de benchmark a uma fra&#231;&#227;o do pre&#231;o do tier Opus, com contexto suficiente para ingerir uma base de c&#243;digo inteira em um &#250;nico request.</p><p>Vale separar o que &#233; evid&#234;ncia do que &#233; alega&#231;&#227;o, porque a diferen&#231;a importa para a decis&#227;o. A data, o pre&#231;o, o contexto e o identificador de API s&#227;o fatos do system card. O score independente vem da <a href="https://artificialanalysis.ai/">Artificial Analysis</a>, que coloca o modelo em 1618 de Elo no GDPval-AA, terceiro lugar, evid&#234;ncia forte porque &#233; terceiro avaliando. J&#225; os n&#250;meros de USAMO 79,5%, ChartMuseum 87% e CharXiv 88% s&#227;o self-reported pela Anthropic e devem ser tratados como "alega&#231;&#227;o de fornecedor" at&#233; verifica&#231;&#227;o independente. Lat&#234;ncia e throughput citados vieram de p&#225;gina da Anthropic e pedem valida&#231;&#227;o no endpoint oficial. A decis&#227;o de adotar Sonnet 5 como tier m&#233;dio se sustenta nos fatos que forem poss&#237;vel auditar, sem depender dos n&#250;meros "com asterisco".</p><h2>04. A infraestrutura de agente ficou barata: MCP stateless</h2><p>O segundo fato t&#233;cnico &#233; o que torna o roteamento vi&#225;vel em escala. O Model Context Protocol publicou o <a href="https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/">Release Candidate da spec 2026-07-28</a>, descrito pelo pr&#243;prio projeto como a maior revis&#227;o desde o lan&#231;amento, com a vers&#227;o final marcada para 28 de julho e uma janela de valida&#231;&#227;o de dez semanas em que os SDKs Tier 1 ficam obrigados a suportar. A mudan&#231;a de fundo &#233; o core ficar stateless: removem o handshake de inicializa&#231;&#227;o (SEP-2575) e o header de sess&#227;o Mcp-Session-Id (SEP-2567), e a vers&#227;o do protocolo, as capabilities e a info do cliente passam a viajar em metadados em cada request, com um m&#233;todo novo de descoberta sob demanda.</p><p>A consequ&#234;ncia operacional &#233; direta. Um servidor MCP remoto que antes exigia sticky session, store de sess&#227;o compartilhado e inspe&#231;&#227;o profunda no gateway agora roda atr&#225;s de um load balancer round-robin comum, com clientes cacheando a lista de ferramentas at&#233; o tempo de vida expirar. O estado passa a ser expl&#237;cito: uma ferramenta emite um identificador (um basket_id, um browser_id) e o modelo devolve esse identificador como argumento na pr&#243;xima chamada, o que deixa o estado vis&#237;vel ao modelo em vez de escondido no transporte. Como h&#225; breaking changes, quem mant&#233;m servidor MCP pr&#243;prio ganha em come&#231;ar a leitura do changelog agora, antes de 28 de julho. <strong>Operar agente em produ&#231;&#227;o fica mais barato e mais simples na mesma semana em que o modelo capaz ficou barato.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!epu-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!epu-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!epu-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!epu-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!epu-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!epu-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68917,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/204368705?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!epu-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!epu-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!epu-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!epu-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e4c90e4-b737-40a1-926c-8000687d708d_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>MCP stateless: o estado sai do transporte e vira argumento que o modelo carrega</em></figcaption></figure></div><h2>05. Model routing vira disciplina de gest&#227;o</h2><p>Juntando as tr&#234;s pe&#231;as, o roteamento de modelo assume o centro da opera&#231;&#227;o de quem roda IA. A forma madura &#233; uma pol&#237;tica de tiers expl&#237;cita: tarefa simples vai para um modelo open-weight barato (DeepSeek, Kimi K2.7 Code, GLM-5.2 s&#227;o os candidatos que aparecem no radar e que eu uso), tarefa m&#233;dia vai para Sonnet 5, e s&#243; o racioc&#237;nio mais duro chega ao Opus. Cada request desce a escada at&#233; o degrau mais barato que ainda resolve, e o que torna isso defens&#225;vel perante o board &#233; <strong>instrumentar custo por fluxo</strong>, m&#233;trica que a maioria das opera&#231;&#245;es ainda n&#227;o tem.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YDZ1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YDZ1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YDZ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:61944,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/204368705?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YDZ1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YDZ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf0fce8a-a56f-4a97-8854-76ccf31ce34d_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Model routing por tier: cada tarefa desce at&#233; o degrau mais barato que resolve</em></figcaption></figure></div><p>O degrau do meio &#233; o que muda mais de figura com o Sonnet 5. Para a maioria das tarefas de agente, c&#243;digo assistido e an&#225;lise de documento, o tier m&#233;dio passa a resolver com qualidade alta sem o custo do topo. O topo deixa de ser o default e volta a ser o que sempre deveria ter sido: a exce&#231;&#227;o cara, reservada para o problema que de fato a exige.</p><h2>06. O que &#233; hype nisso</h2><p>Um bom radar precisa identificar separadamente o ru&#237;do e o sinal . Os n&#250;meros de benchmark self-reported do Sonnet 5 circulam como se fossem definitivos, e n&#227;o s&#227;o at&#233; algu&#233;m de fora confirmar. O n&#250;mero confi&#225;vel hoje &#233; o GDPval-AA da Artificial Analysis, terceiro independente. A narrativa de torcida Anthropic contra OpenAI tamb&#233;m rende manchete e explica pouco: a pr&#243;pria TechCrunch argumenta que os dois enfrentam o mesmo gargalo regulat&#243;rio, ent&#227;o a rivalidade fica como entretenimento e o sinal est&#225; no gargalo compartilhado. E a onda de busca ag&#234;ntica do Google (Antigravity, Gemini 3.5 Flash, Search Agents) &#233; tend&#234;ncia real de agentes embutidos em consumo, com um detalhe que o calend&#225;rio desmonta por se tratar de um an&#250;ncio original de maio (mas que efetivamente ainda nao chegou na ponta).</p><p>A regra que uso para mim, e que recomendo, &#233; simples de enunciar e dif&#237;cil de seguir: n&#250;mero com asterisco &#233; alega&#231;&#227;o at&#233; virar evid&#234;ncia, e a fonte prim&#225;ria vale mais que o agregador que a <em>repackageia</em>.</p><h2>07. O que levar para a sua empresa</h2><p>Quatro conclus&#245;es, em ordem de inc&#244;modo.</p><p><strong>Primeira</strong>: frontier-para-tudo acabou como default. Se a sua opera&#231;&#227;o roda toda tarefa no modelo mais caro, ela est&#225; pagando tier premium por trabalho que o tier m&#233;dio resolve, e o primeiro ciclo de or&#231;amento s&#233;rio vai expor isso como a Uber exp&#244;s o pr&#243;prio.</p><p><strong>Segunda</strong>: roteamento &#233; disciplina de gest&#227;o, com pol&#237;tica de tiers e custo por fluxo medido. Desenhar essa pol&#237;tica e instrumentar o custo &#233; o que transforma a &#225;rea de IA de centro de custo crescente em dona de uma arquitetura que entrega o mesmo resultado por uma fra&#231;&#227;o do gasto. Esse &#233; o argumento que sustenta IA na empresa perante quem assina o cheque.</p><p><strong>Terceira</strong>: a infraestrutura barata chegou junto com o modelo barato. MCP stateless remove o motivo t&#233;cnico mais comum para agente em produ&#231;&#227;o sair caro. Quem mant&#233;m servidor pr&#243;prio tem uma data, <strong>28 de julho</strong>, e um changelog para ler antes dela.</p><p><strong>Quarta</strong>, e a que comp&#245;e com tudo que j&#225; escrevi aqui: quando todo concorrente tem acesso aos mesmos modelos de fronteira pela mesma API, o modelo para de ser vantagem. O que sobra como fosso &#233; o que n&#227;o se compra por API, o ativo de dados propriet&#225;rio coletado ao longo de anos que descrevi em <a href="https://iaaplicada.substack.com/p/o-ativo-invisivel-dados-como-vantagem-competitiva">O ativo invis&#237;vel</a>, agora somado &#224; arquitetura de custo que decide qual modelo toca qual tarefa. <strong>O modelo de fronteira &#233; a camada fina e comoditizada em cima.</strong> <strong>A vantagem real &#233; a estrutura que sustenta embaixo.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vqLn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vqLn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vqLn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55096,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/204368705?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vqLn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!vqLn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49f5972f-2914-4930-ac43-541510bf176a_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>O modelo de fronteira &#233; commodity na superf&#237;cie. O fosso &#233; a arquitetura de custo e os dados que sustentam embaixo.</em></figcaption></figure></div><p>A pergunta que fica para o seu planejamento &#233; direta: se o modelo mais inteligente do mercado custasse o mesmo que o mais barato amanh&#227;, o que na sua opera&#231;&#227;o ainda seria dif&#237;cil de copiar? A resposta a essa pergunta &#233; a &#250;nica coisa em que vale a pena investir antes do pr&#243;ximo lan&#231;amento tornar o resto commodity.</p><p></p><div><hr></div><p></p><p><strong>Fontes prim&#225;rias consultadas</strong>: blog oficial do Model Context Protocol (RC 2026-07-28), system card do Claude Sonnet 5 cruzado em agregador de stats, blog do Google. Jornalismo com fontes nomeadas: CNBC (corte de gasto enterprise) e TechCrunch (gargalo regulat&#243;rio). N&#250;meros de benchmark marcados como self-reported s&#227;o alega&#231;&#227;o da Anthropic at&#233; verifica&#231;&#227;o independente; o n&#250;mero auditado citado &#233; o GDPval-AA da Artificial Analysis. Run-rates de Anthropic e OpenAI s&#227;o reportados, sem auditoria p&#250;blica. Sinais de X foram tratados apenas como detector de fuma&#231;a, sem cita&#231;&#227;o social como evid&#234;ncia. Este ensaio nasceu de uma rodada do AI Intelligence Radar, sistema de curadoria que mantenho em opera&#231;&#227;o pr&#243;pria.</p>]]></content:encoded></item><item><title><![CDATA[O ativo invisível: o que 116 mil relatórios anuais ensinam sobre o valor dos dados]]></title><description><![CDATA[Empresas intensivas em dados valem at&#233; 35% mais que concorrentes do mesmo nicho, mas o lucro demora anos para aparecer, e quem n&#227;o construiu a base cedo n&#227;o compra o atraso depois.]]></description><link>https://www.guilhermefavaron.com.br/p/o-ativo-invisivel-dados-como-vantagem-competitiva</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/o-ativo-invisivel-dados-como-vantagem-competitiva</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Fri, 12 Jun 2026 19:56:40 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Cvq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>H&#225; pouco mais de um ano, escrevi aqui que o verdadeiro ativo estrat&#233;gico das organiza&#231;&#245;es seria a composi&#231;&#227;o &#250;nica de dados propriet&#225;rios combinados com modelos de IA treinados especificamente sobre eles (<a href="https://iaaplicada.substack.com/p/o-futuro-das-organizacoes-alem-da">O Futuro das Organiza&#231;&#245;es</a>). Era uma tese. Esta semana revisitei um estudo que d&#225; a essa tese o que ela mais precisava: n&#250;meros.</p><p>O estudo &#233; &#8220;Data Assets and Industry Competition: Evidence from 10-K Filings&#8221;, de Adam Saunders (University of British Columbia) e Prasanna Tambe (NYU Stern), dispon&#237;vel no <a href="https://ssrn.com/abstract=2537089">SSRN</a>. Os dois fizeram algo que parece &#243;bvio depois que algu&#233;m faz: usaram minera&#231;&#227;o de texto para ler todos os relat&#243;rios anuais que as empresas de capital aberto americanas s&#227;o obrigadas a entregar &#224; SEC (os formul&#225;rios 10-K) entre 1996 e 2012, e mediram quanto cada empresa fala sobre capturar, armazenar, gerenciar e analisar dados.</p><p>O per&#237;odo analisado pode parecer datado, e &#233; justamente essa dist&#226;ncia que torna o estudo valioso. Eles mediram a forma&#231;&#227;o da vantagem competitiva por dados antes do hype de big data, antes de deep learning, antes de LLMs. O mecanismo que documentaram &#233; estrutural e independe de moda. E, como vou argumentar no final, &#233; exatamente o mecanismo que est&#225; se repetindo agora com IA.</p><p>Organizei o argumento do paper em dez pontos, na ordem em que eles se constroem. Vamos a eles.</p><h2>01. O problema: dados s&#227;o um ativo invis&#237;vel</h2><p>Bases de dados, capacidade anal&#237;tica e pr&#225;ticas data-driven s&#227;o ativos intang&#237;veis. Geram valor, custam caro para construir, levam anos para maturar, e n&#227;o aparecem em nenhuma linha do balan&#231;o patrimonial. O contador registra o servidor, mas os quinze anos de hist&#243;rico de transa&#231;&#245;es que rodam nele ficam de fora.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3Cvq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3Cvq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3Cvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:79924,&quot;alt&quot;:&quot;Dados como vantagem competitiva&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Dados como vantagem competitiva" title="Dados como vantagem competitiva" srcset="https://substackcdn.com/image/fetch/$s_!3Cvq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!3Cvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3418694-d5aa-4b8c-bf34-6af826935d18_1456x819.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Dados como vantagem competitiva</figcaption></figure></div><p>Isso criava um problema de medi&#231;&#227;o que travava o campo inteiro. As fontes tradicionais de dados sobre investimento em TI cobriam poucas centenas de empresas, per&#237;odos curtos, ou simplesmente deixaram de existir. Sem medida, sem evid&#234;ncia; sem evid&#234;ncia, a conversa sobre &#8220;dados como ativo&#8221; ficava no terreno da opini&#227;o: o pitch de consultoria de um lado, o ceticismo do CFO do outro.</p><p>A consequ&#234;ncia pr&#225;tica: ningu&#233;m conseguia responder com rigor a perguntas b&#225;sicas. Empresas que investem em dados valem mais? Lucram mais? Quanto tempo demora? A vantagem &#233; replic&#225;vel ou cumulativa?</p><h2>02. Como mediram: do dicion&#225;rio ao painel final</h2><p>A solu&#231;&#227;o dos autores tem duas pernas. A primeira &#233; a fonte: o 10-K. Diferente de press release e de deck de investidor, o 10-K &#233; regulado pelo Securities Act e pela Sarbanes-Oxley: cada afirma&#231;&#227;o &#233; juridicamente vinculante, auditada, e mentir nele &#233; crime com pena para os executivos que assinam. Quando uma empresa escreve no 10-K que implementou um data warehouse, o departamento jur&#237;dico dela deixou.</p><p>A segunda perna &#233; o dicion&#225;rio. Para evitar vi&#233;s de quem escolhe as palavras, eles partiram de uma fonte externa e p&#250;blica, o relat&#243;rio Big Data do McKinsey Global Institute (2011), e extra&#237;ram toda combina&#231;&#227;o de palavra com &#8220;data&#8221;. Sa&#237;ram 1.035 combina&#231;&#245;es, que foram validadas manualmente em amostras reais de 10-Ks: sobreviveram 410 keywords, agregadas em 155 termos-raiz (customer data, data mining, data warehouse, clinical data, data privacy...).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tm12!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tm12!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tm12!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:124969,&quot;alt&quot;:&quot;Como mediram: do dicion&#225;rio ao painel final&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Como mediram: do dicion&#225;rio ao painel final" title="Como mediram: do dicion&#225;rio ao painel final" srcset="https://substackcdn.com/image/fetch/$s_!Tm12!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!Tm12!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ae3bdd7-b75d-4b23-bf8e-2178147c5322_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Como mediram: do dicion&#225;rio ao painel final</figcaption></figure></div><p>Aplicado o dicion&#225;rio aos relat&#243;rios e cruzando com dados financeiros da Compustat, o funil ficou assim: 194.935 firma-anos no ponto de partida; 116.173 com 10-K v&#225;lido (o painel usado para an&#225;lise de difus&#227;o); e 33.120 observa&#231;&#245;es na amostra final de valor e lucro, depois de exigir financeiros completos, excluir financeiras (cujo balan&#231;o n&#227;o se compara) e excluir produtoras de TI, que citam dados para vender, n&#227;o para usar. A medida final, PCTDATA, ranqueia as empresas de cada ano em decis de intensidade de keywords.</p><p>&#201; a maior base j&#225; constru&#237;da sobre o tema: cerca de 1.950 empresas por ano, dezessete anos. Ler fontes p&#250;blicas em escala com software, ali&#225;s, ficou radicalmente mais acess&#237;vel desde ent&#227;o: o <a href="https://iaaplicada.substack.com/p/radar-inteligencia-mercado-open-source">radar de intelig&#234;ncia de mercado</a> que publiquei em c&#243;digo aberto faz o equivalente com LLMs, sem depender de dicion&#225;rio de keywords.</p><h2>03. A difus&#227;o: come&#231;a na TI e se espalha pela economia inteira</h2><p>Com o painel montado, a primeira pergunta &#233; descritiva: quem fala de dados, e desde quando?</p><p>Em 1996, 78% das produtoras de TI j&#225; mencionavam ao menos uma keyword de dados em seus 10-Ks, contra 41% do resto da economia. Em 2012, as produtoras chegaram a 90%, mas a hist&#243;ria real est&#225; nas usu&#225;rias: 75%, quase o dobro do ponto de partida. O crescimento atravessou todos os setores, inclusive os menos &#243;bvios: agricultura foi de 20% para 62%, utilities de 26% para 78%.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ybaF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ybaF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ybaF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84632,&quot;alt&quot;:&quot;A difus&#227;o: come&#231;a na TI e se espalha pela economia inteira&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A difus&#227;o: come&#231;a na TI e se espalha pela economia inteira" title="A difus&#227;o: come&#231;a na TI e se espalha pela economia inteira" srcset="https://substackcdn.com/image/fetch/$s_!ybaF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!ybaF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc201b7-4c0d-45d9-8bda-aba8cfa1f7cd_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A difus&#227;o: come&#231;a na TI e se espalha pela economia inteira</figcaption></figure></div><p>O detalhe mais interessante est&#225; na dispers&#227;o dentro de cada setor. Entre as produtoras de TI, a varia&#231;&#227;o de intensidade entre empresas vem caindo desde 1996: a pr&#225;tica amadureceu, padronizou, virou commodity. Entre as usu&#225;rias, a dispers&#227;o vem subindo. L&#237;deres e retardat&#225;rios est&#227;o se afastando. &#201; a assinatura estat&#237;stica de uma pr&#225;tica que deixou de ser curiosidade t&#233;cnica e virou arma competitiva.</p><h2>04. O vocabul&#225;rio muda e conta a hist&#243;ria da d&#233;cada</h2><p>Olhar quais termos crescem &#233; quase uma arqueologia da gest&#227;o de dados. Nos anos 90, o termo dominante era &#8220;data processing&#8221;, dados como tarefa operacional. Ele encolhe ao longo da amostra (11,5% para 8,0% dos relat&#243;rios), enquanto &#8220;database&#8221; quase dobra (13,9% para 24,8%) e &#8220;data center&#8221; sobe de 1,3% para 9,7%.</p><p>A explos&#227;o, por&#233;m, &#233; de outra fam&#237;lia. O termo que mais cresceu em todo o per&#237;odo foi &#8220;data privacy&#8221;: de exatos 2 relat&#243;rios (entre cerca de 3.000) em 1996 para 6,3% da amostra em 2012. Em 2012, data security, data privacy, sensitive data, data protection e personal data estavam todos entre os 20 termos mais citados: nenhum deles aparecia de forma relevante em 1996.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oHxq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oHxq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oHxq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:99566,&quot;alt&quot;:&quot;O vocabul&#225;rio muda e conta a hist&#243;ria da d&#233;cada&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="O vocabul&#225;rio muda e conta a hist&#243;ria da d&#233;cada" title="O vocabul&#225;rio muda e conta a hist&#243;ria da d&#233;cada" srcset="https://substackcdn.com/image/fetch/$s_!oHxq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!oHxq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d8cb960-3eb4-41f5-9265-f224f5b9cd54_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">O vocabul&#225;rio muda e conta a hist&#243;ria da d&#233;cada</figcaption></figure></div><p>O centro de gravidade do discurso corporativo migrou de processar (anos 90) para coletar (anos 2000) e depois proteger (p&#243;s-2007). Guarde essa sequ&#234;ncia: ela reaparece no ponto 07, precificada pelo mercado. E lembre que isso &#233; anos antes de GDPR e LGPD existirem: as empresas l&#237;deres sinalizavam preocupa&#231;&#227;o com privacidade uma d&#233;cada antes do regulador chegar. E a disputa por esse insumo s&#243; se intensificou: em <a href="https://iaaplicada.substack.com/p/osbots-de-ia-querem-uma-coisa-dados">78% dos bots de IA querem uma coisa: seus dados</a> mostrei quem est&#225; coletando o qu&#234; na internet de hoje.</p><h2>05. O mercado paga pr&#234;mio, e o pr&#234;mio n&#227;o tem teto</h2><p>Aqui o estudo sai do descritivo e entra no que interessa. A m&#233;trica &#233; o Tobin&#8217;s q: valor de mercado dividido pelo custo de reposi&#231;&#227;o dos ativos tang&#237;veis. Se q &#233; maior que 1, o mercado enxerga na empresa valor al&#233;m de m&#225;quinas, pr&#233;dios e estoques, ou seja, precifica intang&#237;veis.</p><p>Resultado, controlando por P&amp;D, publicidade, alavancagem, tamanho, lucratividade, setor e ano (2001&#8211;2012, excluindo a bolha ponto-com): a rela&#231;&#227;o entre intensidade de dados e valor &#233; uma escada. Nos decis de baixo, nada. Do s&#233;timo decil em diante, o pr&#234;mio aparece e cresce: +11,7%, +12,8%, +23,9%, at&#233; +35,3% de Tobin&#8217;s q para as empresas no decil mais intensivo, comparadas &#224; base.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6o2_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6o2_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6o2_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:72608,&quot;alt&quot;:&quot;O mercado paga pr&#234;mio, e o pr&#234;mio n&#227;o tem teto&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="O mercado paga pr&#234;mio, e o pr&#234;mio n&#227;o tem teto" title="O mercado paga pr&#234;mio, e o pr&#234;mio n&#227;o tem teto" srcset="https://substackcdn.com/image/fetch/$s_!6o2_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!6o2_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69aff909-9776-4928-9080-a47f7af96dfa_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">O mercado paga pr&#234;mio, e o pr&#234;mio n&#227;o tem teto</figcaption></figure></div><p>Dois detalhes elevam a barra. Primeiro, a rela&#231;&#227;o &#233; monot&#244;nica e n&#227;o desacelera no topo: n&#227;o existe &#8220;intensidade demais&#8221;. Segundo, o resultado sobrevive ao controle mais fino poss&#237;vel: comparando cada empresa apenas com concorrentes da mesma ind&#250;stria de seis d&#237;gitos NAICS, no mesmo ano, o pr&#234;mio do topo segue em +28,4%. O pr&#234;mio &#233; diferen&#231;a entre vizinhos diretos de mercado, com qualquer efeito de &#8220;setor de tecnologia vale mais&#8221; j&#225; descontado pelos controles.</p><h2>06. O lucro vem, mas demora anos (e discurso gen&#233;rico custa caro)</h2><p>Se o mercado paga na frente, o lucro confirma depois. A intensidade de dados de hoje n&#227;o tem correla&#231;&#227;o significativa com o lucro de hoje. Tem com o lucro de daqui a dois, tr&#234;s, cinco anos, e o efeito cresce a cada ano de defasagem, chegando a +3,2 pontos percentuais de ROA acima da m&#233;dia da ind&#250;stria no horizonte de cinco anos (top 10% vs. bottom 10%).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9mQt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9mQt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9mQt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64799,&quot;alt&quot;:&quot;O lucro vem, mas demora anos (e discurso gen&#233;rico custa caro)&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="O lucro vem, mas demora anos (e discurso gen&#233;rico custa caro)" title="O lucro vem, mas demora anos (e discurso gen&#233;rico custa caro)" srcset="https://substackcdn.com/image/fetch/$s_!9mQt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!9mQt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe099d056-d7a9-4b86-b1cb-82d30f0af706_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">O lucro vem, mas demora anos (e discurso gen&#233;rico custa caro)</figcaption></figure></div><p>A leitura &#233; a mesma que Brynjolfsson e colegas fizeram para a TI em geral: o ativo s&#243; vira resultado quando os complementos organizacionais (processos, habilidades, cultura de decis&#227;o, o lado humano que explorei em <a href="https://iaaplicada.substack.com/p/construindo-times-de-ia-lideranca">Construindo Times de IA</a>) ficam prontos. Isso leva anos. Avaliar uma iniciativa de dados pelo resultado do primeiro ano &#233; medir com a r&#233;gua errada.</p><p>O contraste que d&#225; for&#231;a ao resultado: os autores rodaram o mesmo modelo com men&#231;&#245;es gen&#233;ricas a &#8220;information technology&#8221; e &#8220;information systems&#8221;. O coeficiente &#233; negativo: empresas que falam de TI em geral, sem pr&#225;tica espec&#237;fica de dados, lucram menos que as concorrentes nos anos seguintes. O mercado e a contabilidade convergem no mesmo veredito: o mercado recompensa a pr&#225;tica espec&#237;fica e cobra caro do discurso gen&#233;rico.</p><h2>07. As tr&#234;s eras do valor: coleta, seguran&#231;a, padroniza&#231;&#227;o</h2><p>Com an&#225;lise fatorial (sem categorias pr&#233;-definidas), as 155 keywords se agrupam sozinhas em exatamente tr&#234;s temas: coleta (clinical data, trial data, collecting data...), seguran&#231;a (data security, data protection, personal data...) e padroniza&#231;&#227;o (standardizing data, extract data, map data...).</p><p>O mercado premiou cada um em seu tempo. Entre 2001 e 2006, o pr&#234;mio estava na coleta: coeficiente de +0,218 sobre Tobin&#8217;s q, forte e significativo. De 2007 a 2012, o pr&#234;mio da coleta zera e migra para a seguran&#231;a (+0,200). A padroniza&#231;&#227;o, sozinha, nunca foi premiada em nenhum per&#237;odo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y3A5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y3A5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y3A5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:66760,&quot;alt&quot;:&quot;As tr&#234;s eras do valor: coleta, seguran&#231;a, padroniza&#231;&#227;o&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="As tr&#234;s eras do valor: coleta, seguran&#231;a, padroniza&#231;&#227;o" title="As tr&#234;s eras do valor: coleta, seguran&#231;a, padroniza&#231;&#227;o" srcset="https://substackcdn.com/image/fetch/$s_!y3A5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!y3A5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3646ac-04e7-4af1-9c6b-d9f43c531d3a_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">As tr&#234;s eras do valor: coleta, seguran&#231;a, padroniza&#231;&#227;o</figcaption></figure></div><p>A interpreta&#231;&#227;o dos autores &#233; a que a microeconomia sugere: enquanto coletar dados diferenciava, o mercado pagava por coleta. Quando todo mundo passou a coletar, virou aposta de mesa: o pr&#234;mio foi para a fronteira seguinte. &#201; um padr&#227;o de migra&#231;&#227;o de valor que qualquer executivo de tecnologia reconhece, agora com coeficiente e erro-padr&#227;o.</p><h2>08. N&#227;o d&#225; para pular etapas: a evid&#234;ncia de path dependence</h2><p>E a padroniza&#231;&#227;o, que nunca aparece premiada sozinha? Aqui est&#225;, para mim, o resultado mais importante do paper.</p><p>Os autores separaram as empresas em dois grupos: as que em algum momento anterior registraram alta atividade de coleta (top 25%) e as que nunca registraram. No per&#237;odo 2007&#8211;2012, investir em seguran&#231;a vale +0,321 de Tobin&#8217;s q para quem tem a base de coleta, quase o triplo do efeito (n&#227;o significativo) para quem n&#227;o tem. E a padroniza&#231;&#227;o s&#243; gera pr&#234;mio estatisticamente detect&#225;vel para quem coletou antes (+0,142).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Wqc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Wqc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Wqc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:89572,&quot;alt&quot;:&quot;N&#227;o d&#225; para pular etapas: a evid&#234;ncia de path dependence&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="N&#227;o d&#225; para pular etapas: a evid&#234;ncia de path dependence" title="N&#227;o d&#225; para pular etapas: a evid&#234;ncia de path dependence" srcset="https://substackcdn.com/image/fetch/$s_!6Wqc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!6Wqc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb05a6214-0145-4a79-a397-66cf58cc8cfb_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">N&#227;o d&#225; para pular etapas: a evid&#234;ncia de path dependence</figcaption></figure></div><p>Em outras palavras: seguran&#231;a e padroniza&#231;&#227;o funcionam como multiplicadores de uma base que precisa existir antes. Os dados rejeitam explicitamente a hist&#243;ria reconfortante de que retardat&#225;rios conseguem &#8220;alcan&#231;ar&#8221; comprando as camadas de cima depois: investimento tardio sem funda&#231;&#227;o rende pouco, e a diferen&#231;a entre os dois grupos &#233; maior em 2007&#8211;2012 do que em 2001&#8211;2006. A vantagem n&#227;o s&#243; persiste; ela comp&#245;e.</p><p>A boa not&#237;cia para quem est&#225; atr&#225;s: construir a funda&#231;&#227;o n&#227;o exige reescrever tudo. A <a href="https://iaaplicada.substack.com/p/arquitetura-consolidacao-dados-ia-sem-reescrever-sistemas-legados">arquitetura em camadas que documentei aqui</a> consolida dezenas de fontes heterog&#234;neas preservando os sistemas legados, e &#233; o caminho pragm&#225;tico para o degrau de baixo.</p><h2>09. Antes de acreditar: os testes contra as explica&#231;&#245;es rivais</h2><p>Todo resultado correlacional convive com duas obje&#231;&#245;es, e o paper enfrenta as duas de frente.</p><p>Obje&#231;&#227;o um: causalidade invertida, a ideia de que empresas boas &#233; que falam de dados. O teste: acompanhar o valor de mercado em volta da primeira apari&#231;&#227;o de uma keyword de dados no 10-K de cada empresa. Um ano antes: nada (+4,0%, n&#227;o significativo). &#192;s v&#233;speras: nada. De nove a dez meses depois: +18,8%, altamente significativo. Se a keyword fosse s&#243; um marcador de empresa boa, o pr&#234;mio existiria antes da primeira men&#231;&#227;o. N&#227;o existe.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lj5y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lj5y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lj5y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:85403,&quot;alt&quot;:&quot;Antes de acreditar: os testes contra as explica&#231;&#245;es rivais&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Antes de acreditar: os testes contra as explica&#231;&#245;es rivais" title="Antes de acreditar: os testes contra as explica&#231;&#245;es rivais" srcset="https://substackcdn.com/image/fetch/$s_!lj5y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!lj5y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28ddadb3-86f9-4924-a196-7ae2f3663a9a_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Antes de acreditar: os testes contra as explica&#231;&#245;es rivais</figcaption></figure></div><p>Obje&#231;&#227;o dois: cheap talk, &#8220;&#233; discurso para inflar a a&#231;&#227;o&#8221;. O teste: medir algo que narrativa nenhuma melhora, o giro de estoque. Resultado: melhora de cerca de 10% no ano seguinte &#224; primeira keyword, e nada antes. A efici&#234;ncia operacional real acompanha o discurso, exatamente o que se espera se o discurso reflete pr&#225;tica.</p><p>E a robustez: trocando o dicion&#225;rio McKinsey por um l&#233;xico do NIST, ou usando s&#243; a palavra &#8220;data&#8221;, ou reincluindo financeiras e produtoras de TI, o padr&#227;o se mant&#233;m. Os autores s&#227;o honestos sobre os limites: a medida captura a materialidade declarada dos dados, sem dizer quanto a empresa investe, e controles finos n&#227;o substituem um experimento randomizado. Mas o conjunto de testes elimina as explica&#231;&#245;es alternativas &#243;bvias.</p><h2>10. O que levar para a sua empresa</h2><p>Quatro conclus&#245;es, em ordem de inc&#244;modo.</p><p>Primeira: dados s&#227;o um ativo de verdade, com pr&#234;mio de mercado mensur&#225;vel, mesmo invis&#237;vel no balan&#231;o. Se a sua empresa s&#243; gerencia o que aparece no demonstrativo, ela est&#225; gerenciando o conjunto errado.</p><p>Segunda: o retorno &#233; estruturalmente defasado. O mercado precifica na frente; o lucro confirma dois a cinco anos depois. Quem cobra payback de iniciativa de dados no or&#231;amento do ano seguinte est&#225; medindo com a r&#233;gua errada e matando o ativo antes de ele maturar.</p><p>Terceira: a sequ&#234;ncia importa mais que o montante. Coleta primeiro; seguran&#231;a e padroniza&#231;&#227;o multiplicam sobre essa base, e rendem pouco sem ela.</p><p>Quarta: a vantagem &#233; cumulativa. Bases de dados levam anos para construir, e os retardat&#225;rios do estudo n&#227;o conseguiram comprar o atraso. Em 2012, isso significava dispers&#227;o crescente de desempenho dentro das ind&#250;strias. O nome disso em estrat&#233;gia &#233; fosso.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IvVo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IvVo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IvVo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:81938,&quot;alt&quot;:&quot;O que levar para a sua empresa&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201792668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="O que levar para a sua empresa" title="O que levar para a sua empresa" srcset="https://substackcdn.com/image/fetch/$s_!IvVo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!IvVo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1205eb5f-30fa-49ae-a7e8-2e6d565ea7ef_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">O que levar para a sua empresa</figcaption></figure></div><h2>O paralelo com 2026</h2><p>Releia os dez pontos trocando &#8220;dados&#8221; por &#8220;IA&#8221; e o paper fica desconfortavelmente atual.</p><p>A escada que o estudo documentou (coletar, depois proteger, depois padronizar, cada camada multiplicando a anterior) ganhou um degrau novo: treinar e ativar modelos sobre dados propriet&#225;rios. E o padr&#227;o de migra&#231;&#227;o de valor do ponto 07 est&#225; se repetindo na nossa frente. Em 2024&#8211;2025, &#8220;ter IA&#8221; diferenciava; est&#225; virando aposta de mesa na mesma velocidade em que coletar dados virou nos anos 2000, o mesmo movimento de comoditiza&#231;&#227;o que descrevi em <a href="https://iaaplicada.substack.com/p/o-fim-do-codigo-como-ativo-o-novo">O fim do c&#243;digo como ativo</a>, agora uma camada acima. Quando todo concorrente tiver acesso aos mesmos modelos de fronteira (e j&#225; tem), o pr&#234;mio migra para o &#250;nico insumo que n&#227;o se compra por API: o ativo de dados propriet&#225;rio, coletado, protegido e padronizado ao longo de anos. E o degrau seguinte j&#225; est&#225; vis&#237;vel: aplica&#231;&#245;es desenhadas para <a href="https://iaaplicada.substack.com/p/self-improvement-architecture-aplicacoes-que-aprendem-com-uso-real">aprender com o pr&#243;prio uso</a>, que transformam a opera&#231;&#227;o di&#225;ria em coletora cont&#237;nua desse ativo.</p><p>O que o paper acrescenta &#224; conversa de 2026 &#233; a estrutura temporal da tese: o pr&#234;mio chega antes do lucro, o lucro demora cinco anos, e quem pula a funda&#231;&#227;o n&#227;o recupera depois. Empresas que hoje tentam &#8220;comprar IA&#8221; sem nunca terem constru&#237;do a base de dados s&#227;o as empresas de padroniza&#231;&#227;o-sem-coleta do estudo: investimento de cima sem o degrau de baixo.</p><p>A pergunta que fica para o seu planejamento &#233; a mesma de 1996: que dados s&#243; a sua opera&#231;&#227;o gera, e o que voc&#234; est&#225; fazendo, hoje, para que eles existam, organizados, protegidos e utiliz&#225;veis, em 2031?</p><div><hr></div><p><strong>Refer&#234;ncia:</strong> Saunders, A. &amp; Tambe, P. (2015). <em>Data Assets and Industry Competition: Evidence from 10-K Filings.</em> Draft de setembro/2015, SSRN 2537089. Coeficientes citados: tabelas 3&#8211;16 do draft. Signific&#226;ncia: os valores citados como significativos t&#234;m p&lt;0,05 ou p&lt;0,01.</p>]]></content:encoded></item><item><title><![CDATA[Por onde se aprofundar em IA: matemática, estatística e ML]]></title><description><![CDATA[O outro extremo do "por onde come&#231;ar com IA": matem&#225;tica, estat&#237;stica e machine learning em 54 notebooks abertos, pra quem escreve c&#243;digo.]]></description><link>https://www.guilhermefavaron.com.br/p/por-onde-se-aprofundar-em-ia</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/por-onde-se-aprofundar-em-ia</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Thu, 11 Jun 2026 14:10:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!pWbN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Oi, bom t&#234;-los de novo por aqui.</p><p>H&#225; algumas semanas eu publiquei o <a href="https://www.guilhermefavaron.com.br/p/por-onde-comecar-com-ia">Por onde eu come&#231;o?</a>, contando da <a href="https://academia-ia.mindapps.ai/">academia-ia</a>, a trilha gratuita de 30 dias pra quem sempre se prometeu entender IA e nunca passou do m&#243;dulo tr&#234;s de curso nenhum. No meio daquele texto, quase como nota de rodap&#233;, eu deixei um aviso:</p><p><em>&#8220;Se voc&#234; &#233; engenheiro de ML procurando matem&#225;tica de transformer, esse curso n&#227;o &#233; pra voc&#234;.&#8221;</em></p><p>Eu escrevi aquela frase pra fechar uma porta. Hoje eu volto pra abrir a outra. Porque a pergunta do jantar de fam&#237;lia tem uma irm&#227; menos famosa, que chega por canais diferentes e com outro sotaque. Esse texto &#233; pra ela.</p><h2>A outra cena</h2><p>Ela n&#227;o aparece no jantar de fam&#237;lia. Aparece no Slack do trabalho, no grupo de devs, na conversa que sobra depois da daily. E quase sempre vem numa vers&#227;o de:</p><p><em>&#8220;Cara, eu uso essas APIs todo dia. J&#225; fiz fine-tuning seguindo tutorial, j&#225; subi RAG em produ&#231;&#227;o. Mas se voc&#234; me perguntar por que o Adam converge onde o SGD patina, eu n&#227;o sei. Eu copio. A IA faz pra mim&#8230; Por onde eu me aprofundo?&#8221;</em></p><p>Quem pergunta isso n&#227;o &#233; iniciante. &#201; dev, &#233; engenheiro de dados, &#233; cientista de dados formado em bootcamp, &#233; o Pleno que virou &#8220;a pessoa de IA&#8221; da empresa por ter chegado primeiro. Essa pessoa constr&#243;i coisas que funcionam. E &#233; exatamente por isso que a sensa&#231;&#227;o incomoda tanto: o ch&#227;o funciona, mas soa oco quando voc&#234; bate.</p><p>Os sintomas s&#227;o sempre os mesmos. Voc&#234; chama <code>model.fit()</code> e n&#227;o sabe dizer o que acontece entre a primeira &#233;poca e a segunda. Voc&#234; ajusta <code>learning_rate</code> por supersti&#231;&#227;o, n&#227;o por diagn&#243;stico. Voc&#234; abre um paper, atravessa o abstract com confian&#231;a e afunda na equa&#231;&#227;o dois. Voc&#234; sabe <em>que</em> normalizar os dados melhora o treino, mas n&#227;o <em>por qu&#234;</em>, ent&#227;o quando n&#227;o melhora voc&#234; n&#227;o tem pra onde ir. E a cada tutorial novo a sensa&#231;&#227;o se repete: voc&#234; terminou, funcionou, e voc&#234; sabe um pouquinho menos do que parece.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pWbN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pWbN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pWbN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6df3b7a6-a4c1-4c76-95b1-024facf42249_1920x1080.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:82436,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201597496?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6df3b7a6-a4c1-4c76-95b1-024facf42249_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pWbN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!pWbN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe86d3057-f2ac-4f3e-a402-84522132ed11_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">O ch&#227;o que soa oco</figcaption></figure></div><p>Isso tem nome, e voc&#234; provavelmente j&#225; se ouviu dizendo: tutorial hell. O inferno n&#227;o &#233; a falta de material. &#201; o excesso de material que te ensina a <em>fazer</em> sem nunca te cobrar <em>entender</em>.</p><h2>O que existe l&#225; fora, de novo, n&#227;o resolve</h2><p>Quando essa pergunta come&#231;ou a chegar, eu fiz o mesmo exerc&#237;cio do texto anterior: sentei pra recomendar um caminho e percebi que n&#227;o tinha um inteiro pra recomendar.</p><p>Os cursos de &#8220;ML na pr&#225;tica&#8221; ensinam receita de framework. Voc&#234; sai sabendo qual fun&#231;&#227;o chamar e em que ordem, que &#233; exatamente o conhecimento que evapora a cada major release. A matem&#225;tica, quando aparece, vem num slide de 40 segundos com a promessa de que &#8220;voc&#234; n&#227;o precisa entender isso agora&#8221;. Spoiler: o agora chega.</p><p>Os livros bons existem e s&#227;o &#243;timos. Mas livro de matem&#225;tica &#233; passivo. Voc&#234; l&#234; a deriva&#231;&#227;o do gradiente, acena com a cabe&#231;a, vira a p&#225;gina, e tr&#234;s dias depois n&#227;o reconstr&#243;i nem a primeira linha. Entender de verdade exige fazer, errar, plotar, comparar com a implementa&#231;&#227;o de refer&#234;ncia. Papel n&#227;o roda c&#243;digo.</p><p>Os papers assumem a base que voc&#234; est&#225; tentando construir. Ler paper sem &#225;lgebra linear e probabilidade s&#243;lidas &#233; decifrar um idioma com dicion&#225;rio rasgado. D&#225; pra fingir por um tempo, todo mundo finge por um tempo, mas fingir cansa.</p><p>E tem o filtro que quase ningu&#233;m nomeia: quase nada disso existe em portugu&#234;s. O material de profundidade real est&#225; em ingl&#234;s, o que cria um ped&#225;gio duplo. A pessoa paga pra entender o conceito dif&#237;cil e paga de novo pra entender a l&#237;ngua em que o conceito dif&#237;cil foi escrito. Tem muita gente boa ficando na superf&#237;cie n&#227;o por falta de capacidade, mas por excesso de ped&#225;gio.</p><p>A conclus&#227;o foi a mesma da outra vez, com o sinal trocado: ningu&#233;m precisa de mais um tutorial de &#8220;construa seu chatbot em 15 minutos&#8221;. Precisa de <strong>um caminho</strong>. S&#243; que dessa vez um caminho longo, com equa&#231;&#227;o, com c&#243;digo e com exerc&#237;cio que n&#227;o aceita cola.</p><h2>O que eu constru&#237;</h2><p>Chama <strong>math-statistics-for-ai</strong>. &#201; um reposit&#243;rio p&#250;blico no GitHub: <a href="https://github.com/guifav/math-statistics-for-ai">github.com/guifav/math-statistics-for-ai</a>.</p><p>S&#227;o <strong>54 notebooks Jupyter execut&#225;veis</strong>, somando <strong>2.596 c&#233;lulas</strong>, sendo 1.672 de texto e 924 de c&#243;digo. Tudo em portugu&#234;s. Licen&#231;a MIT, que &#233; o jeito jur&#237;dico de dizer &#8220;isso &#233; seu tamb&#233;m&#8221;.</p><p>Cada notebook &#233; uma aula completa: cabe&#231;alho com pr&#233;-requisitos mapeados, tempo estimado, fio narrativo expl&#237;cito, teoria intercalada com c&#243;digo que roda, exerc&#237;cios marcados como <code>TAREFA DO ALUNO</code> e solu&#231;&#245;es execut&#225;veis em c&#233;lulas com tag <code>solution</code>, separadas de prop&#243;sito pra voc&#234; suar antes de espiar. No final, se&#231;&#227;o de erros comuns e conex&#245;es com o que vem depois. Tem at&#233; validador autom&#225;tico rodando em CI, que checa sintaxe, refer&#234;ncias internas e metadados de cada notebook a cada push, porque material de estudo com c&#233;lula quebrada &#233; desrespeito com quem estuda.</p><p>A filosofia &#233; uma s&#243;: nenhum conceito entra sem os tr&#234;s estados. A equa&#231;&#227;o, o c&#243;digo e o caso de uso. Se voc&#234; s&#243; viu a equa&#231;&#227;o, voc&#234; n&#227;o aprendeu. Se voc&#234; s&#243; rodou o c&#243;digo, tamb&#233;m n&#227;o.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!95Cg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!95Cg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!95Cg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9230a650-f36e-4e8d-bad6-3bc2d59abf3e_1920x1080.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:65921,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201597496?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9230a650-f36e-4e8d-bad6-3bc2d59abf3e_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!95Cg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!95Cg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd4cfff-0480-4aee-8f56-23415f74757d_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Os tr&#234;s estados de um conceito</figcaption></figure></div><p></p><h2>O caminho</h2><p>S&#227;o sete m&#243;dulos, do zero matem&#225;tico at&#233; o modelo rodando em produ&#231;&#227;o. N&#227;o precisa percorrer linearmente, cada notebook declara seus pr&#233;-requisitos, mas a ordem existe por um motivo.</p><p><strong>M&#243;dulo 00, Matem&#225;tica, 8 notebooks.</strong> A funda&#231;&#227;o que todo mundo pula e depois paga juros. Come&#231;a em pr&#233;-c&#225;lculo, fun&#231;&#245;es, exponenciais e logaritmos, exatamente as que viram fun&#231;&#245;es de ativa&#231;&#227;o. Passa por &#225;lgebra linear em duas camadas: vetores, produto interno, normas e similaridade, que &#233; literalmente a matem&#225;tica por tr&#225;s de embeddings e busca vetorial; depois matrizes, transforma&#231;&#245;es, autovalores, PCA e SVD. Segue pra c&#225;lculo: derivadas, gradientes, Jacobiano, Hessiano, at&#233; voc&#234; implementar backpropagation entendendo cada passo; depois integrais, s&#233;ries, Monte Carlo e a raz&#227;o de a &#225;rea sob a curva ROC se chamar &#225;rea. Fecha com probabilidade em dois n&#237;veis, de Bayes e distribui&#231;&#245;es at&#233; MLE, infer&#234;ncia bayesiana e GMM, e com otimiza&#231;&#227;o: convexidade, SGD, Momentum, RMSprop, Adam e por que regulariza&#231;&#227;o funciona em vez de apenas &#8220;usar L2&#8221;. Pra calibrar expectativa: s&#243; o notebook de derivadas estima 10 a 12 horas de estudo. E vale cada uma, porque &#233; ali que <code>loss.backward()</code> deixa de ser m&#225;gica.</p><p><strong>M&#243;dulo 01, Estat&#237;stica, 5 notebooks.</strong> O que separa quem treina modelo de quem confia em modelo. Descritiva e visualiza&#231;&#227;o, infer&#234;ncia com intervalos de confian&#231;a, testes de hip&#243;tese, ANOVA, bootstrap e o problema dos m&#250;ltiplos testes, que &#233; onde a maioria dos dashboards mente. Estat&#237;stica bayesiana de verdade, priors, posteriors, e a revela&#231;&#227;o de que MAP e regulariza&#231;&#227;o s&#227;o a mesma ideia com roupas diferentes. Regress&#227;o como estat&#237;stico v&#234;, com diagn&#243;stico de res&#237;duos e multicolinearidade. E design de experimentos: poder estat&#237;stico, A/B testing, causalidade, DAGs e valida&#231;&#227;o temporal. Se voc&#234; j&#225; lan&#231;ou uma feature baseada num teste A/B mal desenhado, esse m&#243;dulo vai doer de um jeito produtivo.</p><p><strong>M&#243;dulo 02, Data Science, 4 notebooks.</strong> O menos glamouroso e o que mais paga aluguel. NumPy e Pandas a s&#233;rio, EDA com framework em vez de improviso, missing values, outliers e leakage, que &#233; o bug silencioso que infla m&#233;trica e destr&#243;i credibilidade. SQL com joins e window functions, APIs com pagina&#231;&#227;o e retry, e acesso a dados de gente grande: PostgreSQL, ORM, Parquet, feature stores e seguran&#231;a.</p><p><strong>M&#243;dulo 03, Machine Learning, 7 notebooks.</strong> Os cl&#225;ssicos, sem pressa. Classifica&#231;&#227;o completa com as m&#233;tricas que importam e quando cada uma mente, regress&#227;o com regulariza&#231;&#227;o, &#225;rvores e ensembles, bagging, Random Forest e boosting com seus trade-offs, SVM e o kernel trick, clustering com K-Means, DBSCAN e GMM, redu&#231;&#227;o de dimensionalidade com PCA, t-SNE e UMAP e como n&#227;o se enganar com elas. E um tutorial from-scratch que percorre o fluxo inteiro, dos dados crus &#224; avalia&#231;&#227;o. Pular os cl&#225;ssicos pra ir direto pra LLM &#233; construir o d&#233;cimo andar primeiro.</p><p><strong>M&#243;dulo 04, Deep Learning, 6 notebooks.</strong> Fundamentos de redes neurais, arquiteturas, e treinamento na vida real, o que fazer quando o loss n&#227;o desce, que &#233; o dia a dia que nenhum tutorial mostra. Transfer learning, e dois notebooks que quase nunca aparecem em curso: acelera&#231;&#227;o de hardware e otimiza&#231;&#227;o de Python. &#201; a parte em que entender a m&#225;quina vira dinheiro, seu ou da empresa.</p><p><strong>M&#243;dulo 05, Dom&#237;nios Aplicados, 20 notebooks em 4 subm&#243;dulos.</strong> Vis&#227;o computacional: CNNs por dentro, convolu&#231;&#227;o, pooling e receptive field, classifica&#231;&#227;o com augmentation e interpretabilidade, detec&#231;&#227;o com IoU, NMS, YOLO e R-CNN, segmenta&#231;&#227;o com U-Net, e Vision Transformers at&#233; modelos vision-language. NLP, a trilha completa: do TF-IDF e n-grams a Word2Vec, RNNs e LSTMs, self-attention, BERT e fine-tuning, LLMs com scaling laws, prompting e alinhamento, e fechando com RAG, um dos maiores notebooks do reposit&#243;rio, 83 c&#233;lulas cobrindo chunking, embeddings, busca vetorial, retrieval e avalia&#231;&#227;o. Se voc&#234; j&#225; subiu RAG copiando arquitetura de blog post, esse notebook explica o sistema que voc&#234; opera. IA generativa: GANs, VAEs com ELBO e espa&#231;o latente, diffusion models em 94 c&#233;lulas, fine-tuning com LoRA e adapters, e multimodal. E s&#233;ries temporais: estacionariedade, ACF e PACF, ARIMA e Prophet, ML com lag features e valida&#231;&#227;o temporal, e deep learning sequencial at&#233; Transformers.</p><p><strong>M&#243;dulo 06, MLOps, 4 notebooks.</strong> Porque modelo que n&#227;o chega em produ&#231;&#227;o &#233; PDF caro. Deploy com API, contratos e versionamento, MLflow pra parar de rastrear experimento em planilha, monitoramento e drift com PSI e KS test, e pipelines com CI/CD, DVC e feature stores.</p><h2>Como estudar isso sem se enganar</h2><p>Aqui vai a parte honesta, e ela &#233; o espelho invertido do texto anterior.</p><p>A academia-ia cabe em 10 minutos por dia porque foi desenhada pra caber. Esse reposit&#243;rio n&#227;o cabe. Isso aqui &#233; material de meses, na escala de centenas de horas se voc&#234; fizer direito. N&#227;o existe vers&#227;o comprimida de profundidade, e qualquer pessoa que te vender uma est&#225; te vendendo a sensa&#231;&#227;o, n&#227;o a coisa.</p><p>O que existe &#233; m&#233;todo:</p><ul><li><p><strong>Rode tudo.</strong> Notebook n&#227;o &#233; PDF. Se voc&#234; leu sem executar, voc&#234; n&#227;o passou por ali.</p></li><li><p><strong>Quebre o c&#243;digo de prop&#243;sito.</strong> Mude o hiperpar&#226;metro pro valor errado, tire a normaliza&#231;&#227;o, veja o treino degradar. Intui&#231;&#227;o se constr&#243;i no contraste.</p></li><li><p><strong>Fa&#231;a a </strong><code>TAREFA DO ALUNO</code><strong> antes de abrir a solu&#231;&#227;o.</strong> As solu&#231;&#245;es est&#227;o l&#225;, execut&#225;veis, marcadas com tag. A dist&#226;ncia entre olhar a resposta e produzir a resposta &#233; exatamente a dist&#226;ncia que voc&#234; est&#225; tentando atravessar.</p></li><li><p><strong>Use os pr&#233;-requisitos como grafo, n&#227;o como burocracia.</strong> Cada notebook declara o que assume. Se a equa&#231;&#227;o dois te afundar, o cabe&#231;alho diz pra onde voltar.</p></li><li><p><strong>N&#227;o estude em ordem de hype.</strong> A vontade de pular pro notebook de LLM &#233; compreens&#237;vel. Mas ele rende o dobro pra quem chegou nele por dentro do caminho.</p></li></ul><p>Setup em quatro linhas: clone, venv, <code>pip install -r requirements.txt</code> (ou <code>requirements-gpu.txt</code> se voc&#234; tem CUDA 12.1), <code>jupyter lab notebooks</code>. Tem valida&#231;&#227;o leve pra quem quer checar a integridade sem instalar o stack cient&#237;fico inteiro.</p><h2>Por que aberto, e por que em portugu&#234;s</h2><p>Quem leu o texto anterior j&#225; conhece a frase da minha m&#227;e, <em>fa&#231;a o seu melhor sem esperar nada em troca</em>, ent&#227;o n&#227;o vou repetir o argumento inteiro. Vou s&#243; estender ele um degrau.</p><p>L&#225; eu escrevi que IA n&#227;o pode ser privil&#233;gio. Profundidade tamb&#233;m n&#227;o. Existe uma vers&#227;o dessa exclus&#227;o que &#233; mais sutil que o pre&#231;o do curso: &#233; a exclus&#227;o por idioma e por fragmenta&#231;&#227;o. O conhecimento de base est&#225; dispon&#237;vel, tecnicamente, mas espalhado em ingl&#234;s por dezenas de fontes que n&#227;o conversam entre si. Juntar tudo, ordenar, traduzir pra nossa l&#237;ngua e abrir o c&#243;digo &#233; o tipo de coisa que precisava existir e n&#227;o existia.</p><p>Ent&#227;o &#233; MIT. Sem cadastro, sem paywall, sem vers&#227;o premium. E como &#233; um reposit&#243;rio e n&#227;o um produto, ele tem uma vantagem que curso nenhum tem: aceita pull request. Achou erro, abre issue. Quer melhorar um notebook ou propor um novo, o <code>CONTRIBUTING.md</code> explica o rito e o validador garante que nada entre quebrado. Material de estudo aberto fica melhor do jeito que software aberto fica melhor: em p&#250;blico, um commit por vez.</p><h2>Os dois extremos da mesma pergunta</h2><p>Agora as duas portas est&#227;o abertas.</p><p>Se voc&#234;, ou algu&#233;m que voc&#234; conhece, est&#225; no ponto de partida, sabe que IA importa mas n&#227;o sabe nem o que perguntar, o caminho &#233; a <a href="https://academia-ia.mindapps.ai/">academia-ia</a>: 30 dias, 10 minutos por dia, do zero ao uso consciente. O texto sobre ela est&#225; <a href="https://www.guilhermefavaron.com.br/p/por-onde-comecar-com-ia">aqui</a>.</p><p>Se voc&#234; &#233; a pessoa t&#233;cnica que j&#225; constr&#243;i com IA mas decidiu que cansou de copiar, o caminho &#233; o <a href="https://github.com/guifav/math-statistics-for-ai">math-statistics-for-ai</a>: 54 notebooks, da inclina&#231;&#227;o da reta ao drift em produ&#231;&#227;o, no seu ritmo, pra sempre.</p><p>&#201; a mesma pergunta nos dois casos. Por onde eu come&#231;o? S&#243; muda a profundidade da resposta que voc&#234; est&#225; pronto pra receber.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JP7z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JP7z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JP7z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f48bfa9a-8488-4174-8c87-01063ff1c4b4_1920x1080.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:73757,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/201597496?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bfa9a-8488-4174-8c87-01063ff1c4b4_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JP7z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!JP7z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3d251fa-be2c-4975-8ce9-d4b663463f76_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Duas travessias, a mesma pergunta.</figcaption></figure></div><h2>Bora?</h2><p>O reposit&#243;rio est&#225; no ar: <a href="https://github.com/guifav/math-statistics-for-ai">github.com/guifav/math-statistics-for-ai</a>.</p><p>Clona, abre o m&#243;dulo 00 e roda a primeira c&#233;lula hoje. N&#227;o o m&#243;dulo que parece mais interessante, o 00 mesmo, e seja honesto consigo na avalia&#231;&#227;o: se for f&#225;cil, voc&#234; acelera sem perder nada; se n&#227;o for, voc&#234; acabou de descobrir onde o ch&#227;o estava oco.</p><blockquote><p>Estrela no reposit&#243;rio &#233; vaidade, eu prefiro issue. Se voc&#234; travar em algum notebook, achar um erro ou tiver uma sugest&#227;o, abre uma issue que eu leio, do mesmo jeito que leio as respostas desta newsletter.</p></blockquote><p>E se voc&#234; conhece algu&#233;m preso no tutorial hell, e voc&#234; conhece, todo time tem pelo menos um, manda esse texto. A ponte pro outro lado continua aberta, s&#243; que dessa vez ela &#233; mais longa, e a vista l&#225; de cima compensa cada hora da travessia.</p><p>Obrigado por estar por aqui, como sempre.</p><p>Abs,</p><p>Guilherme</p><div><hr></div><p><em>PS: se voc&#234; chegou at&#233; aqui e percebeu que esse texto n&#227;o &#233; pra voc&#234;, que as equa&#231;&#245;es te assustam e voc&#234; s&#243; queria entender essa tal de IA, sem drama nenhum: o texto pra voc&#234; &#233; <a href="https://www.guilhermefavaron.com.br/p/por-onde-comecar-com-ia">o anterior</a>, e a academia-ia te espera com 10 minutos por dia. As duas portas levam pro mesmo lugar.</em></p>]]></content:encoded></item><item><title><![CDATA[Por onde eu começo?]]></title><description><![CDATA[A pergunta que mais me fazem em jantar de fam&#237;lia, e o que eu finalmente fiz com ela.]]></description><link>https://www.guilhermefavaron.com.br/p/por-onde-comecar-com-ia</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/por-onde-comecar-com-ia</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Thu, 14 May 2026 01:52:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ahAC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Oi, bom te ver de novo por aqui.</p><p>Hoje eu quero te contar de uma coisa que vinha rascunhando h&#225; meses e que finalmente saiu do Notion essa semana. Mas antes de mostrar o que &#233;, preciso te contar a cena que fez isso existir, porque sem ela o resto n&#227;o faz sentido.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ahAC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ahAC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 424w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 848w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 1272w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ahAC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png" width="1456" height="776" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b035b5d-8a81-4c40-b1ed-42d682af6c6b_1463x780.jpeg&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:776,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:120001,&quot;alt&quot;:&quot;academia de ia&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/197617496?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b035b5d-8a81-4c40-b1ed-42d682af6c6b_1463x780.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="academia de ia" title="academia de ia" srcset="https://substackcdn.com/image/fetch/$s_!ahAC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 424w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 848w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 1272w, https://substackcdn.com/image/fetch/$s_!ahAC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a796d94-543b-4c39-8aec-1d77dd2cdaad_1463x780.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">academia-ia.mindapps.ai</figcaption></figure></div><h2>A cena</h2><p>&#201; sempre quase igual. Um jantar de fam&#237;lia, um caf&#233; com um amigo de um amigo, uma DM no LinkedIn no domingo de noite. O contexto muda, a pessoa muda, mas a frase chega numa vers&#227;o de:</p><p><em>&#8220;Gui, eu sei que IA &#233; importante. Mas eu n&#227;o entendo nada disso. Por onde eu come&#231;o?&#8221;</em></p><p>E a&#237; vem o sil&#234;ncio constrangido, porque a pessoa do outro lado j&#225; se ouviu pedindo a mesma coisa pra duas ou tr&#234;s pessoas antes, e nenhuma delas conseguiu responder de um jeito que cabia. A resposta padr&#227;o &#233; &#8220;ah, faz um curso&#8221;, e a pr&#243;xima frase &#233; sempre uma vers&#227;o de &#8220;fiz, mas larguei no m&#243;dulo tr&#234;s&#8221;.</p><p>Eu passei muito tempo respondendo essa pergunta de improviso. Mandando link de v&#237;deo, recomendando um artigo, sugerindo o livro X ou o canal Y. E percebi uma coisa desconfort&#225;vel: cada vez que eu respondia, eu estava tentando empacotar pra essa pessoa um caminho que eu mesmo nunca tinha desenhado direito. Eu sabia o que tinha funcionado pra mim, mas eu sou engenheiro, tive paci&#234;ncia pra coisas que ningu&#233;m tem paci&#234;ncia, e o caminho que serviu pra mim n&#227;o serve pra um diretor financeiro com tr&#234;s filhos e duas reuni&#245;es antes do almo&#231;o.</p><h2>O que existe l&#225; fora n&#227;o resolve</h2><p>Toda vez que eu sentava pra recomendar alguma coisa, batia o problema:</p><p>Os cursos pagos s&#227;o caros e longos. Quem t&#225; come&#231;ando n&#227;o consegue se convencer de gastar dois mil reais antes de saber se IA &#233; mesmo pra ele. E os de cem horas viram cemit&#233;rio de aba aberta.</p><p>Os cursos gratuitos no YouTube s&#227;o bons, mas est&#227;o soltos. Cada um come&#231;a do zero, ningu&#233;m te leva da m&#227;o. Quem nunca tocou no assunto n&#227;o sabe o que assistir primeiro nem o que pular.</p><p>Os artigos s&#233;rios s&#227;o t&#233;cnicos demais. Falam de transformer, de embedding, de RAG. Boa parte da pessoa que me pergunta n&#227;o precisa disso. Ela precisa saber se confia ou n&#227;o confia, se vai economizar tempo ou n&#227;o, e onde encaixar no dia de quinta-feira.</p><p>E os conte&#250;dos populares s&#227;o vazios. Hype, hype, hype, &#8220;vai mudar tudo&#8221;, &#8220;10 prompts que v&#227;o revolucionar a sua vida&#8221;. A pessoa sai sem aprender nada, e ainda fica achando que tem alguma coisa errada com ela por n&#227;o estar empolgada.</p><p>A conclus&#227;o, depois de meses ouvindo a mesma pergunta, foi simples: ningu&#233;m precisa de mais um curso de doutorado em transformer. Precisa de <strong>um caminho</strong>. Pequeno, di&#225;rio, com come&#231;o, meio e fim.</p><h2>O que eu constru&#237;</h2><p>Chama <strong>academia-ia</strong>. &#201; uma trilha de 30 dias.</p><p>Cada dia &#233; uma aula de 10 a 20 minutos. Voc&#234; abre, l&#234;, assiste, faz um exerc&#237;cio pequeno, fecha. No dia seguinte tem outra. N&#227;o tem fila, n&#227;o tem turma, n&#227;o tem prazo. Voc&#234; come&#231;a quando quiser, e se atrasar dois dias o programa te espera.</p><p>No fim dos 30 dias voc&#234; n&#227;o vai ser pesquisador da OpenAI. Mas vai entender:</p><ul><li><p>o que &#233; IA generativa de verdade, sem a mitologia da imprensa</p></li><li><p>como escrever prompts que funcionam, e por que os seus n&#227;o funcionam hoje</p></li><li><p>onde encaixar IA nas coisas que voc&#234; j&#225; faz: email, decis&#227;o, an&#225;lise, pesquisa, cria&#231;&#227;o</p></li><li><p>quando confiar e quando duvidar, como detectar alucina&#231;&#227;o antes que ela te custe credibilidade</p></li><li><p>e o que vem depois disso: agentes, automa&#231;&#227;o, fluxos que rodam sozinhos</p></li></ul><p>&#201; pra quem se sente atr&#225;s. O gestor que sentiu o ch&#227;o fugir nos &#250;ltimos doze meses. O profissional que abre o ChatGPT todo dia mas tem a impress&#227;o de t&#225; usando 5% do que d&#225;. O empreendedor querendo entender onde IA encosta no neg&#243;cio dele de verdade, e n&#227;o em deck de palestra. O curioso que sempre adiou isso pra &#8220;quando tiver tempo&#8221;.</p><p>Se voc&#234; &#233; engenheiro de ML procurando matem&#225;tica de transformer, esse curso n&#227;o &#233; pra voc&#234;. Mas &#233; prov&#225;vel que voc&#234; ou&#231;a as mesmas perguntas que eu ou&#231;o.</p><h2>Por que 10 a 20 minutos por dia</h2><p>Porque eu sei como voc&#234; &#233;. E sei porque eu sou igual.</p><p>Voc&#234; se inscreve num curso de doze horas com a melhor das inten&#231;&#245;es. Abre o primeiro m&#243;dulo num s&#225;bado de manh&#227;, faz duas horas, sai pra almo&#231;ar achando que voltou a vida acad&#234;mica. No domingo perde o segundo m&#243;dulo porque a fam&#237;lia apareceu. Na segunda come&#231;a o terceiro, mas tem uma reuni&#227;o. E quando voc&#234; v&#234;, passou um m&#234;s, a aba do navegador continua aberta na se&#231;&#227;o 4, e voc&#234; j&#225; n&#227;o lembra mais o que tinha no 3.</p><p>Dez minutos por dia, por outro lado, cabe. Cabe no caf&#233; da manh&#227;, cabe entre uma reuni&#227;o e outra, cabe no Uber. Disciplina pequena entrega resultado grande, e isso eu aprendi n&#227;o num livro de produtividade mas construindo coisa por aqui, um pequeno commit por vez, durante anos.</p><p>Trinta dias tamb&#233;m tem uma gra&#231;a que eu s&#243; fui notar depois: &#233; mais ou menos o tempo que um h&#225;bito leva pra virar segunda natureza. Se voc&#234; for honesto com os 30 dias, no Dia 30 IA n&#227;o vai mais ser &#8220;aquela coisa que eu preciso aprender&#8221;. Vai ser uma ferramenta que voc&#234; abre sem pensar, do mesmo jeito que voc&#234; abre Google ou WhatsApp.</p><h2>Por que de gra&#231;a</h2><p>Essa &#233; a parte que mais incomodou algumas pessoas pr&#243;ximas quando eu contei.</p><p>&#8220;<em>Mas Gui, voc&#234; t&#225; deixando dinheiro na mesa.</em>&#8221; Talvez esteja. Mas tem tr&#234;s coisas que valem mais do que esse dinheiro.</p><p>A primeira &#233; que eu acredito, e acredito do jeito que d&#243;i um pouquinho, que IA n&#227;o pode ser privil&#233;gio. A janela pra entrar nessa onda &#233; estreita. Quem ficar de fora agora vai ficar de fora por uma d&#233;cada, e quando voltar a olhar a ponte j&#225; vai estar do outro lado. Eu n&#227;o quero isso pra ningu&#233;m que tenha vontade de aprender e que esteja sendo barrado s&#243; por pre&#231;o. Cobrar duzentos reais por isso ia filtrar exatamente as pessoas que mais precisam.</p><p>A segunda &#233; que eu queria fazer alguma coisa de anivers&#225;rio que n&#227;o fosse s&#243; comer bolo. Construir uma coisa e deixar de presente no mundo me pareceu mais bonito do que o post no Instagram com a frase motivacional de &#8220;novo ciclo".</p><p>A terceira, e essa &#233; a de verdade, &#233; uma frase da minha m&#227;e que eu cresci ouvindo: <em>fa&#231;a o seu melhor sem esperar nada em troca</em>. Ela tava certa, e levei bastante tempo pra entender. Cobrar virou quase um reflexo no mundo de startup, e &#224;s vezes a gente se esquece de que tem coisa que voc&#234; faz simplesmente porque &#233; a coisa certa de fazer. Esse curso, no momento da minha vida em que eu t&#244;, &#233; uma dessas.</p><p>Sem cadastro de cart&#227;o. Sem upsell. Sem &#8220;premium&#8221; escondido atr&#225;s de paywall. &#201; o curso inteiro, pra sempre, na unha.</p><h2>Bora?</h2><p>A academia t&#225; no ar em <a href="http://academia-ia.mindapps.ai/">academia-ia.mindapps.ai</a>.</p><p>Se voc&#234; &#233; a pessoa que sempre se prometeu &#8220;<em>esse m&#234;s eu come&#231;o a entender IA pra valer</em>&#8221;, esse m&#234;s &#233; esse m&#234;s. Voc&#234; se inscreve, recebe o Dia 1 no email, e come&#231;a amanh&#227; de manh&#227;. Se travar, me responde por aqui mesmo, eu leio. Eu fiz esse curso nos momentos de calmaria nos cuidados com meu pai acamado. Ent&#227;o, se tiver algum bug, s&#243; responder esse email que corrijo.</p><p>E se voc&#234; conhece algu&#233;m que t&#225; preso nesse limbo de &#8220;<em>sei que &#233; importante mas n&#227;o sei por onde</em>&#8221; e provavelmente conhece, todo mundo conhece pelo menos uma pessoa&#8230; compartilha esse texto com ela. Esse m&#234;s tamb&#233;m &#233; dela.</p><p>Obrigado por estar por aqui, como sempre.</p><p>Abs, </p><p>Guilherme</p><div><hr></div><p><em>PS: hoje tamb&#233;m &#233; meu anivers&#225;rio. Construir essa coisa e abrir de gra&#231;a foi o jeito que eu encontrei de marcar a data. Se quiser me dar um presente, manda pra algu&#233;m que precisa.</em></p>]]></content:encoded></item><item><title><![CDATA[Como construí um radar de inteligência de mercado, e por que tornei o código opensource]]></title><description><![CDATA[Um pipeline open source que varre fontes p&#250;blicas, extrai pessoas, empresas e deals com LLM, cruza com seu CRM e entrega tudo num dashboard. Os desafios t&#233;cnicos e onde mora a oportunidade.]]></description><link>https://www.guilhermefavaron.com.br/p/radar-inteligencia-mercado-open-source</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/radar-inteligencia-mercado-open-source</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Mon, 27 Apr 2026 02:16:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/14cf0723-9f20-4385-9f76-1a461a2fb10e_1200x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XKwx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XKwx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 424w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 848w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 1272w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XKwx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png" width="1200" height="420" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71adb0a9-b10c-4a1e-9cf2-843aa2a75d58_1200x420.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:420,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:161123,&quot;alt&quot;:&quot;Radar de Intelig&#234;ncia de Mercado&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/195580909?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71adb0a9-b10c-4a1e-9cf2-843aa2a75d58_1200x420.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Radar de Intelig&#234;ncia de Mercado" title="Radar de Intelig&#234;ncia de Mercado" srcset="https://substackcdn.com/image/fetch/$s_!XKwx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 424w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 848w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 1272w, https://substackcdn.com/image/fetch/$s_!XKwx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e44873d-d430-4ede-be88-e333a2f85a4e_1200x420.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Radar de Intelig&#234;ncia de Mercado</figcaption></figure></div><p>Toda equipe comercial e de intelig&#234;ncia de mercado conhece a mesma rotina. Algu&#233;m abre dez abas pela manh&#227;, tenta acompanhar quem est&#225; movimentando capital, quais aquisi&#231;&#245;es foram anunciadas, qual concorrente fez uma rodada, qual diretor saiu de uma empresa relevante. No fim do dia, esse algu&#233;m produz um resumo. Nas semanas seguintes, o resumo vira PowerPoint, vira lead, vira reuni&#227;o, vira receita. Ou n&#227;o vira nada, porque a informa&#231;&#227;o chegou tarde, ou se perdeu no caminho entre planilhas e e-mails.</p><p>Eu fui esse algu&#233;m durante anos. E acabei construindo uma ferramenta para tirar essa rotina das minhas m&#227;os. Chama-se <strong>Market Intelligence Radar (MIR)</strong>. &#201; um pipeline open source que varre fontes de not&#237;cias configur&#225;veis, extrai pessoas, empresas, deals e sinais de mercado usando LLMs, faz match com o CRM, enriquece os contatos via Apollo e SalesQL, e mostra tudo num dashboard. Est&#225; dispon&#237;vel no GitHub em <a href="https://github.com/guifav/market-intelligence-radar">github.com/guifav/market-intelligence-radar</a>, com licen&#231;a MIT, sem telemetria, totalmente self-hosted.</p><p>Este post conta a hist&#243;ria de como ele foi constru&#237;do, os desafios reais que apareceram pelo caminho, a bagagem t&#233;cnica que precisou se acumular para chegar nesse formato, e as oportunidades que vejo para empresas que adotarem uma ferramenta desse tipo.</p><h4>O que ele faz, em sete passos</h4><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K5XV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K5XV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 424w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 848w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 1272w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K5XV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png" width="1200" height="200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/01be0175-5455-4224-be78-13ea3daca852_1200x200.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/42a0de93-24e8-428a-a4c2-57d5b794b286_1200x200.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:18154,&quot;alt&quot;:&quot;Radar de Mercado - o que faz?&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/195580909?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a0de93-24e8-428a-a4c2-57d5b794b286_1200x200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Radar de Mercado - o que faz?" title="Radar de Mercado - o que faz?" srcset="https://substackcdn.com/image/fetch/$s_!K5XV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 424w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 848w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 1272w, https://substackcdn.com/image/fetch/$s_!K5XV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01be0175-5455-4224-be78-13ea3daca852_1200x200.png 1456w" sizes="100vw"></picture><div></div></div></a><figcaption class="image-caption">Radar de Mercado - o que faz?</figcaption></figure></div><p>A opera&#231;&#227;o inteira &#233; uma cadeia de sete etapas. Tudo come&#231;a com a configura&#231;&#227;o de fontes num arquivo JSON simples (TechCrunch, Reuters, qualquer URL que liste artigos). Em seguida, um scraper visita cada fonte, descobre URLs novas, e tenta extrair conte&#250;do limpo, primeiro via Firecrawl, com fallback para requests + BeautifulSoup quando a chave de API premium n&#227;o est&#225; presente.</p><p>O passo cr&#237;tico &#233; o terceiro. Para cada artigo, um LLM (Claude, GPT ou Gemini, escolhido via vari&#225;vel de ambiente) recebe o texto e devolve JSON estruturado: pessoas mencionadas com cargo, empresa e contexto; empresas com setor, categoria e envolvimento em transa&#231;&#245;es; deals do tipo M&amp;A, IPO, fundraising, JVs; sinais como mudan&#231;a regulat&#243;ria, movimento de mercado, risco; e t&#243;picos. A taxonomia inteira fica num JSON configur&#225;vel, ent&#227;o o vocabul&#225;rio se adapta a qualquer setor.</p><p>Tudo &#233; persistido em PostgreSQL. Pessoas e empresas s&#227;o deduplicadas por canonical_id, um hash SHA-256 de nome combinado com empresa, o que permite consolidar men&#231;&#245;es de m&#250;ltiplos artigos num &#250;nico registro de identidade.</p><p>Depois disso, dois fluxos paralelos operam sobre cada pessoa identificada. O matcher cruza o registro com o CRM importado via CSV usando quatro n&#237;veis de score: email exato, nome completo exato, prefixo do nome, e nome combinado com empresa. O enricher chama Apollo e SalesQL em waterfall para buscar email validado, telefone, LinkedIn, foto, dados da organiza&#231;&#227;o. Apenas pessoas relevantes, filtradas por divis&#227;o, ICP e regras de exclus&#227;o, chegam &#224; etapa de enriquecimento, ent&#227;o o consumo de API se mant&#233;m controlado.</p><p>No final, um dashboard Next.js mostra tudo de forma naveg&#225;vel, com filtros por divis&#227;o, busca em texto livre, fluxo de aprova&#231;&#227;o manual de prospects, e exporta&#231;&#227;o para CSV.</p><h4>Arquitetura</h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u1LT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u1LT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 424w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 848w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 1272w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u1LT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png" width="1200" height="480" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d15acbad-cdd1-40fd-bdf4-8b23eae6ed2b_1200x480.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:480,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:39459,&quot;alt&quot;:&quot;Radar de Mercado - Arquitetura&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/195580909?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd15acbad-cdd1-40fd-bdf4-8b23eae6ed2b_1200x480.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Radar de Mercado - Arquitetura" title="Radar de Mercado - Arquitetura" srcset="https://substackcdn.com/image/fetch/$s_!u1LT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 424w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 848w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 1272w, https://substackcdn.com/image/fetch/$s_!u1LT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26fc0898-9d9f-42d7-a9eb-715e7de50bf0_1200x480.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Radar de Mercado - Arquitetura</figcaption></figure></div><p>A arquitetura tem tr&#234;s fluxos paralelos que convergem no PostgreSQL. O fluxo principal de scan vai das not&#237;cias at&#233; o banco, passando por scraper e extractor. O fluxo de matching parte do CSV de contatos do CRM, passa pelo matcher, e atualiza pessoas no banco com a flag de match. O fluxo de enrichment chama APIs externas, traz os dados, e atualiza o registro da pessoa.</p><p>Algumas decis&#245;es merecem coment&#225;rio.</p><p>Separei Python (pipeline) de Next.js (dashboard) atrav&#233;s do PostgreSQL. Daria para fazer tudo em Node ou tudo em Python. Optei por separar porque cada parte tem requisitos diferentes. O backend de extra&#231;&#227;o precisa de paralelismo, controle fino de rate limiting, integra&#231;&#227;o natural com bibliotecas de scraping e parsing. O frontend precisa de SSR, componentes reativos, ergonomia para tabelas com filtros complexos. Cada lado faz o que faz melhor, conversa pelo banco, e n&#227;o precisa ter comunica&#231;&#227;o direta. O efeito colateral positivo: d&#225; pra rodar o pipeline numa VM barata e o dashboard em outra, e ambos escalam de forma independente.</p><p>Usei canonical_id baseado em hash determin&#237;stico em vez de UUID. Quando o LLM extrai a mesma pessoa de dois artigos diferentes, o canonical_id &#233; id&#234;ntico, e a opera&#231;&#227;o de upsert no banco consolida automaticamente. Elimina uma camada inteira de &#8220;tabela de identidades&#8221; que muita gente reinventa.</p><p>Tornei o LLM provider plug&#225;vel. O arquivo mir/llm.py esconde Anthropic, OpenAI e Google atr&#225;s de uma &#250;nica fun&#231;&#227;o extract(prompt, content). Trocar de provider &#233; mudar uma vari&#225;vel de ambiente. Para um projeto que vai viver no dom&#237;nio p&#250;blico, isso reduz fric&#231;&#227;o de ado&#231;&#227;o (o desenvolvedor usa o que j&#225; tem) e aumenta resili&#234;ncia (se um provider tem outage, o outro assume).</p><p>E tornei o enrichment opcional. Apollo e SalesQL s&#227;o pagas. O sistema funciona sem elas, e o status de cada pessoa reflete isso. O estado &#8220;not_found_in_enrichment&#8221; &#233; um n&#243; v&#225;lido no funil. O usu&#225;rio adota gradualmente, conforme budget e maturidade do uso permitem.</p><h4>Os desafios reais de construir isso</h4><p>Construir um sistema desse tipo passa por problemas que nenhum tutorial cobre.</p><p>O primeiro &#233; a qualidade do prompt de extra&#231;&#227;o. LLMs s&#227;o geniais para sumariza&#231;&#227;o, mas inst&#225;veis para extra&#231;&#227;o estruturada com taxonomia r&#237;gida. A primeira vers&#227;o do meu prompt produzia JSON inconsistente, com nomes de setores inventados, capitaliza&#231;&#245;es diferentes em respostas distintas, ocasionais campos faltando. A solu&#231;&#227;o foi for&#231;ar a taxonomia dentro do pr&#243;prio prompt, listando as categorias v&#225;lidas e instruindo o modelo a usar apenas aquelas. Mesmo assim, era preciso p&#243;s-processar a sa&#237;da para normalizar varia&#231;&#245;es. Hoje o prompt tem cerca de 150 linhas e foi iterado dezenas de vezes contra um conjunto de artigos teste para chegar numa extra&#231;&#227;o confi&#225;vel.</p><p>O segundo desafio foi deduplica&#231;&#227;o. Quando o LLM l&#234; um artigo sobre &#8220;Pedro Silva, CEO da TechCorp&#8221; e outro sobre &#8220;Pedro Henrique Silva, CEO da Tech Corp Brasil&#8221;, s&#227;o a mesma pessoa? Constru&#237; tr&#234;s n&#237;veis. O canonical_id pega os casos &#243;bvios. Um normalizador de strings (lowercase, trim, remo&#231;&#227;o de acentos) pega varia&#231;&#245;es de capitaliza&#231;&#227;o. Para os casos lim&#237;trofes, o sistema preserva o registro com o canonical_id original e adiciona varia&#231;&#227;o no array de men&#231;&#245;es, deixando o usu&#225;rio humano decidir se s&#227;o a mesma pessoa.</p><p>O terceiro foi a gest&#227;o de rate limit. Apollo permite cerca de 60 requests por minuto, SalesQL &#233; mais conservador, e o LLM tem seu pr&#243;prio teto. O scanner roda com workers paralelos, e cada worker pode bater no Apollo. Constru&#237; um ThreadSafeIntervalLimiter que serializa as chamadas globalmente, garantindo que mesmo com dez threads, o ritmo total respeita o teto da API. Em duas linhas no console, tudo se mant&#233;m dentro do or&#231;amento.</p><p>O quarto foi o que chamo de ru&#237;do de relev&#226;ncia. A maioria das pessoas mencionadas em artigos n&#227;o interessa para vendas: jornalistas, acad&#234;micos, pol&#237;ticos, atletas citados em compara&#231;&#227;o. Sem filtro, o pipeline gerava centenas de registros irrelevantes por dia. A solu&#231;&#227;o foi construir tr&#234;s camadas de exclus&#227;o: regras hardcoded de profiss&#227;o (jornalista, rep&#243;rter, professor, governador), regras configur&#225;veis por divis&#227;o (cada vertical define seu ICP), e regras de hard exclusion gerenciadas pelo usu&#225;rio (pessoa espec&#237;fica, padr&#227;o de empresa). O resultado &#233; cerca de dez vezes menos registros, com qualidade muito superior.</p><p>O quinto desafio foi o ICP scoring. Quando o sistema identifica uma pessoa, ele precisa decidir se ela &#233; relevante para o neg&#243;cio. Constru&#237; um sistema multidimensional que avalia categoria de opera&#231;&#227;o, setor, pa&#237;s e cargo separadamente, e produz um percentual de match (0 a 100%). O c&#225;lculo &#233; dimensions_matched dividido por dimensions_defined. Cada divis&#227;o pode ter o seu ICP. Esse score guia o usu&#225;rio, que v&#234; primeiro os matches acima de 90%, e descarta o resto.</p><h4>A bagagem necess&#225;ria</h4><p>Olhando para tr&#225;s, percebo que esse projeto sintetiza experi&#234;ncias acumuladas ao longo de anos. Para construir algo parecido, algu&#233;m precisa estar confort&#225;vel em pelo menos quatro frentes t&#233;cnicas, mais uma quinta camada de dom&#237;nio.</p><p><strong>Engenharia backend pragm&#225;tica</strong>. Saber escrever Python que processa volume razo&#225;vel de dados, lidar com concorr&#234;ncia (threading.Lock, ThreadPoolExecutor), entender quando paralelizar e quando serializar, escrever queries SQL eficientes para PostgreSQL, projetar schemas que sobrevivem a mudan&#231;as. M&#227;o calejada com sistemas que rodam todos os dias importa mais do que t&#237;tulo de engenheiro de Big Data.</p><p>Entendimento de <strong>LLMs em ambiente de produ&#231;&#227;o</strong>. Isso vai al&#233;m de saber chamar a API. Inclui escrever prompts robustos, lidar com a aleatoriedade dos modelos, projetar sa&#237;das verific&#225;veis (JSON bem formado), conhecer os limites de cada provider, entender custos por token, gerenciar lat&#234;ncia. Quem nunca colocou um LLM em produ&#231;&#227;o vai gastar tempo aprendendo o que n&#227;o funciona.</p><p><strong>Design de pipelines de dados</strong>. Decidir o que &#233; processo s&#237;ncrono inline (matching numa pessoa que acabou de chegar) e o que vira batch (enrichment em lote, todo final do dia). Identificar pontos de falha, projetar idempot&#234;ncia, tratar duplicatas, gerenciar estado intermedi&#225;rio. Quem trabalhou com ETL ou com integra&#231;&#227;o de sistemas vai reconhecer os padr&#245;es de pronto.</p><p><strong>Frontend moderno</strong>. Next.js 15 com App Router, React 19, Tailwind 4, shadcn/ui. Construir o dashboard com componentes reutiliz&#225;veis, gerenciar estado entre p&#225;ginas com Context, lidar com SSR e RSC apropriadamente, escrever queries que respeitam autentica&#231;&#227;o. Nada ex&#243;tico, mas exige flu&#234;ncia.</p><p>A quinta camada, mais sutil, &#233; <strong>entender o dom&#237;nio</strong>. Constru&#237; o MIR primeiro para um setor espec&#237;fico, e s&#243; depois generalizei. Saber o que &#233; um decision-maker, o que conta como deal, como uma equipe comercial efetivamente trabalha com leads, o que torna um sinal acion&#225;vel. Sem essa camada, o sistema seria tecnicamente correto e operacionalmente in&#250;til.</p><h4>O que empresas podem fazer com isso</h4><p>Existem tr&#234;s caminhos &#243;bvios para uma empresa adotar uma ferramenta desse tipo.</p><p>&#8594; O primeiro &#233; monitoramento de mercado para times comerciais. Algu&#233;m da intelig&#234;ncia comercial configura o MIR com 30 fontes relevantes para o setor, importa os contatos do CRM, e em uma semana tem visibilidade completa sobre quem est&#225; se movimentando, quem fez fundraising, quais empresas est&#227;o entrando em novo mercado, quais executivos mudaram de cargo. O time de SDR usa essa lista priorizada para a&#231;&#245;es de outbound, com timing relevante e contexto rico. O time de account management consegue antecipar mudan&#231;as nos clientes (M&amp;A, troca de C-level) e agir antes do concorrente.</p><p>&#8594; O segundo &#233; gera&#231;&#227;o de conte&#250;do. Editores de newsletters, podcasters, jornalistas econ&#244;micos passam horas por dia coletando not&#237;cias, identificando temas, mapeando narrativas. Uma instala&#231;&#227;o do MIR rodando diariamente entrega um corpus pr&#233;-extra&#237;do de pessoas, deals e sinais, organizados por taxonomia configur&#225;vel. O editor passa direto para a parte criativa, com base de dados estruturada como insumo.</p><p>&#8594; O terceiro &#233; intelig&#234;ncia competitiva. Conselhos de empresas, &#225;reas de M&amp;A, equipes de estrat&#233;gia precisam estar atualizados sobre movimentos de concorrentes e adjac&#234;ncias. Configurar o MIR para monitorar fontes do setor, com filtros por concorrente espec&#237;fico ou tipo de transa&#231;&#227;o, gera relat&#243;rios di&#225;rios ou semanais sem trabalho humano repetitivo. O analista entra na conversa para interpretar, hipotetizar, propor a&#231;&#227;o.</p><p>Para empresas que querem ir al&#233;m de adotar, vejo dois caminhos de extens&#227;o. Empresas que vendem dados podem usar o MIR como base para um produto SaaS multi-tenant, agregando insights de m&#250;ltiplos clientes. A licen&#231;a MIT permite uso comercial sem restri&#231;&#227;o. E empresas que constroem produtos verticais (real estate, healthcare, energia) podem fazer fork do MIR, customizar a taxonomia, plugar fontes espec&#237;ficas do setor, e oferecer uma vers&#227;o whitelabel para seus clientes. O tempo at&#233; o primeiro release cai de meses para semanas.</p><h4>Por que open source</h4><p>Eu poderia ter mantido o c&#243;digo fechado e tentado vender. Optei por publicar com licen&#231;a MIT por tr&#234;s raz&#245;es.</p><p>Projetos como esse s&#243; ficam bons com uso real e diverso. Quanto mais gente experimentar, ajustar para o pr&#243;prio contexto, abrir issues e PRs, mais maduro o sistema fica. Em c&#243;digo fechado, o ritmo de evolu&#231;&#227;o &#233; o ritmo de um time. Em c&#243;digo aberto, &#233; o ritmo da comunidade.</p><div class="callout-block" data-callout="true"><p>O valor real est&#225; na opera&#231;&#227;o. Empresas que adotarem o MIR v&#227;o precisar configurar fontes, treinar a taxonomia, integrar com o CRM, ajustar o prompt para o setor. <strong>Esse trabalho &#233; onde mora a vantagem competitiva</strong>. O c&#243;digo serve como commodity necess&#225;ria para chegar at&#233; l&#225;.</p></div><p>E tudo que eu uso para construir profissionalmente &#233; open source. PostgreSQL, Next.js, Tailwind, Linux, dezenas de bibliotecas Python. Devolver algo &#233; justo.</p><h4>Como come&#231;ar</h4><p>O reposit&#243;rio est&#225; em <a href="https://github.com/guifav/market-intelligence-radar">github.com/guifav/market-intelligence-radar</a>. Setup local roda em um comando: docker compose up -d. O readme tem documenta&#231;&#227;o completa de configura&#231;&#227;o. O modelo padr&#227;o de LLM &#233; Claude, e pode ser trocado para OpenAI ou Google a qualquer momento.</p><p>Se quiser conversar sobre arquitetura, customiza&#231;&#227;o para um setor espec&#237;fico, ou s&#243; dar feedback, abra uma issue no GitHub ou me ache no X ou LinkedIn. PRs s&#227;o bem-vindos.</p>]]></content:encoded></item><item><title><![CDATA[O fim do código como ativo: o novo perfil do desenvolvedor que todo Executivo precisa entender]]></title><description><![CDATA[1 Ano de IA dentro de um time de engenharia expuseram uma verdade desconfort&#225;vel sobre onde mora hoje o gargalo do software, como o trabalho mudou junto e por que quem s&#243; reagir depois vai pagar]]></description><link>https://www.guilhermefavaron.com.br/p/o-fim-do-codigo-como-ativo-o-novo</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/o-fim-do-codigo-como-ativo-o-novo</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Thu, 23 Apr 2026 15:00:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!v1AS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Se a sua empresa constr&#243;i software, mesmo que em pequena escala, o seu time de desenvolvimento est&#225; mudando mais r&#225;pido do que voc&#234; percebe. As pessoas continuam as mesmas. O que mudou foi o trabalho em si.</p><p>Quero explicar isso de um jeito que serve tanto para o CEO que tem duzentos engenheiros em folha quanto para o fundador que contratou dois devs e uma assinatura de Claude Code. A confus&#227;o no ar &#233; parecida nos dois casos: produtividade prometida que n&#227;o chega, s&#234;nior reclamando de sobrecarga, j&#250;nior entregando r&#225;pido demais para o conforto de quem revisa, e uma sensa&#231;&#227;o geral de que o time virou uma caixa preta que engole IA de um lado e cospe c&#243;digo do outro, sem que ningu&#233;m, inclusive o CTO, consiga dizer com precis&#227;o o que est&#225; acontecendo l&#225; dentro.</p><p>Vou ser direto: <strong>essa confus&#227;o tem nome, tem causa e tem um caminho de sa&#237;da</strong>. Entender tudo isso virou dilig&#234;ncia b&#225;sica de qualquer lideran&#231;a que tenha software dentro do neg&#243;cio, e n&#227;o mais um luxo reservado a executivo de tecnologia.</p><h2>O gargalo migrou para a especifica&#231;&#227;o</h2><p>Durante vinte anos, a engenharia de software funcionou assim: voc&#234; contrata pessoas para escrever c&#243;digo, mede a entrega por linhas <em>commitadas</em>, features enviadas, story points fechados. O code review &#233; o port&#227;o de qualidade. Se passou na revis&#227;o, vai para produ&#231;&#227;o. O of&#237;cio era o c&#243;digo em si.</p><p>Com agentes de IA, essa l&#243;gica inteira quebra. O c&#243;digo come&#231;a a chegar mais r&#225;pido do que o time consegue processar. Em um cen&#225;rio real de um time de vinte engenheiros rodando Claude Code e Cursor por seis meses, um s&#234;nior chegou frustrado com o pull request de um j&#250;nior. Milhares de linhas. Funcionava. Passava nos testes. Ele disse, sem meio-termo: &#8220;<em>eu n&#227;o li o c&#243;digo. N&#227;o tinha como. Era c&#243;digo demais. Qual &#233; o meu trabalho agora?</em>&#8221;</p><p>Essa &#233; a pergunta do momento:</p><div class="pullquote"><p>Se o c&#243;digo j&#225; n&#227;o &#233; o gargalo, onde foi parar o gargalo?</p></div><p>A resposta &#233; inc&#244;moda para quem construiu carreira escrevendo c&#243;digo. O gargalo migrou para a especifica&#231;&#227;o. A engenharia rigorosa que antes a gente aplicava depois que o c&#243;digo era escrito, como revis&#227;o, teste e cobertura, agora precisa acontecer antes que qualquer linha exista.</p><p>Um caso que se tornou emblem&#225;tico: um dev pede para um agente construir um sistema de notifica&#231;&#245;es. Requisito simples. O agente constr&#243;i. Funciona lindo em ambiente de teste. Vai para produ&#231;&#227;o e dispara cinquenta mil e-mails em tr&#234;s minutos. Por qu&#234;? Porque ningu&#233;m tinha especificado um limite de taxa. O agente n&#227;o sabia que isso era &#243;bvio. Para ele, n&#227;o era.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!v1AS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v1AS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 424w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 848w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v1AS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg" width="1200" height="1143" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1143,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:117651,&quot;alt&quot;:&quot;Sistema de notifica&#231;&#245;es equivalente ao Slack&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/195038961?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Sistema de notifica&#231;&#245;es equivalente ao Slack" title="Sistema de notifica&#231;&#245;es equivalente ao Slack" srcset="https://substackcdn.com/image/fetch/$s_!v1AS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 424w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 848w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!v1AS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d47c13e-f5c7-42de-8633-48d8a1abc841_1200x1143.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Sistema de notifica&#231;&#245;es equivalente ao Slack</figcaption></figure></div><p>A especifica&#231;&#227;o est&#225; virando o produto; c&#243;digo, descart&#225;vel. Essa &#233; a invers&#227;o mais completa de como o software foi constru&#237;do nos &#250;ltimos cinquenta anos.</p><h2>A camada que ainda n&#227;o tem nome</h2><p>Entre a especifica&#231;&#227;o e o c&#243;digo que vai para produ&#231;&#227;o, existe agora uma camada de trabalho inteira que nenhum organograma sabe descrever. Algu&#233;m precisa quebrar o problema em peda&#231;os do tamanho certo para o agente resolver. Algu&#233;m precisa saber quando deixar o agente correr e quando segurar a r&#233;dea. Algu&#233;m precisa corrigir a sa&#237;da n&#227;o reescrevendo o c&#243;digo, e sim ajustando o prompt, o contexto ou a restri&#231;&#227;o.</p><p>Vejo isso sendo chamado de trabalho supervis&#243;rio&#8230; De arquitetura execut&#225;vel... De curadoria de agentes... Nenhum termo pegou ainda, e isso &#233; um sintoma de que a disciplina est&#225; nascendo em tempo real dentro das empresas que usam IA para valer.</p><p>Esse trabalho supervis&#243;rio &#233; onde mora o novo valor. A habilidade cr&#237;tica mudou da velocidade de digita&#231;&#227;o para a capacidade de carregar um modelo mental do sistema inteiro, antecipar onde a IA vai errar, definir fronteiras claras e avaliar sa&#237;das n&#227;o-determin&#237;sticas sem ingenuidade.</p><h2>A fratura invis&#237;vel: seniores afogados, juniores decolando, mid-levels na zona de perigo</h2><p>Em qualquer time real que adotou IA de forma s&#233;ria nos &#250;ltimos meses, ocorre a mesma fratura. O time se divide em tr&#234;s grupos, e os tr&#234;s est&#227;o vivendo realidades completamente diferentes.</p><p><strong>Os seniores est&#227;o afogados.</strong> Eles entendem o sistema inteiro, conhecem a d&#237;vida t&#233;cnica, carregam o contexto hist&#243;rico. Isso era superpoder. Agora vira condena&#231;&#227;o. Porque juniores e agentes geram c&#243;digo dez vezes mais r&#225;pido, e c&#243;digo n&#227;o vai para produ&#231;&#227;o sozinho. Precisa de revis&#227;o arquitetural, precisa encaixar em legado, precisa ser desbloqueado. O s&#234;nior vira <em>controlador de tr&#225;fego a&#233;reo</em>. Passa o dia revisando sa&#237;da de IA e j&#225; n&#227;o produz quase nada de fato. A pessoa que antes era a mais produtiva do time passa a ser a menos produtiva em termos de linhas, e a mais cr&#237;tica em termos de decis&#227;o. Ningu&#233;m sabe como medir isso e o burnout passa a ser real.</p><p><strong>Os juniores est&#227;o decolando.</strong> Contraintuitivo? Sim. Mas faz sentido. O j&#250;nior n&#227;o tem a mem&#243;ria muscular que manda escrever c&#243;digo de um jeito espec&#237;fico. Ele trata a IA como colega de equipe e n&#227;o como amea&#231;a &#224; pr&#243;pria identidade. A fase deficit&#225;ria do onboarding, aqueles seis meses em que o j&#250;nior drena produtividade do time enquanto aprende o c&#243;digo, praticamente desapareceu. Um j&#250;nior bem acoplado a um Claude Code entrega c&#243;digo &#250;til na primeira semana.</p><p><strong>Os mid-levels est&#227;o na zona de perigo.</strong> Tr&#234;s a cinco anos de experi&#234;ncia. Habilidade suficiente para ter v&#237;cios, insuficiente para ser arquiteto de verdade. Re-treinar um mid-level, tirando-o da l&#243;gica de escrever sintaxe e colocando-o na l&#243;gica de supervisionar agentes, &#233; o desafio organizacional mais duro que l&#237;deres de tech est&#227;o encontrando em 2026. O problema costuma aparecer em conversas de corredor e em reuni&#245;es fechadas de lideran&#231;a, mas raramente desce para o plano de carreira, para a pol&#237;tica de compensa&#231;&#227;o ou para a estrutura de contrata&#231;&#227;o que a empresa pratica de fato.</p><p>Para o CEO, a implica&#231;&#227;o &#233; estrat&#233;gica. Se voc&#234; s&#243; enxerga o time como um bloco, voc&#234; vai tratar seniores e mid-levels com a mesma remunera&#231;&#227;o, as mesmas metas, o mesmo plano de carreira. E vai perder os seniores para o burnout e os mid-levels para a obsolesc&#234;ncia, n&#227;o necessariamente "ganhando&#8221; bons juniores.</p><h2>O problema do conhecimento "tribal"</h2><p>Aqui mora uma armadilha espec&#237;fica, do tipo que s&#243; aparece depois que a empresa j&#225; apostou pesado em IA. O agente n&#227;o tem contexto organizacional, mesmo voc&#234; criando infinitas skills, plugins e MCPs. N&#227;o sabe que o job de marketing roda toda ter&#231;a &#224; meia-noite e satura o pool de conex&#245;es do banco. N&#227;o sabe que aquele microservi&#231;o mal-documentado foi escrito com pressa antes das f&#233;rias de Natal e nunca mais foi tocado. N&#227;o sabe que o cliente X tem um contrato especial que impede um determinado comportamento do sistema.</p><p>Isso &#233; conhecimento tribal. Vive na cabe&#231;a dos seniores. E quando um agente de IA &#233; chamado para resolver um incidente &#224;s duas da manh&#227;, ele l&#234; a documenta&#231;&#227;o oficial, segue o manual e <em>reinicia o servidor</em>. Repetidas vezes. Enquanto o time humano precisa ser chamado do mesmo jeito para descobrir que o problema era um <em>job batch</em> e n&#227;o um servi&#231;o travado.</p><div class="callout-block" data-callout="true"><p>&#8220;reiniciar o servidor&#8221; &#233; uma a&#231;&#227;o voltada a sintomas, t&#237;pica da IA que assume que h&#225; um servi&#231;o travado ou vazamento de recurso, por exemplo, enquanto o &#8220;job batch&#8221; no exemplo &#233; a causa estrutural: um trabalho agendado, leg&#237;timo, que em determinado hor&#225;rio entra em cena e simplesmente consome CPU, mem&#243;ria ou conex&#245;es at&#233; saturar o sistema de novo. </p><p>Cada reboot limpa o estado por alguns segundos ou minutos, mas assim que o job volta a rodar, o problema reaparece, ou seja, a IA conduz o j&#250;nior a tratar o term&#244;metro, n&#227;o a febre. A corre&#231;&#227;o real neste exemplo &#233; atuar no pr&#243;prio job para que ele n&#227;o &#8220;coma todos os recursos de uma vez&#8221;; em termos de c&#243;digo, isso pode ser t&#227;o simples quanto adicionar um limitador de ritmo ou concorr&#234;ncia, por exemplo ao processar um lote: </p><p><em>for item in batch: process(item); time.sleep(0.01)</em> </p><p>voc&#234; transforma uma explos&#227;o de carga em um fluxo controlado que o sistema aguenta sem cair.</p></div><p>A consequ&#234;ncia &#233; direta. Toda aquela promessa de &#8220;sistemas auto-cicatrizantes&#8221; (self-healing) movidos por IA continua sendo conversa de marketing enquanto a sua empresa n&#227;o construir um subconsciente de agente. Um grafo de conhecimento que codifique cada incidente, cada caso de borda esquisito, cada peda&#231;o de conhecimento institucional que mora s&#243; na cabe&#231;a da sua equipe mais experiente.</p><p>Construir isso parece investimento n&#227;o urgente at&#233; o dia em que se torna(r&#225;) o &#250;nico investimento que importa.</p><h2>Agentes obedientes demais</h2><p>H&#225; outro ponto pouco discutido. Agentes de IA s&#227;o treinados para serem prestativos. S&#227;o puxa-sacos por constru&#231;&#227;o. Querem te manter engajado na conversa, s&#227;o propositivos mesmo quando n&#227;o s&#227;o necess&#225;rios. Durante um incidente, o &#250;ltimo que voc&#234; quer no comando &#233; um puxa-saco. Voc&#234; quer algu&#233;m que desafie a hip&#243;tese, que force o humano a olhar para o que ele n&#227;o quer olhar.</p><p>A resposta emergente dentro de times que j&#225; sofreram com isso &#233; o que est&#225; sendo chamado de &#8220;agente bravo&#8221; (<em>angry agent</em>): um agente configurado especificamente para furar a teoria em curso, apontar contradi&#231;&#245;es, exigir evid&#234;ncia. Trata-se de higiene de opera&#231;&#227;o, ainda que muita gente trate como luxo dispens&#225;vel. Porque dois agentes concordando entre si, o humano cansado e a IA obediente, &#233; a receita perfeita para um servidor queimando enquanto todo mundo bate cabe&#231;a.</p><h2>Contrata&#231;&#227;o: voc&#234; est&#225; comprando a habilidade errada</h2><p>Se voc&#234; est&#225; contratando desenvolvedor agora com a descri&#231;&#227;o de vaga que usava h&#225; dois anos, voc&#234; est&#225; comprando a habilidade errada. Velocidade para teclar c&#243;digo virou commodity, e deixou de funcionar como diferencial real.</p><p>O perfil que voc&#234; precisa ter no time &#233; outro. Pensamento arquitetural. Julgamento sob incerteza. Capacidade de escrever uma especifica&#231;&#227;o t&#227;o precisa que a IA n&#227;o consiga interpretar errado. Capacidade de desenhar um conjunto de testes que capture alucina&#231;&#245;es antes de elas irem para produ&#231;&#227;o. Capacidade de debugar um sistema que a pessoa n&#227;o escreveu pessoalmente.</p><p>Isso &#233; uma pessoa completamente diferente da que voc&#234; contratava em 2023-4. E o pior: muita gente no mercado ainda se vende pela habilidade antiga. Seu processo seletivo precisa mudar. Se o teste t&#233;cnico &#233; &#8220;escreva um algoritmo de busca bin&#225;ria em trinta minutos&#8221;, voc&#234; est&#225; medindo exatamente a habilidade que a IA substituiu.</p><p>Um teste mais &#250;til em 2026 que tenho aplicado nos processos de recrutamento &#233;: <em>aqui est&#225; uma especifica&#231;&#227;o [vaga], um sistema legado indo a meia-boca e um agente de IA &#224; sua disposi&#231;&#227;o. O que voc&#234; faz?</em></p><h2>D&#237;vida cognitiva e compreens&#227;o cont&#237;nua</h2><p>Por d&#233;cadas, o code review serviu para ca&#231;ar bug e tamb&#233;m, de quebra, para ensinar o sistema aos desenvolvedores. Se os agentes passam a escrever todo o c&#243;digo e o time para de ler, o time vira estrangeiro dentro do pr&#243;prio produto.</p><p>Quando alguma coisa quebra &#224;s tr&#234;s da manh&#227;, o seu engenheiro est&#225; encarando c&#243;digo escrito por uma m&#225;quina, tentando fazer engenharia reversa da l&#243;gica enquanto o cliente grita do outro lado.</p><p>Isso &#233; <strong>d&#237;vida cognitiva</strong>. Ela se acumula silenciosamente, sem aparecer em nenhum dashboard, at&#233; o dia em que o time inteiro n&#227;o consegue mais tomar uma decis&#227;o arquitetural porque ningu&#233;m mais entende de fato o que o software faz.</p><p>A contramedida &#233; <strong>agendar compreens&#227;o</strong>. Rituais semanais de arquitetura conjunta, mesmo que o c&#243;digo venha dos agentes. Ferramentas que resumem mudan&#231;as arquiteturais para humanos. Sess&#245;es deliberadas de leitura de c&#243;digo, como se fossem sess&#245;es de leitura coletiva. Soa anal&#243;gico em um mundo que vende autonomia total. &#201; justamente por isso que funciona.</p><h2>O que fazer como CEO</h2><p>Tr&#234;s movimentos concretos para as pr&#243;ximas semanas.</p><p>Primeiro, audite seu time pela lente de senior-afogado, j&#250;nior-decolando, mid-level-em-risco. Trata-se de diagn&#243;stico estrat&#233;gico, e quem trata isso como exerc&#237;cio burocr&#225;tico de RH perde os melhores primeiro. O plano de carreira, a compensa&#231;&#227;o e o treinamento precisam ser diferentes para cada grupo. Tratar todo mundo igual &#233; garantir perda de talento nos pr&#243;ximos doze meses. O princ&#237;pio da equidade vale aqui tamb&#233;m.</p><div class="callout-block" data-callout="true"><p>O princ&#237;pio da equidade &#233; a ideia de tratar pessoas de forma diferente para gerar resultados justos, e que no balan&#231;o todos sejam igualmente bem tratados. Enquanto igualdade distribui os mesmos recursos para todos, equidade ajusta recursos, metas e condi&#231;&#245;es conforme a necessidade, o contexto e o impacto esperado. Em gest&#227;o de times, isso significa n&#227;o dar o mesmo plano de carreira, m&#233;tricas e carga para s&#234;nior, j&#250;nior e mid-level, mas calibrar incentivos e suporte conforme o papel estrat&#233;gico de cada um. A r&#233;gua n&#227;o &#233; &#8220;todo mundo igual&#8221;, e sim &#8220;cada pessoa recebe o que precisa para contribuir ao m&#225;ximo e n&#227;o ser prejudicada pelo contexto&#8221;.</p></div><p>Segundo, comece a construir o subconsciente da sua empresa. Todo incidente vira aprendizado documentado de forma que um agente consiga consumir. Toda regra impl&#237;cita vira regra expl&#237;cita. Toda decis&#227;o arquitetural ganha um <em>why</em> registrado. Isso parece infraestrutura chata at&#233; o dia em que &#233; o diferencial competitivo. Para este subconsciente ter impacto relevante, voc&#234; precisar&#225; de volume relativamente grande de registros. E quanto mais volume tiver, mais registros conseguir&#225; criar antecipadamente, mitigando problemas futuros.</p><p>Terceiro, mude o filtro de contrata&#231;&#227;o. Pare de comprar velocidade de digita&#231;&#227;o. Comece a comprar julgamento, clareza de especifica&#231;&#227;o e toler&#226;ncia &#224; ambiguidade. O teste t&#233;cnico precisa refletir o trabalho real de 2026, n&#227;o o trabalho real de 2018.</p><p>A analogia final que eu gosto &#233; a da placa gr&#225;fica. Em 1992, engenheiros calculavam &#224; m&#227;o a matem&#225;tica para desenhar um &#250;nico pol&#237;gono na tela. Em 1994, as GPUs chegaram e assumiram essa tarefa. Quem insistiu em codar pol&#237;gono &#224; m&#227;o em 1995 n&#227;o virou especialista. Virou obsoleto. Os que sobreviveram viraram engenheiros de ilumina&#231;&#227;o, animadores, programadores de f&#237;sica. Pararam de ensinar o computador a desenhar um tri&#226;ngulo e come&#231;aram a ensinar o computador a simular como a luz reflete em uma rua molhada.</p><p>A engenharia de software est&#225; vivendo exatamente esse momento. Ningu&#233;m mais vai codar pol&#237;gono &#224; m&#227;o em 2028. A pergunta &#233; se o seu time vai estar entre os que escalaram para a nova camada ou entre os que insistiram na antiga at&#233; ficarem obsoletos.</p><p>Os melhores fundadores e CEOs que eu conhe&#231;o n&#227;o est&#227;o em p&#226;nico com isso. Est&#227;o adaptando. Silenciosamente, metodicamente, reescrevendo cargos, planos de carreira e processos. Seja um deles.</p>]]></content:encoded></item><item><title><![CDATA[O que o Candy Crush ensina sobre IA aplicada ao produto]]></title><description><![CDATA[Tr&#234;s abordagens distintas de machine learning para um mesmo problema, e o que cada uma revela sobre como pensar projetos de IA em empresas]]></description><link>https://www.guilhermefavaron.com.br/p/candy-crush-ia</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/candy-crush-ia</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Sun, 19 Apr 2026 23:55:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RnA-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RnA-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RnA-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RnA-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:465352,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RnA-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!RnA-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc08f329d-2e56-4d60-b9b3-21518edab371_2276x1280.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Candy Crush - Fonte: site oficial</figcaption></figure></div><p>Candy Crush Saga &#233; um dos jogos mobile mais bem-sucedidos da hist&#243;ria. Lan&#231;ado em 2012 pela King, hoje parte da Activision Blizzard, acumula bilh&#245;es de downloads e continua entre os aplicativos mais lucrativos em Android e iOS. Para a maioria das pessoas, &#233; um passatempo simples. Voc&#234; combina doces da mesma cor, eles explodem, voc&#234; avan&#231;a de n&#237;vel.</p><p>Recentemente voltei a pensar sobre o jogo por um motivo espec&#237;fico. Um detalhe me chamou a aten&#231;&#227;o: como a King consegue manter uma progress&#227;o de dificuldade consistente atrav&#233;s de mais de 15 mil n&#237;veis, lan&#231;ando cerca de 15 novos por semana, sem que a experi&#234;ncia se degrade. A resposta envolve machine learning aplicado de forma bastante sofisticada, e as li&#231;&#245;es s&#227;o diretamente transfer&#237;veis para qualquer organiza&#231;&#227;o que use IA para otimizar produto.</p><p>O problema, ao contr&#225;rio do que parece, atraiu aten&#231;&#227;o acad&#234;mica significativa. H&#225; pelo menos tr&#234;s teses de mestrado no KTH Royal Institute of Technology, um paper oficial dos engenheiros da King, um projeto de Stanford no curso CS230 de deep learning, uma prova matem&#225;tica de NP-dificuldade no arXiv, e trabalhos recentes da Universidade Roma Tre aplicando Deep Reinforcement Learning &#224; classe de jogos match-3. Cada abordagem resolve o problema de uma forma diferente, e as diferen&#231;as revelam decis&#245;es de design que v&#227;o muito al&#233;m de Candy Crush.</p><p>Este artigo tem tr&#234;s objetivos. Primeiro, documentar com algum rigor t&#233;cnico o que a King construiu, porque a hist&#243;ria &#233; genuinamente interessante e pouco conhecida fora de c&#237;rculos especializados. Segundo, comparar as tr&#234;s abordagens principais que foram publicadas: MCTS, supervised learning com CNN, e Deep Q-Network. Terceiro, extrair princ&#237;pios aplic&#225;veis a projetos de IA em contextos empresariais que n&#227;o t&#234;m nada a ver com jogos.</p><h2>O problema real que a King enfrentava</h2><p>A economia do Candy Crush depende de progress&#227;o constante. Se os n&#237;veis param de sair, os jogadores engajados terminam o conte&#250;do dispon&#237;vel e saem. Se saem em ritmo errado ou com dificuldade mal calibrada, a curva de reten&#231;&#227;o se deteriora. Com dezenas de milh&#245;es de jogadores ativos, o custo de um erro de calibra&#231;&#227;o &#233; grande.</p><p>O problema t&#233;cnico espec&#237;fico &#233; o seguinte. Cada novo n&#237;vel precisa ter uma taxa de sucesso humano m&#233;dio (AHSR, na terminologia interna da King, Average Human Success Rate) dentro de uma faixa calibrada para manter a experi&#234;ncia de flow. Uma taxa muito alta indica que o n&#237;vel &#233; f&#225;cil demais e o jogador se entedia. Uma taxa muito baixa indica que &#233; dif&#237;cil demais e o jogador desiste. A faixa-alvo varia conforme a posi&#231;&#227;o do n&#237;vel na jornada, com picos deliberados de dificuldade em posi&#231;&#245;es espec&#237;ficas para criar momentos de desafio.</p><p>At&#233; meados da d&#233;cada passada, a calibra&#231;&#227;o era feita por testers humanos. Jogadores profissionais jogavam o mesmo n&#237;vel cerca de 20 vezes, registravam resultados e escreviam relat&#243;rios. O processo levava aproximadamente uma semana por n&#237;vel. Para um ritmo de 15 n&#237;veis novos por semana, isso exigia uma equipe grande, introduzia um gargalo estrutural no pipeline de produ&#231;&#227;o, e limitava quantas itera&#231;&#245;es de design cada n&#237;vel poderia receber antes de ser lan&#231;ado.</p><h2>A complexidade matem&#225;tica escondida</h2><p>Antes de entrar nas abordagens de machine learning, vale estabelecer que o problema &#233; genuinamente dif&#237;cil do ponto de vista te&#243;rico.</p><p>Em 2014, Toby Walsh publicou no arXiv um paper curto e preciso chamado &#8220;<a href="https://arxiv.org/abs/1403.1911">Candy Crush is NP-hard</a>&#8221;. A prova usa uma redu&#231;&#227;o a partir do 3-SAT, o problema can&#244;nico NP-completo, mostrando que encontrar a sequ&#234;ncia &#243;tima de movimentos em um n&#237;vel arbitr&#225;rio de Candy Crush &#233; pelo menos t&#227;o dif&#237;cil quanto satisfazer uma f&#243;rmula booleana em forma normal conjuntiva. Sob as conjecturas padr&#227;o em complexidade computacional (especificamente P &#8800; NP), isso significa que n&#227;o existe algoritmo de tempo polinomial para resolver otimamente o jogo, e &#233; improv&#225;vel que tal algoritmo venha a ser descoberto.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1raA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1raA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 424w, https://substackcdn.com/image/fetch/$s_!1raA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 848w, https://substackcdn.com/image/fetch/$s_!1raA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 1272w, https://substackcdn.com/image/fetch/$s_!1raA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1raA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png" width="1220" height="598" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:598,&quot;width&quot;:1220,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64670,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1raA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 424w, https://substackcdn.com/image/fetch/$s_!1raA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 848w, https://substackcdn.com/image/fetch/$s_!1raA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 1272w, https://substackcdn.com/image/fetch/$s_!1raA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe17ddc4c-f08a-4583-b05c-9a7a7cc34262_1220x598.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Artigo de 2014 - https://arxiv.org/abs/1403.1911</figcaption></figure></div><p>Esse resultado te&#243;rico tem uma implica&#231;&#227;o pr&#225;tica importante. Como for&#231;a bruta &#233; invi&#225;vel, qualquer sistema que queira jogar Candy Crush em escala precisa usar heur&#237;sticas, amostragem estat&#237;stica, ou aprendizado a partir de dados. <strong>N&#227;o h&#225; atalho anal&#237;tico.</strong></p><p><a href="https://www.semanticscholar.org/paper/Crushing-Candy-Crush-%3A-Predicting-Human-Success-in-Poromaa/36b634a2e23e3734ec591d58849cb102612a3029">A tese de Erik Poromaa (KTH, 2017)</a> reporta uma estimativa emp&#237;rica que refor&#231;a essa intui&#231;&#227;o. Para o n&#237;vel 13 do jogo, o espa&#231;o de estados (o conjunto de todas as configura&#231;&#245;es poss&#237;veis do tabuleiro considerando o fluxo de doces caindo) foi estimado em aproximadamente 10 elevado a 182. Para compara&#231;&#227;o, o universo observ&#225;vel cont&#233;m na ordem de 10 elevado a 80 &#225;tomos, e existem aproximadamente 10 elevado a 50 configura&#231;&#245;es legais em um tabuleiro de xadrez. Um &#250;nico n&#237;vel de Candy Crush tem um espa&#231;o de estados muitas ordens de magnitude maior que o jogo completo de xadrez.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1EGu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1EGu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 424w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 848w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 1272w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1EGu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png" width="465" height="443.5516605166052" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1034,&quot;width&quot;:1084,&quot;resizeWidth&quot;:465,&quot;bytes&quot;:1054866,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1EGu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 424w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 848w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 1272w, https://substackcdn.com/image/fetch/$s_!1EGu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df79403-9266-4ee1-9339-87f6aa67e2e0_1084x1034.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Crushing Candy Crush : Predicting Human Success Rate in a Mobile Game using Monte-Carlo Tree Search</figcaption></figure></div><p>Esse n&#250;mero tamb&#233;m explica por que o jogo tem uma propriedade interessante: mesmo que voc&#234; jogue o mesmo n&#237;vel milhares de vezes, &#233; estatisticamente improv&#225;vel que as mesmas configura&#231;&#245;es se repitam. A &#8220;previsibilidade do imprevis&#237;vel&#8221; que jogadores percebem vem exatamente dessa vastid&#227;o.</p><h2>Abordagem 1: Monte Carlo Tree Search</h2><p>A primeira tentativa s&#233;ria de automatizar a estimativa de dificuldade veio na tese de mestrado de Erik Poromaa em 2016, publicada em 2017, com o t&#237;tulo &#8220;<a href="https://www.semanticscholar.org/paper/Crushing-Candy-Crush-%3A-Predicting-Human-Success-in-Poromaa/36b634a2e23e3734ec591d58849cb102612a3029">Crushing Candy Crush: Predicting Human Success Rate in a Mobile Game using Monte-Carlo Tree Search</a>&#8221;.</p><p>Monte Carlo Tree Search &#233; a fam&#237;lia de algoritmos que tamb&#233;m est&#225; por tr&#225;s de sistemas como o AlphaGo. A intui&#231;&#227;o &#233; a seguinte: <em>a partir do estado atual, simule milhares de jogos completos escolhendo a&#231;&#245;es por algum crit&#233;rio (no caso mais simples, aleatoriamente), registre quais jogos terminam em sucesso, e use essa estat&#237;stica para decidir qual a&#231;&#227;o tomar no estado real</em>.</p><p>A aplica&#231;&#227;o a Candy Crush enfrenta dois problemas principais. O primeiro &#233; o branching factor alto. Em um tabuleiro 9x9 com seis cores de doces, h&#225; dezenas de movimentos legais em cada posi&#231;&#227;o, e o jogo tem 40 ou mais movimentos por n&#237;vel. A &#225;rvore de busca cresce muito r&#225;pido. O segundo &#233; a aleatoriedade intr&#237;nseca do jogo: quando voc&#234; elimina doces, novos doces caem em posi&#231;&#245;es aleat&#243;rias, o que significa que duas simula&#231;&#245;es a partir do mesmo estado podem seguir trajet&#243;rias completamente diferentes. Isso exige muitas simula&#231;&#245;es por estado para ter estimativas est&#225;veis.</p><p>Poromaa reportou resultados razo&#225;veis superando m&#233;todos anteriores de teste manual, mas com limita&#231;&#245;es claras em custo computacional. A abordagem funciona, mas n&#227;o escala para o ritmo de produ&#231;&#227;o da King sem hardware significativo.</p><h2>Abordagem 2: Supervised Learning com CNN (a solu&#231;&#227;o em produ&#231;&#227;o da King)</h2><p>A abordagem que eventualmente foi para produ&#231;&#227;o est&#225; documentada no paper &#8220;<a href="https://gwern.net/doc/reinforcement-learning/imitation-learning/2018-gudmundsson.pdf">Human-Like Playtesting with Deep Learning</a>&#8221;, de autoria de Stefan Gudmundsson, Philipp Eisen, Erik Poromaa, Alex Nodet, Sami Purmonen, Bartlomiej Kozakowski, Richard Meurling e Lele Cao, todos engenheiros da King, publicado em 2018 na IEEE Conference on Computational Intelligence and Games.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0ciZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0ciZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 424w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 848w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 1272w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0ciZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png" width="966" height="460" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:460,&quot;width&quot;:966,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:556626,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4dbc241a-464f-450c-aa43-afcd7422f502_966x460.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0ciZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 424w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 848w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 1272w, https://substackcdn.com/image/fetch/$s_!0ciZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59b34d7-1747-4e20-be4c-f9ffadd54d39_966x460.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Human-Like Playtesting with Deep Learning</figcaption></figure></div><p>A arquitetura combina tr&#234;s elementos.</p><p><strong>Representa&#231;&#227;o do estado.</strong> O tabuleiro &#233; codificado como um tensor bin&#225;rio com aproximadamente 102 feature planes. Cada plano &#233; uma matriz bin&#225;ria do tamanho do tabuleiro onde cada c&#233;lula indica a presen&#231;a ou aus&#234;ncia de um atributo espec&#237;fico: cada cor de doce tem seu plano, cada tipo de doce especial tem seu plano (strip bombs horizontais, strip bombs verticais, wrapped bombs, color bombs), obst&#225;culos como geleias e chocolates t&#234;m planos pr&#243;prios, e o objetivo corrente do n&#237;vel &#233; codificado em planos adicionais. Essa representa&#231;&#227;o &#233; essencialmente equivalente ao input de uma rede neural convolucional aplicada a uma imagem, com a diferen&#231;a de que os canais s&#227;o sem&#226;nticos em vez de RGB.</p><p><strong>Dataset de decis&#245;es humanas.</strong> A King coletou aproximadamente 12 milh&#245;es de pares estado-a&#231;&#227;o (1.2 &#215; 10 elevado a 7) de jogadores reais em Candy Crush Saga e Candy Crush Soda Saga. Cada par registra a configura&#231;&#227;o do tabuleiro em um determinado momento e a a&#231;&#227;o que o jogador humano tomou em seguida. Isso &#233; o equivalente, em escala, a um dataset de vis&#227;o computacional como o ImageNet, mas com configura&#231;&#245;es de jogo e decis&#245;es em vez de imagens e r&#243;tulos.</p><p><strong>Rede neural convolucional.</strong> Uma CNN &#233; treinada por <a href="https://www.guilhermefavaron.com.br/p/o-que-e-inteligencia-artificial">aprendizado supervisionado</a> para prever, dada uma configura&#231;&#227;o do tabuleiro, a distribui&#231;&#227;o de probabilidade sobre as a&#231;&#245;es que um humano t&#237;pico tomaria. O output n&#227;o &#233; uma &#250;nica a&#231;&#227;o determin&#237;stica, &#233; uma distribui&#231;&#227;o. Em infer&#234;ncia, o agente amostra dessa distribui&#231;&#227;o, o que preserva a variabilidade de comportamento humano.</p><p>O pipeline de simula&#231;&#227;o ent&#227;o usa esse agente como substituto de testers humanos. O agente joga cada novo n&#237;vel centenas ou milhares de vezes, e a taxa de sucesso observada serve como estimativa da AHSR esperada quando o n&#237;vel for lan&#231;ado para jogadores reais.</p><p>O paper reporta que a abordagem CNN apresenta menor erro absoluto m&#233;dio (MAE) que MCTS, maior correla&#231;&#227;o com dificuldade real observada em produ&#231;&#227;o, e opera em uma fra&#231;&#227;o do tempo computacional. O ganho operacional &#233; que o playtesting que levava sete dias passou a ser feito em menos de um minuto por n&#237;vel.</p><p>H&#225; uma sutileza t&#233;cnica importante aqui. A rede n&#227;o est&#225; aprendendo a jogar otimamente, est&#225; aprendendo a reproduzir a distribui&#231;&#227;o emp&#237;rica de comportamento humano. Isso &#233; fundamental e vou voltar ao ponto.</p><h2>Abordagem 3: Deep Q-Network (a perspectiva acad&#234;mica)</h2><p>Uma perspectiva alternativa interessante aparece no projeto de Bowen Deng no curso CS230 de Deep Learning em Stanford, no inverno de 2020, intitulado &#8220;<a href="https://cs230.stanford.edu/projects_winter_2020/reports/32031465.pdf">Learn to play Candy Crush</a>&#8221;. Esse trabalho adota uma abordagem de reinforcement learning com Deep Q-Network (DQN), e &#233; instrutivo exatamente porque as decis&#245;es de design s&#227;o diferentes.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0IUh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0IUh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 424w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 848w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 1272w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0IUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png" width="1456" height="771" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:771,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:100306,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0IUh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 424w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 848w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 1272w, https://substackcdn.com/image/fetch/$s_!0IUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e293e30-3c92-4d3c-8912-e27ba57ab92c_1624x860.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Learn to play Candy Crush Stanford - CS230</figcaption></figure></div><p>Deng trabalha com um setup simplificado: tabuleiro 10x10 sem obst&#225;culos, 40 movimentos por jogo. O estado &#233; representado como uma matriz de dimens&#227;o (C + S) &#215; N &#215; N, onde C &#233; o n&#250;mero de cores de doces, S &#233; o n&#250;mero de doces especiais, e N &#233; o tamanho do tabuleiro. A representa&#231;&#227;o &#233; conceitualmente similar &#224; da King, embora com menos feature planes por ter escopo reduzido.</p><p>O espa&#231;o de a&#231;&#245;es &#233; de 2 &#215; N &#215; (N &#8722; 1) a&#231;&#245;es poss&#237;veis por posi&#231;&#227;o: o agente pode escolher uma c&#233;lula que n&#227;o esteja na coluna mais &#224; direita e trocar com a vizinha &#224; direita, ou escolher uma c&#233;lula que n&#227;o esteja na linha inferior e trocar com a vizinha abaixo. Em um tabuleiro 10x10, isso resulta em 180 a&#231;&#245;es poss&#237;veis, o que j&#225; &#233; um espa&#231;o de a&#231;&#227;o razoavelmente grande para reinforcement learning.</p><p>A arquitetura final, depois de v&#225;rias itera&#231;&#245;es, consiste em cinco camadas convolucionais (com 16, 32, 32, 32 e 32 canais), ativa&#231;&#245;es ReLU entre elas, e uma camada totalmente conectada no final produzindo Q-values para cada a&#231;&#227;o. O treinamento foi feito em AWS com 2.000 epis&#243;dios, usando epsilon-greedy para balancear explora&#231;&#227;o e explora&#231;&#227;o.</p><p>Deng testou duas variantes que diferem na fun&#231;&#227;o de recompensa: DQN com recompensa instant&#226;nea (a pontua&#231;&#227;o obtida imediatamente ap&#243;s a jogada) e DQN com recompensa Monte Carlo (uma estimativa da pontua&#231;&#227;o esperada, computada como m&#233;dia sobre futuras configura&#231;&#245;es aleat&#243;rias).</p><p>A observa&#231;&#227;o t&#233;cnica mais interessante do paper &#233; que a variante Monte Carlo na verdade n&#227;o faz sentido matem&#225;tico no contexto de Q-learning. Q-learning assume a equa&#231;&#227;o de Bellman, que pressup&#245;e que a recompensa &#233; causada pela a&#231;&#227;o espec&#237;fica tomada no estado espec&#237;fico, levando a um novo estado espec&#237;fico. A recompensa Monte Carlo &#233; uma estimativa aleat&#243;ria dessa recompensa instant&#226;nea, o que introduz um vi&#233;s estat&#237;stico no aprendizado da fun&#231;&#227;o de valor. Essa observa&#231;&#227;o &#233; um bom exemplo do tipo de erro sutil que aparece quando algu&#233;m aplica algoritmos conhecidos sem validar as suposi&#231;&#245;es te&#243;ricas que eles exigem.</p><p>Os resultados finais de Deng s&#227;o compar&#225;veis e, em alguns aspectos, superam MCTS no ambiente simplificado. Random pick produziu 157 pontos m&#233;dios em 40 movimentos, MCTS produziu 325 pontos, e DQN com recompensa instant&#226;nea produziu 370 pontos. Em testes contra um jogador humano, o DQN ficou &#8220;um pouco pior&#8221; nas palavras do autor, mas bastante pr&#243;ximo. O c&#243;digo est&#225; dispon&#237;vel publicamente em github.com/baolidakai/candy_crush_ai.</p><p>H&#225; uma distin&#231;&#227;o filos&#243;fica importante entre os trabalhos de Deng e os da King. Deng treinou um agente para maximizar pontua&#231;&#227;o, seguindo o paradigma cl&#225;ssico de reinforcement learning. A King treinou um agente para imitar comportamento humano, usando aprendizado supervisionado. Os dois agentes resolvem o jogo, mas servem a prop&#243;sitos completamente diferentes.</p><h2>A sutileza do &#8220;human-like&#8221; versus &#8220;optimal&#8221;</h2><p>Esse contraste &#233; o ponto mais interessante do design da King, e o que mais acho que vale extrair como li&#231;&#227;o de engenharia.</p><p>A intui&#231;&#227;o natural de algu&#233;m come&#231;ando em machine learning aplicado a jogos &#233; treinar um agente para jogar o melhor poss&#237;vel. Faz sentido para um jogo como xadrez ou Go, onde o objetivo &#233; ganhar. Mas para estimar dificuldade humana, um agente &#243;timo &#233; in&#250;til. Um bot que sempre encontra a melhor jogada acharia qualquer n&#237;vel trivial, porque com jogadas &#243;timas quase todos os n&#237;veis s&#227;o solucion&#225;veis dentro do or&#231;amento de movimentos dispon&#237;vel. A dificuldade percebida por humanos n&#227;o vem da dificuldade intr&#237;nseca do n&#237;vel em sentido &#243;timo, vem da dist&#226;ncia entre o comportamento humano t&#237;pico e o comportamento &#243;timo naquele n&#237;vel espec&#237;fico.</p><blockquote><p>O que a King queria era um agente cuja distribui&#231;&#227;o de resultados espelhasse a distribui&#231;&#227;o de resultados humanos. Isso significa um agente que cometa o tipo certo de erro, nas propor&#231;&#245;es certas. O aprendizado supervisionado em cima de decis&#245;es humanas reais captura exatamente isso. A rede neural n&#227;o est&#225; aprendendo estrat&#233;gia &#243;tima, est&#225; aprendendo a distribui&#231;&#227;o emp&#237;rica de comportamento humano.</p></blockquote><p>Um trabalho relacionado que vale mencionar &#233; &#8220;<a href="https://www.semanticscholar.org/paper/Winning-Isn-%E2%80%99-t-Everything-%3A-Training-Agents-to-Borovikov-Zhao/b7a98d2d0c31dd727d6f4e327fbf73a0ad955221">Winning Isn&#8217;t Everything: Training Human-Like Agents for Playtesting</a>&#8221;, publicado por pesquisadores da Electronic Arts. O t&#237;tulo do paper &#233; essencialmente uma declara&#231;&#227;o de design: em playtesting automatizado, o objetivo n&#227;o pode ser vencer, precisa ser reproduzir a experi&#234;ncia de quem vai jogar.</p><p>A <a href="https://arxiv.org/pdf/2007.01137">Universidade Roma Tre tamb&#233;m publicou em 2020 um sistema chamado JellyGym</a>, aplicando deep reinforcement learning &#224; classe geral de jogos match-3. A arquitetura usa uma rede com camada oculta de 100 neur&#244;nios totalmente conectada, seguida por outra de 200 neur&#244;nios, e uma camada de sa&#237;da com 324 neur&#244;nios, um para cada swap poss&#237;vel (incluindo swaps proibidos). O treinamento foi feito em GPU Tesla V100. Os autores compararam quatro jogadores: Random Player (a&#231;&#245;es com probabilidade fixa), JellyGym (melhor a&#231;&#227;o segundo o modelo), Smart Player (melhor tipo de Jolly) e Real Users. A compara&#231;&#227;o expl&#237;cita com usu&#225;rios reais, novamente, refor&#231;a o ponto de que o benchmark relevante &#233; comportamento humano.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d62p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d62p!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 424w, https://substackcdn.com/image/fetch/$s_!d62p!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 848w, https://substackcdn.com/image/fetch/$s_!d62p!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 1272w, https://substackcdn.com/image/fetch/$s_!d62p!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d62p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png" width="381" height="432.6934673366834" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7cd536d-9882-45d5-ade8-195514a1525a_796x904.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:904,&quot;width&quot;:796,&quot;resizeWidth&quot;:381,&quot;bytes&quot;:246457,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d62p!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 424w, https://substackcdn.com/image/fetch/$s_!d62p!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 848w, https://substackcdn.com/image/fetch/$s_!d62p!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 1272w, https://substackcdn.com/image/fetch/$s_!d62p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7cd536d-9882-45d5-ade8-195514a1525a_796x904.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Esse framing &#233; transfer&#237;vel para outros contextos. Em qualquer problema de simula&#231;&#227;o ou estimativa baseada em comportamento, a pergunta inicial precisa ser: estou tentando modelar o &#243;timo ou o real. S&#227;o objetivos diferentes, exigem datasets diferentes, fun&#231;&#245;es de perda diferentes, e produzem modelos com propriedades completamente distintas.</p><h2>BAIT e a camada de QA visual</h2><p>Al&#233;m do sistema de estimativa de dificuldade, a King construiu uma ferramenta complementar chamada BAIT (Bot for AI Testing), documentada em um artigo do InfoQ por Alexander Andelkovic em 2019.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Socn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Socn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 424w, https://substackcdn.com/image/fetch/$s_!Socn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 848w, https://substackcdn.com/image/fetch/$s_!Socn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!Socn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Socn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png" width="399" height="408.93950177935943" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1152,&quot;width&quot;:1124,&quot;resizeWidth&quot;:399,&quot;bytes&quot;:757485,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Socn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 424w, https://substackcdn.com/image/fetch/$s_!Socn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 848w, https://substackcdn.com/image/fetch/$s_!Socn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!Socn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cb2cf1d-1961-4093-bdb8-bbcb7b3f85b8_1124x1152.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>O BAIT j&#225; percorreu mais de 4.500 n&#237;veis automaticamente, detectando problemas que s&#227;o tediosos para QA humano: texturas ausentes, strings de texto faltando (onde o ID da string aparece no lugar do texto traduzido), elementos gr&#225;ficos sobrepostos, e artefatos de renderiza&#231;&#227;o em diferentes resolu&#231;&#245;es e orienta&#231;&#245;es de celular. Para a detec&#231;&#227;o visual automatizada, usa uma combina&#231;&#227;o de algoritmos de similaridade de contorno e a Google Vision API.</p><p>Essa parte da hist&#243;ria &#233; um lembrete de que em opera&#231;&#245;es reais de IA, <strong>o modelo central &#233; frequentemente uma pe&#231;a entre v&#225;rias</strong>. </p><blockquote><p>A estimativa de dificuldade resolve uma categoria de problema. O QA visual automatizado resolve outra. Juntos, eles liberam ciclos humanos para trabalho criativo que realmente exige julgamento humano.</p></blockquote><h2>Tr&#234;s li&#231;&#245;es para projetos de IA em empresas</h2><p>Saindo do contexto espec&#237;fico de Candy Crush, h&#225; tr&#234;s princ&#237;pios que aparecem no caso da King e que aplico mentalmente quando olho para projetos de IA em organiza&#231;&#245;es.</p><h3>Li&#231;&#227;o 1: Defini&#231;&#227;o operacional do objetivo</h3><p>O maior erro recorrente em projetos de IA aplicada &#233; come&#231;ar com um objetivo vago. &#8220;Melhorar experi&#234;ncia do cliente&#8221;, &#8220;otimizar processo comercial&#8221;, &#8220;acelerar decis&#227;o&#8221;. Esses objetivos n&#227;o s&#227;o trein&#225;veis. Um modelo precisa de uma fun&#231;&#227;o de perda, e uma fun&#231;&#227;o de perda precisa de uma m&#233;trica operacional clara.</p><p>A King n&#227;o treinou um modelo para &#8220;melhorar dificuldade dos n&#237;veis&#8221;. Treinou um modelo para prever AHSR com erro absoluto m&#233;dio abaixo de um limiar espec&#237;fico. <strong>A tradu&#231;&#227;o de um objetivo de neg&#243;cio para uma m&#233;trica operacional &#233; onde a maior parte do valor de um projeto de IA &#233; criada ou destru&#237;da</strong>. E essa tradu&#231;&#227;o quase sempre exige discuss&#245;es repetidas entre o time de produto e o time t&#233;cnico, porque as primeiras vers&#245;es costumam estar erradas.</p><p>O contraste entre King (supervised learning) e Deng (reinforcement learning) ilustra bem o ponto. Os dois come&#231;aram do mesmo jogo, mas tinham objetivos operacionais diferentes. Deng queria maximizar score, King queria prever comportamento humano. Os modelos resultantes s&#227;o incompar&#225;veis n&#227;o porque uma abordagem &#233; melhor, mas porque resolvem problemas diferentes.</p><h3>Li&#231;&#227;o 2: O problema real est&#225; nos dados, n&#227;o no modelo</h3><p>Philipp Eisen, engenheiro de machine learning na King, fez uma observa&#231;&#227;o que sintetiza bem a realidade: a maior parte do tempo em um projeto de ML n&#227;o &#233; gasto ajustando modelos, &#233; gasto colocando dados no formato certo, limpando, rotulando, transformando. Alex Nodet, tamb&#233;m da King, em entrevista ao Computer Weekly em 2019, fez uma observa&#231;&#227;o complementar: &#8220;Ter um modelo de ML treinado e aprendendo &#233; apenas metade do trabalho.&#8221; A outra metade &#233; coloc&#225;-lo em produ&#231;&#227;o de forma confi&#225;vel, monitorada, com dados chegando no formato esperado.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ToQj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ToQj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ToQj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4382913,&quot;alt&quot;:&quot;A realidade dos projetos de ML&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/194738472?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A realidade dos projetos de ML" title="A realidade dos projetos de ML" srcset="https://substackcdn.com/image/fetch/$s_!ToQj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ToQj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc035221-31de-4881-8d15-7c0e409a1f34_2816x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A realidade dos projetos de ML</figcaption></figure></div><p>Essa afirma&#231;&#227;o &#233; repetida &#224; exaust&#227;o em confer&#234;ncias de data science, e ainda assim &#233; sistematicamente subestimada em or&#231;amentos de projeto. Equipes planejam projetos de IA como se fossem 70% modelagem e 30% dados. A realidade costuma ser o inverso.</p><p>O caso da King &#233; particularmente ilustrativo porque os 12 milh&#245;es de pares estado-a&#231;&#227;o n&#227;o apareceram magicamente. Eles s&#227;o o resultado de anos de instrumenta&#231;&#227;o cuidadosa da telemetria de jogo, decis&#245;es sobre o que armazenar, arquitetura de pipelines que levam dados de dispositivos m&#243;veis para sistemas de treinamento, e infraestrutura para manter tudo isso em produ&#231;&#227;o. A King usa Google Cloud com Pub/Sub como middleware para o loop de feedback entre simula&#231;&#245;es e m&#243;dulos de an&#225;lise.</p><p>No meu trabalho no <a href="https://www.griinstitute.org/">GRI Institute</a>, onde lidero um data lake consolidando 13 fontes em BigQuery e Redshift, isso se confirma todos os dias. A parte mais cara do pipeline n&#227;o s&#227;o os modelos, s&#227;o os ETLs, a reconcilia&#231;&#227;o de identificadores, a limpeza de inconsist&#234;ncias, a constru&#231;&#227;o de taxonomia can&#244;nica, a rotulagem sem&#226;ntica. Os modelos v&#234;m depois, e costumam ser a parte simples.</p><h3>Velocidade de itera&#231;&#227;o &#233; o que muda o jogo</h3><p>O ganho econ&#244;mico real da King n&#227;o foi ter um modelo mais preciso. Foi reduzir o ciclo de feedback de calibra&#231;&#227;o de n&#237;veis de sete dias para menos de um minuto. Essa mudan&#231;a de ordem de magnitude no tempo de itera&#231;&#227;o altera completamente a economia do design.</p><p>Quando o custo de testar uma hip&#243;tese cai drasticamente, o comportamento racional muda. Em vez de preparar cuidadosamente uma hip&#243;tese antes de testar, voc&#234; testa muitas hip&#243;teses em paralelo e usa os dados para decidir quais aprofundar. Isso &#233; o princ&#237;pio que est&#225; por tr&#225;s de fen&#244;menos como A/B testing em massa em produtos digitais, e &#233; o mesmo princ&#237;pio que permite &#224; King manter o ritmo de lan&#231;amento de 15 n&#237;veis por semana.</p><p>Ao avaliar projetos de IA candidatos em uma empresa, uma boa pergunta estrat&#233;gica &#233;: <strong>que ciclo de aprendizado atualmente leva semanas e poderia ser reduzido para minutos</strong>. Esse tipo de projeto geralmente tem retorno superior a projetos que prometem apenas mais precis&#227;o em uma decis&#227;o que j&#225; &#233; tomada rapidamente.</p><h2>Por que comparar as tr&#234;s abordagens importa</h2><p>As tr&#234;s abordagens publicadas (MCTS de Poromaa, CNN supervisionada da King, DQN de Deng) s&#227;o tecnicamente interessantes por si s&#243;, mas comparadas elas ensinam algo mais geral sobre como escolher um m&#233;todo de machine learning para um problema real.</p><p>MCTS &#233; apropriado quando voc&#234; tem um simulador do ambiente e quer encontrar boas jogadas, sem precisar de dados de treinamento. &#201; computacionalmente caro em infer&#234;ncia, e n&#227;o aprende entre epis&#243;dios.</p><p>DQN &#233; apropriado quando voc&#234; quer aprender uma pol&#237;tica &#243;tima a partir de recompensa escalar, e tem recursos para rodar muitos epis&#243;dios de treinamento. Aprende uma pol&#237;tica gen&#233;rica, mas n&#227;o necessariamente uma pol&#237;tica humana.</p><p>Supervised learning em cima de dados comportamentais &#233; apropriado quando voc&#234; tem acesso a decis&#245;es humanas em escala e quer reproduzir distribui&#231;&#227;o de comportamento, n&#227;o estrat&#233;gia &#243;tima. &#201; barato em infer&#234;ncia, mas depende criticamente da qualidade e volume dos dados.</p><p>A escolha entre os tr&#234;s n&#227;o &#233; t&#233;cnica em primeiro lugar, <strong>&#233; uma escolha sobre qual problema voc&#234; est&#225; resolvendo</strong>. E essa decis&#227;o precisa vir antes da arquitetura.</p><p>O caso Candy Crush &#233; um dos exemplos mais bem documentados de IA aplicada a um problema de produto real, em escala industrial, com dados de telemetria massivos, e com alternativas acad&#234;micas bem documentadas para compara&#231;&#227;o. Para quem trabalha com dados ou IA em empresas, os detalhes s&#227;o instrutivos.</p><h2>Refer&#234;ncias</h2><p>Para quem quiser se aprofundar tecnicamente, as fontes principais s&#227;o:</p><p>Gudmundsson, S., Eisen, P., Poromaa, E., Nodet, A., Purmonen, S., Kozakowski, B., Meurling, R., Cao, L. &#8220;<a href="https://gwern.net/doc/reinforcement-learning/imitation-learning/2018-gudmundsson.pdf">Human-Like Playtesting with Deep Learning</a>&#8221;. IEEE Conference on Computational Intelligence and Games, 2018. O paper da pr&#243;pria King descrevendo a arquitetura CNN em produ&#231;&#227;o.</p><p>Deng, B. &#8220;<a href="https://cs230.stanford.edu/projects_winter_2020/reports/32031465.pdf">Learn to play Candy Crush</a>&#8221;. Stanford CS230 Deep Learning, Winter 2020. Abordagem via Deep Q-Network com c&#243;digo aberto em github.com/baolidakai/candy_crush_ai.</p><p>Poromaa, E. R. &#8220;<a href="https://www.semanticscholar.org/paper/Crushing-Candy-Crush-%3A-Predicting-Human-Success-in-Poromaa/36b634a2e23e3734ec591d58849cb102612a3029">Crushing Candy Crush: Predicting Human Success Rate in a Mobile Game using Monte-Carlo Tree Search</a>&#8221;. Master&#8217;s thesis, KTH Royal Institute of Technology, 2017.</p><p>Purmonen, S. &#8220;<a href="https://www.semanticscholar.org/paper/Predicting-Game-Level-Difficulty-Using-Deep-Neural-Purmonen/c3b44d6c836a38bef86d4cae33c7ffbdd910762c">Predicting Game Level Difficulty Using Deep Neural Networks</a>&#8221;. Master&#8217;s thesis, KTH Royal Institute of Technology, 2017.</p><p>Walsh, T. &#8220;<a href="https://arxiv.org/pdf/1403.1911">Candy Crush is NP-hard</a>&#8221;. arXiv:1403.1911, 2014.</p><p>Andelkovic, A. &#8220;<a href="https://www.infoq.com/articles/candy-crush-QA-AI-saga/">How King uses AI to test Candy Crush Saga</a>&#8221;. InfoQ, 2019.</p><p>Zhao, Y., Borovikov, I., Beirami, A., et al. &#8220;<a href="https://www.semanticscholar.org/paper/Winning-Isn-%E2%80%99-t-Everything-%3A-Training-Agents-to-Borovikov-Zhao/b7a98d2d0c31dd727d6f4e327fbf73a0ad955221">Winning Isn&#8217;t Everything: Training Human-Like Agents for Playtesting</a>&#8221;. Electronic Arts / NeurIPS, 2020.</p><p>&#8220;<a href="https://arxiv.org/pdf/2007.01137">Testing match-3 video games with Deep Reinforcement Learning</a>&#8221;. arXiv:2007.01137, 2020. Universidade Roma Tre.</p>]]></content:encoded></item><item><title><![CDATA[Como transformei dados fragmentados em uma plataforma pronta para IA, preservando todos os sistemas legados]]></title><description><![CDATA[Uma arquitetura em camadas para consolidar dezenas de fontes heterog&#234;neas, habilitar intelig&#234;ncia artificial e retroalimentar toda a opera&#231;&#227;o, sem risco e sem reescrever sistemas originais e legados]]></description><link>https://www.guilhermefavaron.com.br/p/arquitetura-consolidacao-dados-ia-sem-reescrever-sistemas-legados</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/arquitetura-consolidacao-dados-ia-sem-reescrever-sistemas-legados</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Sun, 29 Mar 2026 21:13:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!y7wF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y7wF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y7wF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 424w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 848w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 1272w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y7wF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png" width="1456" height="1020" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3eaaa447-01d8-497b-9604-d085f225451a_2412x1690.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1020,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:330468,&quot;alt&quot;:&quot;Arquitetura de consolida&#231;&#227;o de dados&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/192545449?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eaaa447-01d8-497b-9604-d085f225451a_2412x1690.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Arquitetura de consolida&#231;&#227;o de dados" title="Arquitetura de consolida&#231;&#227;o de dados" srcset="https://substackcdn.com/image/fetch/$s_!y7wF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 424w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 848w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 1272w, https://substackcdn.com/image/fetch/$s_!y7wF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cf83cb9-867c-46a4-bf9d-4145cb61eecb_2412x1690.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Arquitetura de consolida&#231;&#227;o de dados</figcaption></figure></div><p>Toda empresa com mais de tr&#234;s anos de opera&#231;&#227;o tem o mesmo problema. Ningu&#233;m planejou que os sistemas conversassem entre si. O CRM roda em MySQL, o financeiro em PostgreSQL, a plataforma de relacionamento com clientes usa outro MySQL com schema completamente diferente, o marketing alimenta planilhas e ferramentas SaaS que exp&#245;em APIs pr&#243;prias, e h&#225; dados em filas, em caches, em buckets de storage, em bancos NoSQL que algu&#233;m subiu para um projeto piloto que ficou. Cada sistema foi a melhor decis&#227;o no contexto em que nasceu. O problema real sempre foi a aus&#234;ncia de uma estrat&#233;gia de consolida&#231;&#227;o.</p><p>Quando um diretor pede &#8220;quero um relat&#243;rio cruzando engajamento com receita&#8221;, a resposta honesta em muitas empresas &#233;: &#8220;precisamos de dois dias e tr&#234;s planilhas coladas no Excel&#8221;.</p><p>Este artigo descreve a arquitetura que desenhei e implementei para resolver esse problema, com foco no racional por tr&#225;s de cada decis&#227;o.</p><div><hr></div><h2>O cen&#225;rio: dados em volume, sem utilidade pr&#225;tica</h2><p>O cliente operava com dezenas de sistemas acumulados ao longo de anos: bancos MySQL em vers&#245;es diferentes, inst&#226;ncias PostgreSQL, APIs de terceiros, planilhas compartilhadas que funcionavam como &#8220;banco de dados&#8221; de &#225;reas inteiras, dados em ferramentas SaaS acess&#237;veis apenas por exporta&#231;&#227;o manual. Os dados estavam l&#225;, em volume consider&#225;vel, mas apresentavam tr&#234;s problemas cr&#237;ticos:</p><p><strong>Fragmenta&#231;&#227;o.</strong> Uma mesma entidade (um cliente, um contrato, uma transa&#231;&#227;o) existia em dois ou tr&#234;s sistemas com schemas diferentes, IDs diferentes, e graus de atualiza&#231;&#227;o diferentes. Sem fonte &#250;nica de verdade.</p><p><strong>Obsolesc&#234;ncia.</strong> Campos abandonados, registros duplicados, categorias que j&#225; n&#227;o refletiam a opera&#231;&#227;o. O dado envelhecia dentro do banco sem que ningu&#233;m o curasse.</p><p><strong>Opacidade para IA.</strong> Este era o ponto decisivo. A empresa queria usar intelig&#234;ncia artificial para recomenda&#231;&#245;es, automa&#231;&#227;o e an&#225;lise preditiva. IA opera sobre dados consistentes e estruturados. Um modelo de linguagem que recebe contexto fragmentado produz respostas fragmentadas. Um modelo de scoring alimentado com duplicatas gera rankings distorcidos.</p><p>O desafio era ao mesmo tempo t&#233;cnico e estrat&#233;gico: tornar o patrim&#244;nio de dados da empresa utiliz&#225;vel por IA, sem interromper as opera&#231;&#245;es que dependiam dos sistemas existentes.</p><div><hr></div><h2>O princ&#237;pio: zero impacto nas origens</h2><p>A primeira decis&#227;o arquitetural, e provavelmente a mais importante, foi preservar os sistemas originais intactos.</p><p>Reescrever um CRM legado ou migrar um ERP financeiro para um banco unificado &#233; o tipo de projeto que consome meses, gera risco operacional, e frequentemente falha. J&#225; vi isso acontecer. O sistema &#8220;novo e melhor&#8221; fica pronto com 70% das funcionalidades do antigo, e a equipe operacional passa seis meses compensando as lacunas manualmente.</p><p>A abordagem que adotei parte de uma premissa simples: manter cada aplica&#231;&#227;o original rodando exatamente como est&#225;, alimentando seus respectivos bancos, APIs e storages normalmente. Cada fonte de dados, independente da tecnologia (MySQL, PostgreSQL, APIs REST, arquivos em bucket, exporta&#231;&#245;es de SaaS), passa a ser espelhada, de forma incremental e n&#227;o intrusiva, para um data lake centralizado.</p><p>Na pr&#225;tica, o time operacional n&#227;o percebe nenhuma diferen&#231;a no dia a dia. O CRM continua funcionando. O ERP continua emitindo notas. A plataforma web continua servindo usu&#225;rios. As planilhas do marketing continuam sendo preenchidas. Nos bastidores, cada altera&#231;&#227;o em cada uma dessas fontes &#233; capturada e replicada para uma camada de armazenamento separada, independente de ser um banco relacional, uma API, ou um arquivo CSV em um bucket.</p><div><hr></div><h2>A arquitetura em camadas</h2><p>O desenho final tem quatro camadas distintas, cada uma com uma responsabilidade clara.</p><h3>Camada 1: Aplica&#231;&#245;es Originais</h3><p>MySQL em diferentes vers&#245;es, PostgreSQL, APIs de SaaS, planilhas, filas de mensagens, arquivos em storage. Cada sistema continua operando como sempre operou. O &#250;nico ponto de contato &#233; o mecanismo de captura adequado a cada tecnologia: CDC para bancos relacionais, conectores de API para SaaS, ingest&#227;o de arquivos para exports e planilhas, consumers para filas. A complexidade est&#225; justamente em lidar com essa diversidade sem impor um padr&#227;o &#250;nico na origem. Esta camada &#233; apenas observada, nunca alterada.</p><h3>Camada 2: Data Lake (Espelhamento)</h3><p>Aqui os dados chegam organizados em tr&#234;s zonas:</p><p>A <strong>Raw Zone</strong> recebe o dado bruto, exatamente como saiu da origem. Sem transforma&#231;&#227;o, sem limpeza. &#201; o registro hist&#243;rico fiel do que cada sistema produziu. Fundamental para auditoria e para reprocessamento quando as regras de neg&#243;cio mudam.</p><p>A <strong>Staging Zone</strong> aplica as primeiras transforma&#231;&#245;es: limpeza, deduplica&#231;&#227;o, tipagem correta, valida&#231;&#227;o de qualidade. Um campo &#8220;telefone&#8221; que no MySQL era varchar livre aqui &#233; padronizado. Um registro duplicado &#233; identificado e marcado.</p><p>A <strong>Curated Zone</strong> &#233; onde o dado ganha estrutura de neg&#243;cio. As entidades s&#227;o consolidadas: o &#8220;cliente&#8221; que existia em tr&#234;s sistemas agora &#233; uma &#250;nica entidade com todos os atributos unificados. O modelo relacional passa a refletir a realidade do neg&#243;cio, alinhado &#224; opera&#231;&#227;o e ao vocabul&#225;rio da empresa.</p><h3>Camada 3: Enriquecimento e Intelig&#234;ncia</h3><p>Esta camada &#233; onde o dado se torna operacional para IA, e onde mora boa parte do valor diferencial da arquitetura.</p><p>Sobre a base consolidada da Curated Zone, esta camada executa processamentos que adicionam informa&#231;&#227;o. Modelos de scoring calculam propens&#227;o, relev&#226;ncia, risco. Algoritmos de matchmaking cruzam perfis para gerar recomenda&#231;&#245;es. Enriquecimento externo adiciona dados de terceiros (geocodifica&#231;&#227;o, dados de mercado, complementos cadastrais). M&#233;tricas de neg&#243;cio s&#227;o pr&#233;-calculadas e materializadas para consumo r&#225;pido.</p><p>O ponto cr&#237;tico aqui &#233; que algumas aplica&#231;&#245;es finais j&#225; vivem nesta camada. O sistema de matchmaking, por exemplo, funciona como um servi&#231;o que consome e produz dados em tempo quase-real. Esta camada &#233; parte ativa da opera&#231;&#227;o.</p><h3>Camada 4: Aplica&#231;&#245;es Finais (Consumo e Retroalimenta&#231;&#227;o)</h3><p>Dashboards, APIs inteligentes, automa&#231;&#245;es, e agentes de IA. Todas essas aplica&#231;&#245;es consomem dados que j&#225; passaram por consolida&#231;&#227;o, limpeza, e enriquecimento. Um agente de IA que responde perguntas sobre clientes consulta uma &#250;nica camada que j&#225; consolidou e enriqueceu a informa&#231;&#227;o de todas as origens.</p><p>Um aspecto fundamental desta camada &#233; que ela retroalimenta todas as anteriores. Os scores calculados por modelos de ML podem ser escritos de volta nos bancos de origem, para que as aplica&#231;&#245;es legadas se beneficiem da intelig&#234;ncia gerada. Novos dados produzidos por automa&#231;&#245;es alimentam o data lake. Resultados de agentes de IA recalculam m&#233;tricas na camada de enriquecimento. O sistema forma um ciclo: cada camada se beneficia do que as outras produzem.</p><div><hr></div><h2>Decis&#245;es que importaram</h2><p>Algumas decis&#245;es t&#233;cnicas merecem destaque por terem sido determinantes para o sucesso do projeto.</p><p><strong>CDC para bancos, conectores para o resto.</strong> Change Data Capture permite replicar apenas o que mudou nos bancos relacionais, reduzindo janela de lat&#234;ncia e custo de processamento. Mas CDC &#233; apenas uma das estrat&#233;gias. Para APIs de SaaS, h&#225; conectores que sincronizam periodicamente. Para planilhas e exports, h&#225; ingest&#227;o baseada em eventos de arquivo. A decis&#227;o de qual mecanismo usar para cada fonte &#233; parte do trabalho de arquitetura, e cada escolha errada aqui se paga em fragilidade do pipeline.</p><p><strong>Schema-on-read na Raw Zone.</strong> Permitir que os dados cheguem sem schema r&#237;gido absorve mudan&#231;as nos sistemas de origem sem quebrar o pipeline. Quando o time de produto adiciona um campo no CRM, o data lake absorve automaticamente. A transforma&#231;&#227;o acontece nas camadas seguintes, onde h&#225; controle.</p><p><strong>Materialized views para m&#233;tricas.</strong> KPIs pr&#233;-calculados e atualizados incrementalmente eliminam a necessidade de queries complexas em tempo real. O dashboard que carrega em menos de 2 segundos s&#243; &#233; poss&#237;vel porque o c&#225;lculo pesado j&#225; foi feito antecipadamente.</p><p><strong>Separa&#231;&#227;o entre enriquecimento e consumo.</strong> Manter a camada de intelig&#234;ncia separada da camada de consumo permite que diferentes aplica&#231;&#245;es usem diferentes n&#237;veis de processamento. Um dashboard simples pode consumir direto da Curated Zone. Um agente de IA precisa dos dados enriquecidos. Essa flexibilidade evita over-engineering para casos simples.</p><p><strong>Retroalimenta&#231;&#227;o entre camadas.</strong> Permitir que as aplica&#231;&#245;es finais escrevam dados de volta nas camadas anteriores transforma a arquitetura em um sistema vivo. Os dados melhoram a cada ciclo: um score gerado na Camada 3 pode refinar um processo na Camada 1, que por sua vez produz dados de melhor qualidade no pr&#243;ximo ciclo de ingest&#227;o.</p><div><hr></div><h2>O resultado: dados como ativo estrat&#233;gico</h2><p>A empresa passou a contar com uma plataforma de dados consolidada que serve como alicerce para todas as iniciativas de IA e automa&#231;&#227;o da opera&#231;&#227;o.</p><p>Funcionalidades que exigiam semanas de trabalho manual passaram a ser implement&#225;veis em dias. Novos agentes de IA podem ser conectados &#224; plataforma sem necessidade de integra&#231;&#245;es customizadas. Novas aplica&#231;&#245;es consomem dados j&#225; consolidados e enriquecidos desde o primeiro dia.</p><p>Nenhum sistema original foi descontinuado ou reescrito. O risco operacional foi zero. A equipe continuou trabalhando normalmente enquanto a infraestrutura de dados era constru&#237;da em paralelo.</p><div><hr></div><h2>Para quem enfrenta o mesmo desafio</h2><p>Se sua empresa tem dados em m&#250;ltiplos sistemas e est&#225; tentando viabilizar projetos de IA, a pergunta mais produtiva &#233;: &#8220;nossos dados est&#227;o prontos para alimentar IA de forma confi&#225;vel?&#8221;</p><p>Na grande maioria dos casos, ainda n&#227;o est&#227;o. E a solu&#231;&#227;o passa por construir uma camada de intelig&#234;ncia sobre os sistemas que j&#225; existem.</p><p>Este &#233; o tipo de projeto que tenho prazer em conceber e executar: diagn&#243;stico de maturidade de dados, desenho de arquitetura de consolida&#231;&#227;o, e implementa&#231;&#227;o de plataformas que transformam dados fragmentados em ativos estrat&#233;gicos prontos para IA.</p><p>Se quiser conversar sobre como isso se aplica &#224; sua realidade, me encontre no LinkedIn ou entre em contato diretamente.</p><div><hr></div><p><em>Guilherme Favaron &#233; especializado em arquitetura de dados e plataformas de IA. Trabalha com empresas que querem extrair valor real dos dados que j&#225; possuem.</em></p>]]></content:encoded></item><item><title><![CDATA[Como integrar IA nos seus sistemas legados: um workflow real]]></title><description><![CDATA[Criar do zero &#233; f&#225;cil. O desafio est&#225; em integrar IA nos sistemas que j&#225; rodam em produ&#231;&#227;o. Aqui est&#225; o workflow que uso no meu time.]]></description><link>https://www.guilhermefavaron.com.br/p/como-integrar-ia-nos-seus-sistemas-legados</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/como-integrar-ia-nos-seus-sistemas-legados</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Sun, 29 Mar 2026 16:01:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Bsuf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Bsuf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Bsuf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Bsuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62a5afa5-3e46-42f1-bd8a-6a678fb88e7b_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7283880,&quot;alt&quot;:&quot;Workflow de integra&#231;&#227;o de IA em Sistemas Legados&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/192508322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a5afa5-3e46-42f1-bd8a-6a678fb88e7b_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Workflow de integra&#231;&#227;o de IA em Sistemas Legados" title="Workflow de integra&#231;&#227;o de IA em Sistemas Legados" srcset="https://substackcdn.com/image/fetch/$s_!Bsuf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Bsuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa07defb-2422-4b5f-99bf-89bb5a2a562b_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Workflow de integra&#231;&#227;o de IA em Sistemas Legados</figcaption></figure></div><p>Voc&#234; j&#225; viu aqueles v&#237;deos. Algu&#233;m abre um prompt, descreve um app em tr&#234;s frases, e em dois minutos tem um produto funcionando. Login, dashboard, API, deploy. Tudo gerado por IA, do zero, sem esfor&#231;o aparente.</p><p>&#201; impressionante. E &#233; real.</p><p>Mas se voc&#234; trabalha com software de verdade, aquele sistema que j&#225; roda em produ&#231;&#227;o, atende clientes, processa pagamentos, sustenta opera&#231;&#245;es, voc&#234; sabe que a sua realidade &#233; outra. Voc&#234; est&#225; no meio de um jogo que j&#225; come&#231;ou, com regras que j&#225; foram definidas, c&#243;digo que j&#225; foi escrito, e um time que j&#225; tem seus processos.</p><p>A pergunta que realmente importa &#233;: <strong>como integrar IA no que j&#225; existe?</strong></p><div><hr></div><h2><strong>Por que come&#231;ar do zero &#233; f&#225;cil</strong></h2><p>Quando voc&#234; cria um app do zero com IA, tudo conspira a seu favor.</p><p>N&#227;o existe arquitetura legada para respeitar. N&#227;o existe d&#237;vida t&#233;cnica acumulada. N&#227;o existem depend&#234;ncias de terceiros que ningu&#233;m atualiza h&#225; dois anos. N&#227;o existe aquela regra de neg&#243;cio obscura que est&#225; num <code>if</code> no meio de um service que ningu&#233;m quer mexer.</p><p>A IA gera c&#243;digo sem conflitos porque n&#227;o h&#225; c&#243;digo anterior. Ela toma decis&#245;es de arquitetura sem restri&#231;&#245;es porque n&#227;o h&#225; restri&#231;&#245;es. O resultado &#233; limpo, coerente e bonito, exatamente porque o contexto &#233; vazio.</p><p>Mas aqui est&#225; o ponto: <strong>a esmagadora maioria do software que gera valor j&#225; existe e j&#225; est&#225; rodando</strong>. O greenfield, aquele projeto que nasce do zero, sem bagagem, &#233; a exce&#231;&#227;o. E otimizar para a exce&#231;&#227;o &#233; uma armadilha.</p><p>Se voc&#234; esperar o pr&#243;ximo projeto greenfield para come&#231;ar a usar IA, vai ficar esperando por muito tempo. O desafio de verdade est&#225; nos sistemas que j&#225; est&#227;o a&#237;.</p><div><hr></div><h2><strong>O desafio real: IA dentro de sistemas que j&#225; funcionam</strong></h2><p>Integrar IA em sistemas legados &#233; um problema fundamentalmente diferente de criar algo do zero. Alguns dos motivos:</p><p><strong>O c&#243;digo n&#227;o foi escrito pensando em IA.</strong> A IA precisa entender contexto, e o contexto de um sistema legado &#233; vasto, distribu&#237;do, e &#224;s vezes contradit&#243;rio. M&#243;dulos que foram escritos por pessoas diferentes, em momentos diferentes, com premissas diferentes. Documenta&#231;&#227;o desatualizada ou inexistente. Testes que cobrem o caminho feliz mas ignoram os edge cases que realmente importam.</p><p><strong>Os processos s&#227;o enraizados.</strong> Times t&#234;m seus rituais. H&#225; resist&#234;ncia, muitas vezes leg&#237;tima, a mudar o que funciona. &#8220;A gente sempre fez assim&#8221; carrega tanto in&#233;rcia quanto confian&#231;a num processo que j&#225; provou que funciona em produ&#231;&#227;o.</p><p><strong>O risco &#233; real.</strong> Um erro num app que acabou de nascer &#233; um inconveniente. Um erro num sistema em produ&#231;&#227;o pode significar clientes afetados, receita perdida, dados corrompidos. A margem para experimenta&#231;&#227;o &#233; menor.</p><p>Por tudo isso, o objetivo de integrar IA em sistemas legados &#233; <strong>aumentar a capacidade do time</strong>: automatizar o que &#233; repetitivo, acelerar o que &#233; lento, e trazer uma segunda perspectiva para decis&#245;es que antes dependiam de uma pessoa s&#243;.</p><div><hr></div><h2><strong>Um framework pr&#225;tico: como integrei IA no meu time</strong></h2><p>Depois de testar diferentes abordagens, cheguei a um workflow que funciona. Ele roda no meu dia a dia, validado em projetos reais. A regra &#233; simples: <strong>toda mudan&#231;a de c&#243;digo segue este fluxo, sem exce&#231;&#227;o</strong>.</p><p>O workflow tem tr&#234;s fases, com gates expl&#237;citos entre elas.</p><h3><strong>Fase 1: Triagem (de feedback a issues)</strong></h3><p>Tudo come&#231;a com input desestruturado. Conversas, mensagens, calls, PDFs, observa&#231;&#245;es de usu&#225;rios. O tipo de coisa que normalmente se perde ou vira um &#8220;depois a gente v&#234;&#8221;.</p><p>O primeiro passo &#233; transformar esse ru&#237;do em problemas concretos. Eu e o agente de IA analisamos juntos cada input e definimos: <strong>&#8220;o problema &#233; este&#8221;</strong>. Uma issue de engenharia, com contexto t&#233;cnico suficiente para que algu&#233;m (humano ou IA) consiga atuar.</p><p>O agente de IA ent&#227;o cria cada issue no reposit&#243;rio do projeto no GitHub, com descri&#231;&#227;o clara do problema.</p><p><strong>Por que isso importa:</strong> a maioria dos times perde valor nessa etapa. O feedback existe, mas nunca vira uma issue rastre&#225;vel. Com o agente de IA, a triagem acontece em tempo real e o custo de transformar feedback em artefato de engenharia cai drasticamente.</p><h3><strong>Fase 2: Planejamento (de issues a plano)</strong></h3><p>Com as issues criadas, o agente de IA avalia cada uma, tanto isoladamente quanto no contexto global do projeto. &#192;s vezes duas issues que parecem independentes s&#227;o, na verdade, sintomas do mesmo problema. O agente identifica isso e pode consolid&#225;-las num &#250;nico plano de a&#231;&#227;o.</p><p>O plano &#233; detalhado: o que muda, por que muda, como muda. Ele &#233; registrado numa ferramenta de gest&#227;o. Pode ser Notion, Jira, Trello, ou alternativas open source como <strong>Plane</strong>, <strong>OpenProject</strong>, <strong>LeanTime</strong> ou <strong>Taiga</strong>. O importante &#233; que o plano exista como artefato vis&#237;vel, acess&#237;vel, e separado do c&#243;digo.</p><p>Ent&#227;o eu leio o plano e aprovo (ou pe&#231;o ajustes). <strong>Nada executa sem plano aprovado.</strong> Esse &#233; o primeiro gate.</p><p><strong>Por que isso importa:</strong> a IA &#233; r&#225;pida para executar, mas isso pode ser perigoso sem dire&#231;&#227;o. O plano &#233; o freio intencional que garante que a velocidade da IA est&#225; apontada na dire&#231;&#227;o certa.</p><h3><strong>Fase 3: Execu&#231;&#227;o (de plano aprovado a deploy)</strong></h3><p>Com o plano aprovado, a execu&#231;&#227;o segue um fluxo disciplinado:</p><ol><li><p><strong>Branch.</strong> O agente de IA cria uma branch (<code>feat/xxx</code> ou <code>fix/xxx</code>) a partir da main. Nunca trabalha direto na main.</p></li><li><p><strong>Implementa&#231;&#227;o.</strong> O agente implementa e commita na branch, seguindo o plano aprovado.</p></li><li><p><strong>Pull Request.</strong> O agente abre um PR no GitHub com descri&#231;&#227;o clara do que muda e por qu&#234;.</p></li><li><p><strong>Revis&#227;o.</strong> Aqui entra um conceito importante: <strong>a revis&#227;o do PR pode (e deve) envolver uma segunda IA</strong>. A mesma intelig&#234;ncia que escreveu o c&#243;digo carrega vi&#233;s de autoria, pelo mesmo motivo que um desenvolvedor n&#227;o deveria aprovar seu pr&#243;prio PR. Uma segunda IA traz uma perspectiva independente, aumentando a assertividade da an&#225;lise cr&#237;tica. Mas o merge &#233; <strong>sempre</strong> decis&#227;o humana.</p></li><li><p><strong>Deploy.</strong> Build e deploy via CI/CD (GitHub Actions, pipelines automatizados, ou manualmente quando necess&#225;rio).</p></li><li><p><strong>Status.</strong> Atualiza&#231;&#227;o do status na ferramenta de gest&#227;o, fechando o ciclo.</p></li></ol><h3><strong>Os gates</strong></h3><p>Tr&#234;s regras inegoci&#225;veis:</p><ul><li><p><strong>Nada executa sem plano aprovado.</strong> A IA n&#227;o tem autonomia para decidir o que fazer, s&#243; como fazer.</p></li><li><p><strong>Nada vai direto pra main.</strong> Toda mudan&#231;a passa por PR, sempre.</p></li><li><p><strong>Merge &#233; sempre decis&#227;o humana.</strong> A IA pode sugerir, implementar, e at&#233; revisar, mas a palavra final &#233; do l&#237;der t&#233;cnico.</p></li></ul><blockquote><p>A IA &#233; o motor. O humano &#233; o volante.</p></blockquote><div><hr></div><h2><strong>Por que usar uma segunda IA para revisar PRs</strong></h2><p>Esse ponto merece destaque porque &#233; contra-intuitivo. Se voc&#234; j&#225; tem uma IA gerando c&#243;digo, por que usar outra para revisar?</p><p>Pelo mesmo motivo que code review existe: <strong>vi&#233;s do autor</strong>. Quando uma IA (ou um humano) escreve c&#243;digo, ela toma decis&#245;es impl&#237;citas sobre nomes, sobre estrutura, sobre o que precisa ou n&#227;o de tratamento de erro. Essas decis&#245;es ficam invis&#237;veis para quem as tomou.</p><p>Uma segunda IA, sem o contexto de autoria, olha para o c&#243;digo com olhos frescos. Ela questiona premissas que a primeira IA deu como certas. Ela identifica edge cases que o autor n&#227;o considerou. Ela avalia se o c&#243;digo realmente faz o que o PR diz que faz.</p><p>Na pr&#225;tica, isso aumenta significativamente a qualidade do que chega para revis&#227;o humana. O l&#237;der t&#233;cnico pode ser o &#250;ltimo filtro, focando em decis&#245;es de arquitetura e de neg&#243;cio em vez de ca&#231;ar bugs triviais.</p><div><hr></div><h2><strong>O caminho realista</strong></h2><p>Se voc&#234; est&#225; esperando o momento perfeito para integrar IA no seu time, tenho uma m&#225; not&#237;cia: ele n&#227;o existe. O momento &#233; agora, com o sistema que voc&#234; j&#225; tem, com o time que voc&#234; j&#225; tem.</p><p>Algumas li&#231;&#245;es que aprendi:</p><ul><li><p><strong>Comece pelo processo.</strong> Antes de pedir para uma IA escrever c&#243;digo no seu sistema legado, defina como ela vai trabalhar. Qual &#233; o fluxo? Quais s&#227;o os gates? Quem aprova o qu&#234;? O workflow vem antes da implementa&#231;&#227;o.</p></li><li><p><strong>Trate a IA como membro do time.</strong> Um membro do time tem responsabilidades definidas, participa de processos, e &#233; cobrado por resultados. Quando voc&#234; define que o agente de IA &#233; respons&#225;vel por criar issues, elaborar planos e abrir PRs, ele passa a ter um papel claro dentro do time.</p></li><li><p><strong>Mantenha o humano no controle das decis&#245;es que importam.</strong> A IA acelera execu&#231;&#227;o, mas as decis&#245;es de o que fazer e quando fazer continuam sendo humanas. Velocidade de m&#225;quina com julgamento humano.</p></li><li><p><strong>Busque disciplina.</strong> O workflow que descrevi tem falhas. Mas funciona porque tem regras claras, gates expl&#237;citos, e artefatos rastre&#225;veis. &#201; isso que permite escalar o uso de IA sem perder o controle.</p></li></ul><div><hr></div><p>Criar um app do zero com IA &#233; f&#225;cil. Integrar IA nos seus sistemas legados &#233; onde est&#225; o trabalho de verdade, e onde est&#225; o maior impacto.</p><p>O c&#243;digo que importa j&#225; existe. O que voc&#234; vai fazer com ele?</p>]]></content:encoded></item><item><title><![CDATA[Self-Improvement Architecture: um padrão para aplicações que aprendem com uso real]]></title><description><![CDATA[A maioria das aplica&#231;&#245;es recebe feedback dos usu&#225;rios e n&#227;o faz nada com ele. Este padr&#227;o fecha essa lacuna com agentes, guardrails e humano no loop onde importa.]]></description><link>https://www.guilhermefavaron.com.br/p/self-improvement-architecture-aplicacoes-que-aprendem-com-uso-real</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/self-improvement-architecture-aplicacoes-que-aprendem-com-uso-real</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Mon, 23 Mar 2026 00:55:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZTF6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZTF6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZTF6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZTF6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/abac5445-9008-4183-91c3-1bce221ea754_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f24b724-8f05-4fd9-a4e3-9dce77038591_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7201708,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/191814669?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f24b724-8f05-4fd9-a4e3-9dce77038591_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZTF6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ZTF6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabac5445-9008-4183-91c3-1bce221ea754_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Esquema de Aplica&#231;&#245;es com Self-improvement Architecture (SIA)</figcaption></figure></div><p>Existe uma lacuna estrutural entre o momento em que um usu&#225;rio encontra um problema em uma aplica&#231;&#227;o e o momento em que esse problema &#233; corrigido. Essa lacuna tem nome: ela se chama processo manual de reporte, triagem e prioriza&#231;&#227;o. E em praticamente todas as equipes de produto que conhe&#231;o, ela &#233; grande o suficiente para que boa parte dos problemas nunca chegue a ser resolvida.</p><p>O volume de sinais cresce mais r&#225;pido do que a capacidade de process&#225;-los com aten&#231;&#227;o: erros de runtime, feedback qualitativo, solicita&#231;&#245;es de melhoria, tickets do suporte. O resultado &#233; um backlog que se torna cemit&#233;rio.</p><p>A <strong>Self-Improvement Architecture</strong> &#233; um padr&#227;o de design de sistemas que prop&#245;e fechar essa lacuna com automa&#231;&#227;o inteligente e agentes de IA. A forma assistida: m&#225;quinas fazem o trabalho de baixo valor cognitivo e humanos concentram sua aten&#231;&#227;o onde ela &#233; insubstitu&#237;vel.</p><blockquote><p><strong>Self-Improvement Architecture (SIA)</strong> &#233; um conjunto de camadas de software que captura sinais de qualidade de uma aplica&#231;&#227;o em produ&#231;&#227;o, normaliza e prioriza esses sinais automaticamente, e alimenta um agente de IA capaz de diagnosticar problemas e propor corre&#231;&#245;es no pr&#243;prio c&#243;digo-fonte da aplica&#231;&#227;o, com supervis&#227;o humana nos pontos cr&#237;ticos.</p></blockquote><p>Diferente de pr&#225;ticas convencionais de monitoramento e gest&#227;o de defeitos, a SIA fecha o loop inteiramente dentro do ciclo de desenvolvimento: da observa&#231;&#227;o em produ&#231;&#227;o at&#233; o pull request, passando por triagem, diagn&#243;stico e gera&#231;&#227;o de c&#243;digo.</p><div><hr></div><h2>Por que o momento &#233; agora</h2><p>A conversa sobre agentes de IA gerando c&#243;digo existe h&#225; algum tempo. O que mudou recentemente &#233; a maturidade dos componentes que tornam um sistema assim vi&#225;vel em produ&#231;&#227;o: ferramentas de observabilidade que capturam contexto rico de sess&#227;o, modelos de linguagem com janelas de contexto grandes o suficiente para processar arquivos de c&#243;digo real, e infraestruturas de agentes que permitem controle granular sobre o que o sistema pode e n&#227;o pode fazer.</p><p>A pergunta central tamb&#233;m mudou. Saiu de &#8220;&#233; tecnicamente poss&#237;vel?&#8221; e passou a ser &#8220;como fazer isso de forma que o benef&#237;cio supere consistentemente o risco?&#8221;. &#201; essa pergunta que o padr&#227;o SIA tenta responder.</p><blockquote><p><em>&#8220;Um agente que age sem crit&#233;rio vira f&#225;brica de tickets. Um agente com crit&#233;rio vira alavanca de produtividade.&#8221;</em></p></blockquote><div><hr></div><h2>As cinco camadas do padr&#227;o</h2><p>A SIA &#233; organizada em camadas independentes. Cada uma pode ser implementada separadamente, e a ordem importa: cada camada s&#243; gera valor se a anterior estiver funcionando bem.</p><p><strong>Camada 01 &#8212; Captura</strong></p><p>Instrumenta&#231;&#227;o da aplica&#231;&#227;o para coletar tr&#234;s tipos de sinal: erros de runtime com contexto de sess&#227;o, feedback expl&#237;cito do usu&#225;rio via widget integrado, e sinais comportamentais passivos como rage clicks, abandono de fluxo e endpoints lentos. Esses canais s&#227;o deliberadamente separados, porque cada tipo de sinal tem crit&#233;rios diferentes de triagem.</p><p><strong>Camada 02 &#8212; Normaliza&#231;&#227;o e Triagem</strong></p><p>Um servi&#231;o intermedi&#225;rio recebe todos os sinais e os converte para um schema &#250;nico. Aqui acontecem deduplica&#231;&#227;o por fingerprint, enriquecimento com dados de contexto e c&#225;lculo de score de prioridade. Nenhum sinal chega ao reposit&#243;rio antes de passar por essa camada. &#201; o filtro que impede o backlog t&#243;xico.</p><p><strong>Camada 03 &#8212; Gest&#227;o de Issues</strong></p><p>O sistema de controle de vers&#227;o funciona como hub de execu&#231;&#227;o t&#233;cnica. Issues chegam j&#225; estruturadas com contexto, evid&#234;ncias e score. Um sistema de labels e pipeline de projeto torna o estado de cada problema vis&#237;vel sem esfor&#231;o humano de atualiza&#231;&#227;o manual.</p><p><strong>Camada 04 &#8212; Agente</strong></p><p>O agente de IA entra em cena somente ap&#243;s a camada anterior. Ele l&#234; issues que atingiram um gate expl&#237;cito de elegibilidade, produz diagn&#243;stico, identifica arquivos afetados no reposit&#243;rio e, para problemas de baixo risco com crit&#233;rios definidos, abre um pull request em branch separada com o racional completo documentado.</p><p><strong>Camada 05 &#8212; Humana</strong></p><p>O humano &#233; posicionado onde sua aten&#231;&#227;o tem maior valor: decidindo o que priorizar, aplicando o gate de elegibilidade para o agente e revisando pull requests antes do merge. Merge autom&#225;tico e a&#231;&#227;o do agente em &#225;reas sens&#237;veis sem aprova&#231;&#227;o expl&#237;cita est&#227;o fora do escopo do padr&#227;o.</p><div><hr></div><h2>O fluxo completo</h2><pre><code><code>[ APLICA&#199;&#195;O ]
    &#9500;&#9472;&#9472; erros runtime
    &#9500;&#9472;&#9472; feedback expl&#237;cito
    &#9492;&#9472;&#9472; sinais comportamentais
           &#9474;
           &#9660;
[ GATEWAY ]  &#9472;&#9472; normaliza, deduplica, pontua
           &#9474;
           &#9660;
[ ISSUES ]   &#9472;&#9472; estruturadas + labels + pipeline
           &#9474;
     gate: ai-ready?
     &#9500;&#9472;&#9472; N&#195;O &#9472;&#9472;&#9654; [ HUMANO ] decide: prioriza / descarta
     &#9492;&#9472;&#9472; SIM &#9472;&#9472;&#9654; [ AGENTE ] diagnostica + plano
                     &#9474;
           risco low?
           &#9500;&#9472;&#9472; N&#195;O &#9472;&#9472;&#9654; [ HUMANO ] decide
           &#9492;&#9472;&#9472; SIM &#9472;&#9472;&#9654; [ PR ]   branch separada
                               &#9474;
                               &#9660;
                       [ HUMANO ] revisa + aprova + merge</code></code></pre><div><hr></div><h2>O gate de elegibilidade &#8212; a pe&#231;a mais importante</h2><p>A diferen&#231;a entre um sistema de self-improvement que funciona e um que degenera em caos est&#225; quase inteiramente no gate de elegibilidade para a&#231;&#227;o aut&#244;noma do agente.</p><p>A l&#243;gica &#233; simples: o agente age sozinho apenas quando tr&#234;s condi&#231;&#245;es s&#227;o satisfeitas simultaneamente. O problema &#233; <strong>bem delimitado</strong>: stack trace claro, m&#243;dulo identific&#225;vel, reprodu&#231;&#227;o documentada. A mudan&#231;a &#233; de <strong>baixo risco</strong>: sem tocar regras de neg&#243;cio, autentica&#231;&#227;o, dados financeiros, migra&#231;&#245;es destrutivas ou arquitetura. E um humano <strong>aplicou explicitamente</strong> a label de elegibilidade ap&#243;s revisar o diagn&#243;stico inicial.</p><p>O gate existe porque alguns tipos de problema requerem julgamento contextual que exige aten&#231;&#227;o humana deliberada.</p><p><strong>O agente pode agir sozinho quando:</strong></p><ul><li><p>Bug com stack trace claro e reproduz&#237;vel</p></li><li><p>Corre&#231;&#227;o de texto ou label na UI</p></li><li><p>Valida&#231;&#227;o de campo ausente ou incorreta</p></li><li><p>Tratamento de erro faltando</p></li><li><p>Tipagem incorreta ou ausente</p></li><li><p>Teste unit&#225;rio faltando para fun&#231;&#227;o isolada</p></li><li><p>Refactor localizado sem mudan&#231;a de comportamento</p></li></ul><p><strong>O humano &#233; obrigat&#243;rio quando:</strong></p><ul><li><p>Mudan&#231;a de regra de neg&#243;cio ou l&#243;gica de dom&#237;nio</p></li><li><p>Qualquer coisa relacionada a auth ou permiss&#245;es</p></li><li><p>Cobran&#231;a, faturamento, dados financeiros</p></li><li><p>Migration destrutiva de banco de dados</p></li><li><p>Mudan&#231;a de arquitetura ou depend&#234;ncia principal</p></li><li><p>Issues sem reproduzibilidade m&#237;nima documentada</p></li></ul><p>O gate precisa ser definido por escrito, versionado e revisado periodicamente. &#192; medida que o sistema ganha hist&#243;rico, voc&#234; ter&#225; dados reais sobre a taxa de assertividade do agente e poder&#225; expandir ou contrair os crit&#233;rios com base em evid&#234;ncia.</p><div><hr></div><h2>Os seis princ&#237;pios do padr&#227;o</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZGpU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZGpU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZGpU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db4c5b77-47e6-4950-bed0-17bef5c18140_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6548720,&quot;alt&quot;:&quot;Princ&#237;pios do padr&#227;o de Self-improvement Architecture para Aplica&#231;&#245;es&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/191814669?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb4c5b77-47e6-4950-bed0-17bef5c18140_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Princ&#237;pios do padr&#227;o de Self-improvement Architecture para Aplica&#231;&#245;es" title="Princ&#237;pios do padr&#227;o de Self-improvement Architecture para Aplica&#231;&#245;es" srcset="https://substackcdn.com/image/fetch/$s_!ZGpU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!ZGpU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ef44074-8228-4c90-b0e7-49f16eef8a70_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Princ&#237;pios do padr&#227;o de Self-improvement Architecture para Aplica&#231;&#245;es</figcaption></figure></div><p><strong>1. Sinal antes de ru&#237;do</strong></p><p>Nenhum evento deve virar issue diretamente. Todo sinal passa por normaliza&#231;&#227;o, deduplica&#231;&#227;o e scoring antes de qualquer cria&#231;&#227;o de ticket. Um sistema de self-improvement mal configurado gera backlog mais r&#225;pido do que resolve problemas.</p><p><strong>2. Canais separados, crit&#233;rios separados</strong></p><p>Erro de runtime e solicita&#231;&#227;o de feature s&#227;o animais diferentes. O fluxo de triagem, os crit&#233;rios de prioriza&#231;&#227;o e as expectativas de resposta s&#227;o distintos para cada tipo. Mistur&#225;-los &#233; uma das causas mais comuns de falha em sistemas desse tipo.</p><p><strong>3. O agente prop&#245;e, o humano aprova</strong></p><p>Mesmo nos casos de baixo risco onde o agente abre PR, o merge &#233; sempre humano. A arquitetura correta para construir confian&#231;a progressiva no sistema &#233; essa: autonomia restrita no in&#237;cio, expandida gradualmente com base em dados reais de assertividade.</p><p><strong>4. Guardrails como infraestrutura, n&#227;o como regras</strong></p><p>Branch protection, CODEOWNERS, CI obrigat&#243;ria e limites de permiss&#227;o do agente devem ser configurados como infraestrutura t&#233;cnica, n&#227;o como pol&#237;tica documentada. Os limites precisam existir na camada de execu&#231;&#227;o, porque um agente com permiss&#227;o para fazer algo eventualmente tentar&#225; faz&#234;-lo.</p><p><strong>5. Transpar&#234;ncia do racional</strong></p><p>Todo PR aberto pelo agente deve documentar: o problema identificado, os arquivos afetados, a solu&#231;&#227;o escolhida, alternativas descartadas e o n&#237;vel de confian&#231;a. Um PR sem racional documentado n&#227;o deve ser mergeado.</p><p><strong>6. Implementa&#231;&#227;o faseada</strong></p><p>A SIA cresce em etapas. A fase 1 entrega valor imediato com risco baixo: captura estruturada, triagem e diagn&#243;stico sem autonomia de PR. As fases seguintes expandem autonomia gradualmente, baseadas em m&#233;tricas reais de qualidade do sistema.</p><div><hr></div><h2>Fases de implementa&#231;&#227;o recomendadas</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nfEw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nfEw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nfEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b088f0a-58f9-46a1-92cd-e6b030653eb3_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7126699,&quot;alt&quot;:&quot;Fases de implementa&#231;&#227;o do modelo SIA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/191814669?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b088f0a-58f9-46a1-92cd-e6b030653eb3_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Fases de implementa&#231;&#227;o do modelo SIA" title="Fases de implementa&#231;&#227;o do modelo SIA" srcset="https://substackcdn.com/image/fetch/$s_!nfEw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!nfEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74f59f75-a032-44c6-8dc8-5465320c139b_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fases de implementa&#231;&#227;o do modelo SIA</figcaption></figure></div><p><strong>Fase 1 &#8212; Captura + Triagem</strong></p><p>Instrumentar a aplica&#231;&#227;o com ferramenta de observabilidade. Implementar widget de feedback com contexto da rota atual. Construir o gateway de normaliza&#231;&#227;o. Configurar templates de issue e taxonomia de labels. O agente apenas comenta diagn&#243;stico, sem abrir PRs. Esta fase j&#225; entrega valor significativo e valida o modelo.</p><p><strong>Fase 2 &#8212; Agente Semi-Aut&#244;nomo</strong></p><p>Definir e documentar os crit&#233;rios do gate de elegibilidade. Habilitar o agente a abrir PRs em issues low-risk + ai-ready. Configurar branch protection, CODEOWNERS e CI obrigat&#243;ria. Todo PR revisado e aprovado por humano antes do merge. Come&#231;ar a coletar m&#233;tricas de assertividade.</p><p><strong>Fase 3 &#8212; Loop Completo</strong></p><p>Deduplica&#231;&#227;o madura com clustering de feedback similar. Identifica&#231;&#227;o proativa de padr&#245;es recorrentes. Analytics de tempo at&#233; corre&#231;&#227;o, taxa de reabertura e assertividade do agente por tipo de problema. Expans&#227;o criteriosa dos crit&#233;rios do gate com base nos dados acumulados.</p><div><hr></div><h2>Um ciclo completo na pr&#225;tica</h2><p>Para tornar o padr&#227;o concreto, vale acompanhar um &#250;nico problema do come&#231;o ao fim, com as ferramentas reais em cada etapa.</p><p><strong>Cen&#225;rio:</strong> um usu&#225;rio tenta exportar um relat&#243;rio em PDF dentro da aplica&#231;&#227;o. O bot&#227;o n&#227;o responde. Ele tenta tr&#234;s vezes e desiste.</p><div><hr></div><p><strong>Etapa 1 &#8212; O Sentry captura o erro</strong></p><p>O SDK do Sentry, instalado na aplica&#231;&#227;o, registra automaticamente a exce&#231;&#227;o lan&#231;ada pelo componente de exporta&#231;&#227;o. O evento chega ao Sentry com stack trace completo, identificador da sess&#227;o, vers&#227;o do release, navegador e a URL exata onde ocorreu. O Sentry tamb&#233;m grava um Session Replay dos &#250;ltimos 60 segundos de navega&#231;&#227;o do usu&#225;rio.</p><p>Neste ponto, o erro existe no Sentry. O reposit&#243;rio ainda n&#227;o sabe que ele aconteceu.</p><div><hr></div><p><strong>Etapa 2 &#8212; O gateway recebe o evento e decide</strong></p><p>O Sentry dispara um webhook para o gateway (neste caso, um workflow no n8n). O gateway executa tr&#234;s verifica&#231;&#245;es antes de qualquer a&#231;&#227;o:</p><ul><li><p><strong>Deduplica&#231;&#227;o:</strong> j&#225; existe uma issue aberta com o mesmo fingerprint? Se sim, incrementa o contador e atualiza a &#250;ltima ocorr&#234;ncia. Se n&#227;o, continua.</p></li><li><p><strong>Limiar:</strong> este erro atingiu o threshold de cria&#231;&#227;o? O threshold configurado &#233; 5 ocorr&#234;ncias em 24 horas ou 2 usu&#225;rios &#250;nicos afetados. O erro aconteceu com 3 usu&#225;rios em 4 horas. Passa.</p></li><li><p><strong>Scoring:</strong> o gateway calcula o score combinando severidade (o bot&#227;o de exporta&#231;&#227;o &#233; rota cr&#237;tica), frequ&#234;ncia (3 ocorr&#234;ncias em 4 horas) e confian&#231;a de diagn&#243;stico (stack trace presente, m&#243;dulo identificado). Score resultante: 74 de 100.</p></li></ul><p>O gateway monta o payload da issue com todos os dados coletados e chama a GitHub Issues API.</p><div><hr></div><p><strong>Etapa 3 &#8212; A issue &#233; criada no GitHub com contexto completo</strong></p><p>A issue abre automaticamente com o template padronizado preenchido:</p><pre><code><code>T&#237;tulo: [bug] Exporta&#231;&#227;o de PDF falha silenciosamente em /reports/export

Contexto: source:sentry | route:/reports/export | release:v2.4.1 | browser:Chrome 122

Sintoma: TypeError: Cannot read properties of undefined (reading 'generate')
  em ExportButton.tsx linha 47

Evid&#234;ncia:
  - Stack trace completo: [link]
  - Session Replay: [link Sentry]
  - Ocorr&#234;ncias: 3 | Usu&#225;rios afetados: 3 | Janela: 4h

Impacto: rota cr&#237;tica de exporta&#231;&#227;o | score: 74

Labels aplicadas automaticamente:
  source:sentry | type:bug | priority:p1 | status:triage-needed | risk:low | module:reports</code></code></pre><p>O GitHub Projects move a issue automaticamente para a coluna <strong>Needs Triage</strong>.</p><div><hr></div><p><strong>Etapa 4 &#8212; O agente faz a triagem</strong></p><p>Um GitHub Actions workflow dispara ao detectar a label <code>status:triage-needed</code>. Ele chama o agente (Claude via API) passando o conte&#250;do completo da issue, o stack trace e os arquivos relevantes do reposit&#243;rio lidos via GitHub API.</p><p>O agente responde com um coment&#225;rio na issue:</p><pre><code><code>Diagn&#243;stico: o m&#233;todo `generate()` est&#225; sendo chamado sobre o objeto
`pdfService` antes de sua inicializa&#231;&#227;o ass&#237;ncrona completar. O componente
`ExportButton.tsx` n&#227;o aguarda a Promise de setup do servi&#231;o antes de
expor o bot&#227;o como clic&#225;vel.

Arquivo afetado: src/components/ExportButton.tsx (linha 47)
Causa prov&#225;vel: aus&#234;ncia de await no m&#233;todo initializePdfService()

Risco estimado: baixo. Mudan&#231;a localizada em um &#250;nico componente,
sem impacto em l&#243;gica de neg&#243;cio ou dados.

Crit&#233;rios de aceite sugeridos:
  - exporta&#231;&#227;o conclui com sucesso ap&#243;s a corre&#231;&#227;o
  - bot&#227;o permanece desabilitado durante inicializa&#231;&#227;o do servi&#231;o
  - teste unit&#225;rio cobre o caso de chamada antes do setup completar

Este problema atende aos crit&#233;rios do gate ai-ready. Aguardando
decis&#227;o do respons&#225;vel para prosseguir.</code></code></pre><p>O agente aplica a label <code>status:ai-ready</code> e move a issue para a coluna correspondente no Projects.</p><div><hr></div><p><strong>Etapa 5 &#8212; O humano aplica o gate</strong></p><p>O dev abre a issue, l&#234; o diagn&#243;stico, confirma que faz sentido e mant&#233;m a label <code>status:ai-ready</code>. Esse gesto expl&#237;cito &#233; o gate. Sem ele, o agente n&#227;o age.</p><div><hr></div><p><strong>Etapa 6 &#8212; O agente abre o pull request</strong></p><p>Com o gate aplicado, o workflow dispara novamente. O agente l&#234; os arquivos afetados, gera a corre&#231;&#227;o, cria uma branch <code>fix/export-button-async-init</code> e abre um PR com o seguinte corpo:</p><pre><code><code>Corrige: #147 &#8212; Exporta&#231;&#227;o de PDF falha silenciosamente

Problema: ExportButton chamava pdfService.generate() antes da
inicializa&#231;&#227;o ass&#237;ncrona do servi&#231;o completar.

Solu&#231;&#227;o: adicionado await em initializePdfService() e estado de
loading no bot&#227;o durante o setup, prevenindo cliques prematuros.

Arquivos alterados:
  - src/components/ExportButton.tsx
  - src/services/pdfService.ts (ajuste no tipo de retorno)

Testes adicionados:
  - ExportButton.test.tsx: caso de clique antes do setup completar

Alternativas descartadas: memoiza&#231;&#227;o do servi&#231;o no n&#237;vel do m&#243;dulo
descartada por introduzir estado global desnecess&#225;rio.

Confian&#231;a: alta. Causa identificada com precis&#227;o no stack trace.</code></code></pre><p>O PR passa pela CI: typecheck, lint, testes unit&#225;rios, build. Tudo verde. O GitHub notifica o dev para revis&#227;o.</p><div><hr></div><p><strong>Etapa 7 &#8212; O humano revisa e mergeia</strong></p><p>O dev l&#234; o diff, valida a l&#243;gica, confirma que os testes cobrem o caso e aprova o merge. O PR &#233; mergeado via rebase.</p><p>O agente fecha a issue original com um coment&#225;rio linkando o PR. O gateway registra o ciclo no Notion: tipo de problema, solu&#231;&#227;o aplicada, tempo da primeira ocorr&#234;ncia at&#233; o merge (neste caso, 6 horas), e assertividade do diagn&#243;stico (confirmada pelo dev na revis&#227;o).</p><div><hr></div><p><strong>O que este ciclo demonstra</strong></p><p>O usu&#225;rio encontrou o bug &#224;s 14h. A issue estava criada, triada e com diagn&#243;stico &#224;s 14h12. O PR estava aberto &#224;s 14h18. O dev revisou e mergeou &#224;s 20h, sem precisar reproduzir o problema do zero, sem procurar contexto em Slack ou Notion, e sem triagem manual.</p><p>O tempo de resolu&#231;&#227;o foi de 6 horas. O tempo de aten&#231;&#227;o humana no ciclo inteiro foi de aproximadamente 10 minutos.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_FkO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_FkO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_FkO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8ac7d1fe-2035-4ff2-8945-e99ce299f295_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6923674,&quot;alt&quot;:&quot;Stack de referencia para implementar o ciclo de Self-Improvement Architecture para Aplica&#231;&#245;es&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/191814669?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ac7d1fe-2035-4ff2-8945-e99ce299f295_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Stack de referencia para implementar o ciclo de Self-Improvement Architecture para Aplica&#231;&#245;es" title="Stack de referencia para implementar o ciclo de Self-Improvement Architecture para Aplica&#231;&#245;es" srcset="https://substackcdn.com/image/fetch/$s_!_FkO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!_FkO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdb97cb5-c2f7-44aa-8495-647fa54b7551_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Stack de referencia para implementar o ciclo de Self-Improvement Architecture para Aplica&#231;&#245;es</figcaption></figure></div><p></p><div><hr></div><h2>O que o padr&#227;o n&#227;o resolve</h2><p>Ser honesto sobre as limita&#231;&#245;es &#233; parte do que torna um padr&#227;o &#250;til.</p><p>A SIA pressup&#245;e clareza de vis&#227;o de produto. Uma equipe sem dire&#231;&#227;o vai apenas corrigir mais r&#225;pido coisas que talvez n&#227;o devessem existir. O padr&#227;o tamb&#233;m pressup&#245;e testes automatizados robustos como condi&#231;&#227;o para que qualquer PR do agente passe pela CI.</p><p>H&#225; um risco espec&#237;fico que vale nomear: agentes gerando PRs em cad&#234;ncia alta podem criar uma ilus&#227;o de progresso. Muitos commits, muitos fechamentos de issue, e m&#233;tricas de neg&#243;cio estagnadas. A medida de sucesso da SIA &#233; a redu&#231;&#227;o do tempo entre identifica&#231;&#227;o de problema e resolu&#231;&#227;o com impacto mensur&#225;vel para o usu&#225;rio, n&#227;o o volume de PRs gerados.</p><p><strong>Onde o padr&#227;o funciona bem:</strong></p><ul><li><p>Aplica&#231;&#245;es com usu&#225;rios ativos que geram sinais cont&#237;nuos de qualidade</p></li><li><p>Times pequenos onde o custo de triagem manual &#233; alto em rela&#231;&#227;o ao headcount</p></li><li><p>Codebases com cobertura de testes suficiente para que CI seja gate confi&#225;vel</p></li><li><p>Produtos internos onde o ciclo feedback-corre&#231;&#227;o precisa ser mais curto que o processo padr&#227;o permite</p></li><li><p>Equipes com pelo menos uma pessoa capaz de revisar c&#243;digo gerado por agente com senso cr&#237;tico</p></li></ul><div><hr></div><h2>Por onde come&#231;ar</h2><p>A pergunta mais frequente quando apresento esse padr&#227;o &#233;: &#8220;por onde come&#231;o?&#8221;. A resposta depende do maior gargalo atual do seu processo.</p><p>Se sua equipe perde tempo triando manualmente um volume alto de reports, comece pela camada de normaliza&#231;&#227;o: o gateway que converte sinais em issues estruturadas j&#225; resolve boa parte do problema. Se problemas chegam sem contexto suficiente para diagn&#243;stico, comece pelo widget de feedback e pela integra&#231;&#227;o com ferramenta de observabilidade. Se o processo de triagem funciona mas a corre&#231;&#227;o demora, a&#237; sim faz sentido investir na camada de agente.</p><p>Come&#231;ar pela camada de agente sem ter as anteriores funcionando &#233; o atalho que mais custa. Agente sem contexto rico gera diagn&#243;sticos gen&#233;ricos. Diagn&#243;sticos gen&#233;ricos geram PRs que n&#227;o passam em revis&#227;o. PRs que n&#227;o passam geram desconfian&#231;a no sistema inteiro.</p><p>A SIA &#233; um padr&#227;o de acumula&#231;&#227;o. Cada camada bem implementada aumenta o valor da pr&#243;xima. A pressa em chegar &#224; autonomia do agente &#233; o caminho mais certo para abandonar o sistema em tr&#234;s meses.</p><div><hr></div><h2>Considera&#231;&#245;es finais</h2><p>A ideia central do padr&#227;o &#233; deceptivamente simples: aplica&#231;&#245;es que capturam feedback estruturado, processam esse feedback com automa&#231;&#227;o inteligente e fecham o loop com revis&#227;o humana criteriosa ficam progressivamente melhores com o tempo. Por processo, n&#227;o por design heroico.</p><p>O &#8220;self&#8221; no nome significa que o motor de melhoria est&#225; dentro do sistema, alimentado pelo uso real, em vez de depender exclusivamente da capacidade de aten&#231;&#227;o de uma equipe para capturar, processar e agir sobre sinais que chegam continuamente.</p><p>Com as ferramentas dispon&#237;veis hoje: observabilidade moderna, modelos de linguagem capazes de raciocinar sobre c&#243;digo, infraestruturas de agentes com controle granular. O padr&#227;o &#233; implement&#225;vel por equipes de qualquer tamanho. O investimento inicial &#233; real. O retorno, se bem executado, &#233; composto.</p><blockquote><p><em>&#8220;O objetivo &#233; uma aplica&#231;&#227;o onde o custo de quebrar e corrigir cai progressivamente com o tempo.&#8221;</em></p></blockquote><div><hr></div><p><em>Guilherme Favaron &#233; CTO do GRI Institute e autor de &#8220;Desbloqueando a Intelig&#234;ncia Artificial&#8221;. Escreve sobre IA aplicada a neg&#243;cios na newsletter IA Aplicada.</em></p>]]></content:encoded></item><item><title><![CDATA[A Memória dos Seus Agentes Está Quebrada]]></title><description><![CDATA[E provavelmente voc&#234; ainda n&#227;o percebeu]]></description><link>https://www.guilhermefavaron.com.br/p/memoria-agentes-solucao-definitiva</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/memoria-agentes-solucao-definitiva</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Sun, 08 Mar 2026 16:59:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!StkW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!StkW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!StkW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 424w, https://substackcdn.com/image/fetch/$s_!StkW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 848w, https://substackcdn.com/image/fetch/$s_!StkW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!StkW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!StkW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png" width="960" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b4a7b600-9027-44a3-98b9-81b86bec324c_960x1200.jpeg&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:87583,&quot;alt&quot;:&quot;Estrutura com 3 mecanismos de preserva&#231;&#227;o e registro de mem&#243;ria para Agentes de IA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/190286771?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4a7b600-9027-44a3-98b9-81b86bec324c_960x1200.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Estrutura com 3 mecanismos de preserva&#231;&#227;o e registro de mem&#243;ria para Agentes de IA" title="Estrutura com 3 mecanismos de preserva&#231;&#227;o e registro de mem&#243;ria para Agentes de IA" srcset="https://substackcdn.com/image/fetch/$s_!StkW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 424w, https://substackcdn.com/image/fetch/$s_!StkW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 848w, https://substackcdn.com/image/fetch/$s_!StkW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!StkW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6285a899-b58f-46b8-86f7-76b0923a3c00_960x1200.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Estrutura com 3 mecanismos de preserva&#231;&#227;o e registro de mem&#243;ria para Agentes de IA</figcaption></figure></div><p>Quando um agente responde com convic&#231;&#227;o algo que est&#225; errado, a rea&#231;&#227;o imediata &#233; culpar o modelo. Mas na maioria dos casos, o modelo n&#227;o &#233; o problema. O problema est&#225; na arquitetura de mem&#243;ria que alimenta esse agente.</p><p>Esse artigo &#233; sobre isso: como a mem&#243;ria de agentes falha silenciosamente em produ&#231;&#227;o, por que o modelo padr&#227;o de armazenamento &#233; insuficiente para sistemas reais, e como construir algo mais robusto usando tr&#234;s pilares &#8212; fatos at&#244;micos, scoring composto e tratamento expl&#237;cito de lacunas de evid&#234;ncia.</p><p>O c&#243;digo existe. A implementa&#231;&#227;o &#233; poss&#237;vel. Mas a maioria dos times nunca chega l&#225; porque n&#227;o percebe que o problema &#233; arquitetural.</p><div><hr></div><h2>O modelo ing&#234;nuo e por que ele funciona no prot&#243;tipo</h2><p>A implementa&#231;&#227;o padr&#227;o de mem&#243;ria para agentes segue um caminho intuitivo:</p><ol><li><p>Recebe um bloco de texto com informa&#231;&#227;o relevante</p></li><li><p>Gera um embedding do bloco inteiro</p></li><li><p>Persiste o texto e o embedding em um vector store</p></li><li><p>No recall, busca os mais similares via nearest neighbors</p></li></ol><p>Em um prot&#243;tipo, isso parece funcionar. As respostas fazem sentido. A demo impressiona.</p><p>O problema aparece quando o sistema cresce, os dados acumulam e as consultas ficam mais espec&#237;ficas.</p><div><hr></div><h2>As quatro falhas que surgem em produ&#231;&#227;o</h2><h3>Context bleed</h3><p>Quando m&#250;ltiplos fatos s&#227;o armazenados como um &#250;nico bloco, o sistema n&#227;o consegue distinguir qual parte da mem&#243;ria &#233; relevante para qual pergunta.</p><p>Considere um bloco como: <em>&#8220;Na reuni&#227;o de ter&#231;a decidimos usar Postgres porque o or&#231;amento &#233; limitado, a equipe j&#225; conhece SQL e vamos precisar de replica&#231;&#227;o futura.&#8221;</em></p><p>Esse bloco cont&#233;m pelo menos quatro informa&#231;&#245;es independentes: a decis&#227;o de tecnologia, a justificativa de custo, a compet&#234;ncia do time e um requisito futuro. Quando voc&#234; pergunta <em>&#8220;qual banco de dados estamos usando?&#8221;</em>, o sistema recupera o bloco inteiro e o modelo precisa interpretar qual parte responde &#224; pergunta. &#192;s vezes acerta. &#192;s vezes extrapola.</p><h3>Fact contamination</h3><p>Atualizar uma informa&#231;&#227;o espec&#237;fica dentro de um bloco exige regravar o bloco inteiro ou criar uma nova vers&#227;o que compete com a anterior.</p><p>Se o or&#231;amento aprovado muda de R$ 10.000 para R$ 15.000, voc&#234; cria duas mem&#243;rias semanticamente similares. Qual delas o sistema vai recuperar? Depende de qual foi indexada mais recentemente ou tem embedding mais pr&#243;ximo da query. N&#227;o h&#225; garantia de consist&#234;ncia.</p><h3>Ranking incorreto</h3><p>Similaridade vetorial pura tende a favorecer coincid&#234;ncia lexical e rec&#234;ncia sobre import&#226;ncia real.</p><p>Em um sistema em uso h&#225; meses, uma nota trivial criada ontem &#8212; <em>&#8220;erro tempor&#225;rio no banco de staging&#8221;</em> &#8212; pode ter score de similaridade mais alto do que a decis&#227;o arquitetural registrada h&#225; seis meses &#8212; <em>&#8220;banco principal do sistema &#233; Postgres&#8221;</em> &#8212; simplesmente porque compartilha mais palavras com a query <em>&#8220;qual banco estamos usando?&#8221;</em>.</p><p>O sistema responde com a nota trivial. O agente passa a mencionar um erro tempor&#225;rio como se fosse a configura&#231;&#227;o definitiva.</p><h3>Alucina&#231;&#227;o operacional</h3><p>Quando nenhuma mem&#243;ria recuperada tem evid&#234;ncia suficiente para responder com confian&#231;a, o modelo n&#227;o tem mecanismo para reconhecer isso. Ele responde de qualquer forma, interpolando, extrapolando, inventando com flu&#234;ncia.</p><p>Esse comportamento n&#227;o &#233; falha do modelo em isolamento. &#201; falha de uma arquitetura que n&#227;o devolve ao modelo a informa&#231;&#227;o de que a evid&#234;ncia &#233; insuficiente.</p><div><hr></div><h2>A solu&#231;&#227;o em tr&#234;s pilares</h2><p>A proposta n&#227;o &#233; substituir o vector store. &#201; construir uma camada de mem&#243;ria que pensa sobre o que armazena, como recupera e quando n&#227;o sabe.</p><h3>Pilar 1: Fatos at&#244;micos</h3><p>Em vez de armazenar blocos de texto, a mem&#243;ria armazena proposi&#231;&#245;es discretas e autocontidas.</p><p>O bloco <em>&#8220;Na reuni&#227;o de ter&#231;a decidimos usar Postgres porque o or&#231;amento &#233; limitado...&#8221;</em> se transforma em:</p><ul><li><p><code>database.primary = postgres</code></p></li><li><p><code>budget.phase_1.approved = R$ 10.000</code></p></li><li><p><code>decision.date = 2026-02-11</code></p></li><li><p><code>team.sql_competency = alta</code></p></li></ul><p>Cada fato tem atributos pr&#243;prios: texto can&#244;nico, embedding individual, tipo, n&#237;vel de import&#226;ncia, confian&#231;a de extra&#231;&#227;o, confian&#231;a de veracidade, refer&#234;ncia temporal e proveni&#234;ncia.</p><p>Essa granularidade resolve o context bleed. Cada fato responde por si. A atualiza&#231;&#227;o de um fato n&#227;o contamina os outros. O versionamento se torna rastre&#225;vel.</p><p>A extra&#231;&#227;o usa duas abordagens complementares: regras e parsers para padr&#245;es determin&#237;sticos como datas, valores monet&#225;rios e identificadores; e um LLM extractor para proposi&#231;&#245;es complexas como decis&#245;es, rela&#231;&#245;es causais e contexto impl&#237;cito.</p><pre><code><code>@dataclass
class ExtractedFact:
    fact_type: str
    fact_key: str | None
    canonical_text: str
    normalized_value: dict | None
    importance: float
    extraction_confidence: float
    truth_confidence: float
    recency_reference_at: datetime | None
    metadata: dict
</code></code></pre><p>A import&#226;ncia n&#227;o &#233; aleat&#243;ria. Cada tipo de fato tem uma faixa esperada:</p><ul><li><p>Decis&#227;o de arquitetura: 0.90 ou acima</p></li><li><p>Or&#231;amento aprovado: 0.85 ou acima</p></li><li><p>Prefer&#234;ncia est&#225;vel do usu&#225;rio: 0.80</p></li><li><p>Observa&#231;&#227;o operacional transit&#243;ria: 0.20 a 0.40</p></li></ul><h3>Pilar 2: Scoring composto</h3><p>O recall n&#227;o pode depender apenas de similaridade sem&#226;ntica. Precisa combinar m&#250;ltiplos sinais.</p><p>Os sinais relevantes s&#227;o: similaridade vetorial entre a query e o fato, rec&#234;ncia do fato (ponderada pelo tipo &#8212; uma decis&#227;o arquitetural decai muito mais lentamente do que um incidente operacional), import&#226;ncia intr&#237;nseca, confian&#231;a de veracidade, confiabilidade da fonte, sobreposi&#231;&#227;o de entidades entre query e fato, penalidade por contradi&#231;&#227;o com outro fato ativo e penalidade por obsolesc&#234;ncia.</p><p>A f&#243;rmula:</p><pre><code><code>score(fact, query) =
  (similaridade &#215; 0.35) +
  (rec&#234;ncia &#215; 0.10) +
  (import&#226;ncia &#215; 0.20) +
  (confian&#231;a_veracidade &#215; 0.10) +
  (confiabilidade_fonte &#215; 0.05) +
  (sobreposi&#231;&#227;o_entidades &#215; 0.10) +
  (prior_tipo &#215; 0.10) -
  (penalidade_contradi&#231;&#227;o &#215; 0.15) -
  (penalidade_obsolesc&#234;ncia &#215; 0.10)
</code></code></pre><p>Os pesos iniciais sugeridos acima s&#227;o razo&#225;veis como ponto de partida, mas precisam ser calibrados com dados reais do seu dom&#237;nio.</p><p>A fun&#231;&#227;o de rec&#234;ncia usa decaimento exponencial com meia-vida configur&#225;vel por tipo de fato:</p><pre><code><code>def recency_score(reference_at, half_life_days=30):
    if reference_at is None:
        return 0.5
    age_days = (datetime.now(timezone.utc) - reference_at).total_seconds() / 86400
    return math.exp(-math.log(2) * age_days / half_life_days)
</code></code></pre><p>Para incidentes operacionais, <code>half_life_days=7</code>. Para decis&#245;es de arquitetura, <code>half_life_days=180</code>. Para prefer&#234;ncias est&#225;veis do usu&#225;rio, <code>half_life_days=365</code> ou mais.</p><p>O recall acontece em duas fases. Na primeira, candidate generation, o sistema busca 30 a 100 candidatos usando busca vetorial, busca l&#233;xica por trigrama e filtros por entidades. Na segunda, reranking cognitivo, aplica o scoring composto e seleciona os top-k.</p><h3>Pilar 3: Evidence gaps</h3><p>Este &#233; o pilar que mais diferencia uma arquitetura madura de uma ing&#234;nua.</p><p>Quando a confian&#231;a agregada do recall fica abaixo de um threshold, o sistema n&#227;o deve inventar uma resposta. Deve reconhecer a lacuna.</p><p>Os tipos de lacuna mais comuns:</p><ul><li><p><code>missing_fact</code>: fato relevante simplesmente n&#227;o existe na mem&#243;ria</p></li><li><p><code>conflicting_facts</code>: dois fatos ativos se contradizem sem resolu&#231;&#227;o</p></li><li><p><code>stale_fact</code>: fato encontrado, mas provavelmente desatualizado</p></li><li><p><code>low_confidence</code>: evid&#234;ncia insuficiente para afirmar com seguran&#231;a</p></li><li><p><code>unresolved_entity</code>: entidade amb&#237;gua ou n&#227;o resolvida</p></li><li><p><code>insufficient_context</code>: query exige contexto maior do que o dispon&#237;vel</p></li></ul><p>Quando detectada baixa confian&#231;a, o sistema percorre uma fallback ladder antes de declarar incerteza:</p><ol><li><p>Expandir o top-k vetorial</p></li><li><p>Rodar busca l&#233;xica adicional</p></li><li><p>Ampliar a janela temporal</p></li><li><p>Buscar fatos relacionados via grafo de edges</p></li><li><p>Consultar mem&#243;ria de sess&#227;o em cache</p></li><li><p>Consultar fonte prim&#225;ria externa, se dispon&#237;vel</p></li><li><p>Responder com incerteza expl&#237;cita e registrar o gap</p></li><li><p>Solicitar confirma&#231;&#227;o ao usu&#225;rio se necess&#225;rio</p></li></ol><pre><code><code>def resolve_with_evidence_gaps(query, tenant_id):
    recall = recall_memory(query, tenant_id)

    if recall["confidence"] &gt;= 0.72:
        return recall

    expanded = broaden_retrieval(query, tenant_id)
    merged = merge_recall_results(recall, expanded)
    new_confidence = aggregate_recall_confidence(merged["facts"])

    if new_confidence &lt; 0.72:
        gap = create_evidence_gap(
            tenant_id=tenant_id,
            recall_event_id=merged["recall_event_id"],
            gap_type="low_confidence",
            description=f"Evid&#234;ncia insuficiente para query: {query}",
            severity=1 - new_confidence,
        )
        merged["evidence_gap_id"] = gap
        merged["needs_clarification"] = True

    return merged
</code></code></pre><p>O comportamento esperado do agente quando h&#225; evidence gap: <em>&#8220;Encontrei ind&#237;cios, mas n&#227;o evid&#234;ncia suficiente para afirmar com seguran&#231;a&#8221;</em> ou <em>&#8220;A informa&#231;&#227;o encontrada parece desatualizada; preciso confirmar a vers&#227;o atual.&#8221;</em></p><p>Isso &#233; qualitativamente diferente de responder com falsa convic&#231;&#227;o.</p><div><hr></div><h2>A stack e o papel de cada camada</h2><p>A arquitetura usa quatro componentes com responsabilidades distintas.</p><p><strong>Postgres</strong> &#233; a verdade estrutural. Guarda fatos, fontes, vers&#245;es, edges entre fatos, auditoria de recall e evidence gaps. Toda a rastreabilidade mora aqui.</p><p><strong>pgvector</strong> &#233; a camada de similaridade sem&#226;ntica dentro do Postgres. Adequado para a maioria dos sistemas corporativos em fase inicial, onde a cardinalidade ainda &#233; administr&#225;vel e simplicidade operacional tem valor.</p><p><strong>Redis</strong> &#233; a camada operacional de suporte: mem&#243;ria de sess&#227;o antes da consolida&#231;&#227;o, cache de embeddings e queries frequentes, locks de deduplica&#231;&#227;o e filas de reindexa&#231;&#227;o.</p><p><strong>Pinecone</strong> entra como acelerador vetorial quando o volume pressiona o Postgres. O conte&#250;do relacional e audit&#225;vel permanece no Postgres; Pinecone cuida do throughput de busca sem&#226;ntica em escala.</p><p>A estrat&#233;gia de rollout recomendada:</p><ul><li><p>Fase 1 (MVP confi&#225;vel): Postgres + pgvector + Redis, com ingest&#227;o at&#244;mica, scoring composto b&#225;sico, evidence gaps e auditoria de recall</p></li><li><p>Fase 2 (robustez): versionamento completo, edges entre fatos, tuning de pesos baseado em dados reais</p></li><li><p>Fase 3 (escala): Pinecone, reindexa&#231;&#227;o ass&#237;ncrona, learned reranker</p></li></ul><div><hr></div><h2>O que isso resolve na pr&#225;tica</h2><p>Com fatos at&#244;micos, cada informa&#231;&#227;o &#233; atualiz&#225;vel, version&#225;vel e audit&#225;vel de forma independente. N&#227;o h&#225; mais blocos conflitantes disputando o mesmo espa&#231;o sem&#226;ntico.</p><p>Com scoring composto, uma decis&#227;o arquitetural de seis meses atr&#225;s vence uma nota operacional de ontem quando a query &#233; sobre arquitetura. O ranking reflete import&#226;ncia real, n&#227;o apenas proximidade lexical recente.</p><p>Com evidence gaps, o agente sabe quando n&#227;o sabe. Ele para de inventar. Ele registra a incerteza para auditoria. Ele busca clarifica&#231;&#227;o quando necess&#225;rio.</p><p>A auditabilidade completa &#8212; fonte do fato, componentes do score, confian&#231;a agregada, gap registrado &#8212; permite diagnosticar por que uma resposta foi gerada, n&#227;o apenas se ela estava correta.</p><div><hr></div><h2>Thresholds iniciais para calibra&#231;&#227;o</h2><p>Como ponto de partida razo&#225;vel:</p><ul><li><p>Confian&#231;a acima de 0.80: responder com alta convic&#231;&#227;o</p></li><li><p>Entre 0.72 e 0.80: responder com ressalva leve</p></li><li><p>Entre 0.55 e 0.72: tentar fallback antes de responder</p></li><li><p>Abaixo de 0.55: registrar evidence gap, evitar afirma&#231;&#227;o forte</p></li></ul><p>Esses valores precisam ser ajustados com um benchmark offline constru&#237;do com casos reais do seu dom&#237;nio.</p><div><hr></div><h2>Conclus&#227;o</h2><p>A maioria dos sistemas de mem&#243;ria para agentes trata armazenamento como equivalente a cogni&#231;&#227;o. N&#227;o &#233;.</p><p>Armazenar texto e fazer nearest-neighbor &#233; infraestrutura. Mem&#243;ria cognitiva &#233; outra coisa: saber o que cada informa&#231;&#227;o significa, quando ela &#233; confi&#225;vel, quanto peso ela merece e quando a evid&#234;ncia &#233; insuficiente para responder.</p><p>Os tr&#234;s pilares descritos aqui &#8212; fatos at&#244;micos, scoring composto e evidence gaps &#8212; n&#227;o s&#227;o complexidade desnecess&#225;ria. S&#227;o o m&#237;nimo necess&#225;rio para que um agente em produ&#231;&#227;o seja confi&#225;vel.</p><p>Postgres sustenta a estrutura e a auditoria. pgvector ou Pinecone sustentam a recupera&#231;&#227;o sem&#226;ntica. Redis sustenta a velocidade operacional. Mas o valor real est&#225; na l&#243;gica de encoding, ranking e tratamento de incerteza.</p><p>Sem isso, o sistema apenas armazena texto e chama isso de mem&#243;ria.</p><div><hr></div><p><em>O c&#243;digo completo dos fluxos de encoding, recall e evidence gaps, incluindo schema SQL e integra&#231;&#227;o com Pinecone e Redis, est&#225; dispon&#237;vel no <a href="https://github.com/guifav">GitHub</a>.</em></p><p><em>Se esse artigo foi &#250;til, considere assinar a newsletter para receber os pr&#243;ximos na sua caixa.</em></p>]]></content:encoded></item><item><title><![CDATA[Prevendo Preços de Ações com Machine Learning - Do Zero ao Deploy com ferramentas Gratuitas]]></title><description><![CDATA[Passo a passo desde a captura de dados hist&#243;ricos de a&#231;&#245;es at&#233; a disponibiliza&#231;&#227;o do modelo via dashboard, com retreino autom&#225;tico semanal]]></description><link>https://www.guilhermefavaron.com.br/p/prevendo-precos-de-acoes-machine-learning</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/prevendo-precos-de-acoes-machine-learning</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Wed, 18 Feb 2026 13:09:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Arr6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Existe uma pergunta que todo mundo que come&#231;a a estudar Machine Learning faz em algum momento: &#8220;d&#225; pra prever o pre&#231;o de uma a&#231;&#227;o?&#8221;. A resposta curta &#233;: n&#227;o com precis&#227;o suficiente pra ficar rico. Mas a resposta longa &#233; muito mais interessante - e &#233; isso que eu quero contar aqui.</p><p>Neste artigo, vou mostrar como constru&#237; um projeto completo de predi&#231;&#227;o de pre&#231;os usando redes neurais LSTM em PyTorch. O modelo recebe os &#250;ltimos 60 dias de pre&#231;os de fechamento de uma a&#231;&#227;o e tenta prever o pre&#231;o do dia seguinte. Escolhi a PETR4 (Petrobras) como caso de estudo, mas a mesma abordagem funciona para qualquer ticker.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Arr6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Arr6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Arr6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b93c0ff-ee6c-40a1-b85e-d32c994016dd_2752x1536.jpeg&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:816218,&quot;alt&quot;:&quot;Pipeline completo: do zero ao deploy utilizando apenas ferramentas gratuitas e via navegador&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b93c0ff-ee6c-40a1-b85e-d32c994016dd_2752x1536.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Pipeline completo: do zero ao deploy utilizando apenas ferramentas gratuitas e via navegador" title="Pipeline completo: do zero ao deploy utilizando apenas ferramentas gratuitas e via navegador" srcset="https://substackcdn.com/image/fetch/$s_!Arr6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Arr6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b99f637-64b7-4903-b63a-084c62c87fc5_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Pipeline completo: do zero ao deploy utilizando apenas ferramentas gratuitas e via navegador</figcaption></figure></div><p>O mais importante: tudo roda no navegador, de gra&#231;a. Google Colab para treinar, HuggingFace para hospedar, GitHub para versionar. Voc&#234; n&#227;o precisa de uma GPU pr&#243;pria nem de nenhuma infra local.</p><div><hr></div><h2>Por que LSTM?</h2><p>Pre&#231;os de a&#231;&#245;es s&#227;o s&#233;ries temporais. O valor de hoje carrega informa&#231;&#227;o sobre o que aconteceu ontem, na semana passada, no m&#234;s anterior. Redes neurais tradicionais (feedforward) n&#227;o capturam bem essa depend&#234;ncia temporal -- elas tratam cada entrada como se fosse independente.</p><p>A LSTM (Long Short-Term Memory) foi projetada exatamente para esse tipo de problema. Ela &#233; um tipo de rede neural recorrente que possui uma &#8220;mem&#243;ria interna&#8221; controlada por tr&#234;s port&#245;es (forget, input e output). Isso permite que a rede decida o que lembrar e o que esquecer, aprendendo padr&#245;es de longo prazo nos dados.</p><p>Na pr&#225;tica, a LSTM recebe uma sequ&#234;ncia de pre&#231;os passados e aprende a reconhecer padr&#245;es que se repetem: tend&#234;ncias de alta e baixa, volatilidade c&#237;clica, revers&#245;es. Ela n&#227;o &#8220;entende&#8221; o mercado -- ela detecta regularidades estat&#237;sticas no hist&#243;rico.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IB67!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IB67!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!IB67!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!IB67!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!IB67!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IB67!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a359b62-37c0-4c07-b175-2feceeb21f75_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5507380,&quot;alt&quot;:&quot;Porque usar LSTMs&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a359b62-37c0-4c07-b175-2feceeb21f75_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Porque usar LSTMs" title="Porque usar LSTMs" srcset="https://substackcdn.com/image/fetch/$s_!IB67!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!IB67!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!IB67!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!IB67!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff2c7fe-8dd3-4b47-b26d-75bf5db976c5_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Porque usar LSTMs</figcaption></figure></div><div><hr></div><h2>A pipeline completa</h2><p>O projeto segue um fluxo que vai desde a coleta de dados at&#233; o deploy em produ&#231;&#227;o. Vou passar por cada etapa.</p><h3>Coleta de dados</h3><p>Usei a biblioteca <code>yfinance</code> para baixar o hist&#243;rico da PETR4 desde janeiro de 2018. S&#227;o mais de 2000 dias de negocia&#231;&#227;o, cada um com pre&#231;o de abertura, m&#225;xima, m&#237;nima, fechamento e volume. Para a LSTM, usei apenas o pre&#231;o de fechamento.</p><p>python</p><pre><code><code>SYMBOL = 'PETR4.SA'
START_DATE = '2018-01-01'

df = yf.download(SYMBOL, start=START_DATE, end=datetime.now().strftime('%Y-%m-%d'))</code></code></pre><p>A an&#225;lise explorat&#243;ria revelou o que quem acompanha a Petrobras j&#225; sabe: ciclos marcantes, picos de volatilidade em per&#237;odos de crise e uma tend&#234;ncia geral de valoriza&#231;&#227;o nos &#250;ltimos anos. Gr&#225;ficos com Plotly mostrando m&#233;dias m&#243;veis de 50 e 200 dias ajudaram a visualizar esses padr&#245;es.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e9cU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e9cU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 424w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 848w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 1272w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e9cU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png" width="2198" height="856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/33083102-3530-4a29-a507-a632ea390aa8_2198x856.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:856,&quot;width&quot;:2198,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:140711,&quot;alt&quot;:&quot;An&#225;lise explorat&#243;ria do pre&#231;o de fechamento da a&#231;&#227;o PERT4.SA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65911cb7-766a-4ebf-8b02-bf68b3446861_2198x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="An&#225;lise explorat&#243;ria do pre&#231;o de fechamento da a&#231;&#227;o PERT4.SA" title="An&#225;lise explorat&#243;ria do pre&#231;o de fechamento da a&#231;&#227;o PERT4.SA" srcset="https://substackcdn.com/image/fetch/$s_!e9cU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 424w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 848w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 1272w, https://substackcdn.com/image/fetch/$s_!e9cU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f7fbde1-a525-4ffc-b018-8f306f418e62_2198x856.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">An&#225;lise explorat&#243;ria do pre&#231;o de fechamento da a&#231;&#227;o PERT4.SA</figcaption></figure></div><h3>Pr&#233;-processamento: onde muita gente erra</h3><p>Tr&#234;s decis&#245;es de pr&#233;-processamento fazem toda a diferen&#231;a entre um modelo que funciona e um que s&#243; parece funcionar.</p><p><strong>Normaliza&#231;&#227;o.</strong> A LSTM funciona muito melhor com dados entre 0 e 1. Usei um MinMaxScaler para transformar os pre&#231;os. Sem esse passo, o modelo tem dificuldade para convergir -- e &#233; algo que muita gente esquece na primeira tentativa.</p><p><strong>Janelas deslizantes.</strong> O modelo recebe os 60 dias anteriores como entrada e prev&#234; o pr&#243;ximo dia como sa&#237;da. Na pr&#225;tica, a gente &#8220;desliza&#8221; uma janela de 60 posi&#231;&#245;es sobre a s&#233;rie temporal, gerando milhares de pares (entrada, sa&#237;da) para treino.</p><p><strong>Split temporal.</strong> Esse &#233; talvez o ponto mais cr&#237;tico. Dividi os dados em 70% treino, 15% valida&#231;&#227;o e 15% teste, respeitando a ordem cronol&#243;gica. Sem embaralhar. Em s&#233;ries temporais, se voc&#234; embaralha os dados, est&#225; vazando informa&#231;&#227;o do futuro para o passado. O modelo vai parecer brilhante nos n&#250;meros mas n&#227;o vai generalizar para dados novos. Isso &#233; um erro cl&#225;ssico.</p><p>python</p><pre><code><code># Split SEM embaralhar -- ordem cronol&#243;gica preservada
X_train, y_train = X[:n_train], y[:n_train]
X_val, y_val = X[n_train:n_train+n_val], y[n_train:n_train+n_val]
X_test, y_test = X[n_train+n_val:], y[n_train+n_val:]</code></code></pre><h3>Arquitetura do modelo</h3><p>O modelo &#233; uma LSTM com duas camadas empilhadas de 128 neur&#244;nios cada, seguida de um bloco fully connected (128 -&gt; 64 -&gt; 32 -&gt; 1) com ReLU e dropout de 0.2 entre as camadas. O dropout &#233; importante para evitar overfitting - ele &#8220;desliga&#8221; aleatoriamente 20% dos neur&#244;nios durante o treino, for&#231;ando o modelo a n&#227;o depender de caminhos espec&#237;ficos.</p><p>python</p><pre><code><code>class LSTMModel(nn.Module):
    def __init__(self, input_size=1, hidden_size=128, num_layers=2, dropout=0.2):
        super().__init__()
        self.lstm = nn.LSTM(input_size, hidden_size, num_layers,
                            batch_first=True, dropout=dropout)
        self.fc = nn.Sequential(
            nn.Linear(hidden_size, 64), nn.ReLU(), nn.Dropout(dropout),
            nn.Linear(64, 32), nn.ReLU(),
            nn.Linear(32, 1)
        )

    def forward(self, x):
        lstm_out, _ = self.lstm(x)
        return self.fc(lstm_out[:, -1, :])</code></code></pre><p>Essa arquitetura tem cerca de 210 mil par&#226;metros trein&#225;veis. &#201; um modelo relativamente compacto, o que &#233; intencional: para uma &#250;nica feature (pre&#231;o de fechamento) com janela de 60 dias, n&#227;o faz sentido usar algo mais pesado.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F_72!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F_72!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!F_72!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!F_72!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!F_72!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F_72!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f191e076-fa98-4c3c-b6c9-64b4e69f7c0b_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5692399,&quot;alt&quot;:&quot;Arquitetura do modelo treinado LSTM&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff191e076-fa98-4c3c-b6c9-64b4e69f7c0b_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Arquitetura do modelo treinado LSTM" title="Arquitetura do modelo treinado LSTM" srcset="https://substackcdn.com/image/fetch/$s_!F_72!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!F_72!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!F_72!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!F_72!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8953c46-8d47-40a0-a185-ed7ff491da18_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Arquitetura do modelo treinado</figcaption></figure></div><h3>Treinamento</h3><p>Para o treinamento, usei Adam como otimizador com learning rate de 0.001, MSE como fun&#231;&#227;o de perda e dois mecanismos de controle: um ReduceLROnPlateau (que reduz o learning rate pela metade quando o modelo para de melhorar) e early stopping com paci&#234;ncia de 15 &#233;pocas.</p><p>O treinamento no Colab com GPU T4 leva poucos minutos. A curva de aprendizado mostra as losses de treino e valida&#231;&#227;o caindo juntas -- quando as duas acompanham, &#233; um bom sinal. Significa que o modelo est&#225; aprendendo padr&#245;es reais nos dados, n&#227;o memorizando.</p><div><hr></div><h2>Avalia&#231;&#227;o: o que os n&#250;meros dizem</h2><p>Usei tr&#234;s m&#233;tricas no conjunto de teste (os 15% finais, dados que o modelo nunca viu):</p><ul><li><p><strong>MAE (Mean Absolute Error):</strong> o erro m&#233;dio em reais. Se o MAE &#233; 1.50, o modelo erra em m&#233;dia R$1,50.</p></li><li><p><strong>RMSE (Root Mean Squared Error):</strong> similar ao MAE, mas penaliza mais os erros grandes.</p></li><li><p><strong>MAPE (Mean Absolute Percentage Error):</strong> o erro em percentual, que facilita comparar entre a&#231;&#245;es de pre&#231;os diferentes.</p></li></ul><p>O gr&#225;fico mais revelador &#233; o de valores reais versus previs&#245;es no conjunto de teste. O modelo acompanha a tend&#234;ncia geral, mas com um atraso caracter&#237;stico - algo esperado em modelos que usam apenas hist&#243;rico de pre&#231;os.</p><p>Aqui vai uma reflex&#227;o honesta: o erro foi consider&#225;vel. Para melhorar, o primeiro passo seria reduzir o per&#237;odo de treinamento para 3 anos em vez de 7. A Petrobras de 2018 &#233; muito diferente da Petrobras de 2025 em termos de faixa de pre&#231;o e comportamento. Dados mais recentes seriam mais representativos do regime atual.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PbDC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PbDC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 424w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 848w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 1272w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PbDC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png" width="1456" height="790" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a8037305-0e40-4b19-995c-13376da4d38c_2032x1102.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:790,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:129407,&quot;alt&quot;:&quot;Resultado do treinamento do modelo&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8037305-0e40-4b19-995c-13376da4d38c_2032x1102.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Resultado do treinamento do modelo" title="Resultado do treinamento do modelo" srcset="https://substackcdn.com/image/fetch/$s_!PbDC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 424w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 848w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 1272w, https://substackcdn.com/image/fetch/$s_!PbDC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9cdc03-c52a-4c7b-9049-ac820b182601_2032x1102.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Resultado do treinamento do modelo</figcaption></figure></div><p>Mas optei por n&#227;o otimizar o modelo at&#233; ele ficar &#8220;bonito&#8221;. O objetivo aqui &#233; educacional, n&#227;o lan&#231;ar um produto de recomenda&#231;&#227;o. Para um modelo real, eu faria muito mais testes com diferentes arquiteturas, hiperpar&#226;metros e per&#237;odos de treinamento.</p><div><hr></div><h2>Do modelo treinado ao deploy</h2><p>Com o modelo treinado e avaliado, o pr&#243;ximo passo &#233; colocar tudo em produ&#231;&#227;o. Exportei tr&#234;s artefatos: os pesos do modelo (lstm_model.pth), o normalizador (scaler.joblib) e a configura&#231;&#227;o com hiperpar&#226;metros e m&#233;tricas (config.json). Antes do upload, rodo uma verifica&#231;&#227;o: carrego o modelo salvo do zero e comparo a previs&#227;o com o modelo original. Se n&#227;o forem id&#234;nticas, algo deu errado no salvamento.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K2FI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K2FI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 424w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 848w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 1272w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K2FI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png" width="1456" height="975" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18d4e65e-3dcb-4586-bd47-6a33bfd64523_2516x1684.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:975,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:320127,&quot;alt&quot;:&quot;3 artefatos gerados com o treinamento&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18d4e65e-3dcb-4586-bd47-6a33bfd64523_2516x1684.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="3 artefatos gerados com o treinamento" title="3 artefatos gerados com o treinamento" srcset="https://substackcdn.com/image/fetch/$s_!K2FI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 424w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 848w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 1272w, https://substackcdn.com/image/fetch/$s_!K2FI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd44ec097-400a-4591-9215-b0991a3c817d_2516x1684.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">3 artefatos gerados com o treinamento</figcaption></figure></div><h3>HuggingFace Hub</h3><p>O modelo e os artefatos v&#227;o para o HuggingFace Hub, que funciona como um reposit&#243;rio de modelos. Qualquer pessoa pode baixar, carregar em PyTorch e usar. Junto vai um model card documentando a arquitetura, m&#233;tricas e instru&#231;&#245;es de uso.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3z4X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3z4X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 424w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 848w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 1272w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3z4X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png" width="1456" height="1122" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a103429f-a3b2-42e6-8315-58f75267af55_2180x1680.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1122,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:373572,&quot;alt&quot;:&quot;Model Card para o modelo disponibilizado no Hugging Face Hub&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa103429f-a3b2-42e6-8315-58f75267af55_2180x1680.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Model Card para o modelo disponibilizado no Hugging Face Hub" title="Model Card para o modelo disponibilizado no Hugging Face Hub" srcset="https://substackcdn.com/image/fetch/$s_!3z4X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 424w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 848w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 1272w, https://substackcdn.com/image/fetch/$s_!3z4X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc86c1ff3-1bca-40dd-bd5e-97f1de6f065e_2180x1680.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Model Card para o modelo disponibilizado no Hugging Face Hub</figcaption></figure></div><h3>HuggingFace Spaces</h3><p>O dashboard e a API rodam num HuggingFace Space com Docker. A aplica&#231;&#227;o combina FastAPI (para os endpoints REST) com Gradio (para o dashboard interativo) no mesmo servidor.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eHWW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eHWW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 424w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 848w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 1272w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eHWW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png" width="1456" height="911" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a5e4c34-29f9-4941-a3f7-556c9e91ded5_2508x1570.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:911,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:220501,&quot;alt&quot;:&quot;Space no Hugging Face para o projeto&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a5e4c34-29f9-4941-a3f7-556c9e91ded5_2508x1570.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Space no Hugging Face para o projeto" title="Space no Hugging Face para o projeto" srcset="https://substackcdn.com/image/fetch/$s_!eHWW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 424w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 848w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 1272w, https://substackcdn.com/image/fetch/$s_!eHWW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F870f4c21-c661-4fd7-930c-e43cb76f41f7_2508x1570.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Space no Hugging Face para o projeto</figcaption></figure></div><p>O dashboard tem tr&#234;s abas: uma para gerar previs&#245;es em tempo real (digita o ticker, clica e v&#234; o resultado), uma com informa&#231;&#245;es detalhadas sobre o modelo, e uma com documenta&#231;&#227;o da API incluindo exemplos de curl.</p><p>A API exp&#245;e cinco endpoints:</p><p>bash</p><pre><code><code># Verificar se est&#225; no ar
curl https://guifav-lstm-petr4-stock-prediction.hf.space/health

# Previs&#227;o autom&#225;tica (baixa dados recentes e roda o modelo)
curl https://guifav-lstm-petr4-stock-prediction.hf.space/predict/PETR4.SA

# M&#233;tricas do modelo e operacionais
curl https://guifav-lstm-petr4-stock-prediction.hf.space/metrics

# Detalhes da arquitetura e treinamento
curl https://guifav-lstm-petr4-stock-prediction.hf.space/model/info</code></code></pre><p>Tudo roda no tier gratuito do HuggingFace. Funciona surpreendentemente bem para um projeto educacional.</p><h3>Retreino autom&#225;tico</h3><p>Um detalhe que faz diferen&#231;a: configurei um GitHub Action que toda segunda-feira, antes da abertura do mercado, retreina o modelo automaticamente. O workflow baixa os dados mais recentes via yfinance, retreina a LSTM, publica os novos artefatos no Hub e atualiza o Space. Tudo sem interven&#231;&#227;o manual. O GitHub oferece 2000 minutos gratuitos por m&#234;s para Actions, e cada retreino leva menos de 15 minutos em CPU.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lr_M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lr_M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lr_M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7408bb83-bc53-48da-8bc2-49dad6283d4a_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7138105,&quot;alt&quot;:&quot;Predi&#231;&#227;o de A&#231;&#245;es da B3 usando LSTM&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7408bb83-bc53-48da-8bc2-49dad6283d4a_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Predi&#231;&#227;o de A&#231;&#245;es da B3 usando LSTM" title="Predi&#231;&#227;o de A&#231;&#245;es da B3 usando LSTM" srcset="https://substackcdn.com/image/fetch/$s_!lr_M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!lr_M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e5b2958-5c67-41c1-96a2-c1130247a663_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Predi&#231;&#227;o de A&#231;&#245;es da B3 usando LSTM</figcaption></figure></div><div><hr></div><h2>Quer reproduzir com outra a&#231;&#227;o?</h2><p>O projeto foi desenhado para ser reutiliz&#225;vel. O passo a passo:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YGDg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YGDg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YGDg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92bf5365-e8b4-490f-90f4-e138c5b6d2e8_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7146503,&quot;alt&quot;:&quot;Passo a passo para replicar o projeto&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/188053335?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92bf5365-e8b4-490f-90f4-e138c5b6d2e8_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Passo a passo para replicar o projeto" title="Passo a passo para replicar o projeto" srcset="https://substackcdn.com/image/fetch/$s_!YGDg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!YGDg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff54199f1-12ef-4e88-af61-53e9531d811c_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Passo a passo para replicar o projeto utilizando outra a&#231;&#227;o</figcaption></figure></div><ol><li><p>Fa&#231;a um fork do reposit&#243;rio no GitHub</p></li><li><p>Abra o notebook no Google Colab pelo badge &#8220;Open in Colab&#8221;</p></li><li><p>Ative a GPU gratuita (Runtime &gt; Change runtime type &gt; T4 GPU)</p></li><li><p>Troque o ticker de <code>PETR4.SA</code> para a a&#231;&#227;o que quiser (VALE3.SA, ITUB4.SA, BBDC4.SA, qualquer uma listada no Yahoo Finance)</p></li><li><p>Execute todas as c&#233;lulas -- o notebook &#233; autocontido e explica cada etapa</p></li><li><p>Crie um token no HuggingFace com permiss&#227;o Write</p></li><li><p>Rode as c&#233;lulas de upload para publicar no Hub e criar o Space</p></li><li><p>Teste sua API via curl ou acesse o dashboard pelo navegador</p></li></ol><p>N&#227;o precisa instalar nada. Tudo roda no navegador, de gra&#231;a.</p><div><hr></div><h2>Limita&#231;&#245;es (uma parte muito importante)</h2><p>Preciso ser direto aqui: esse modelo &#233; educacional. N&#227;o use para tomar decis&#245;es financeiras reais.</p><p>Pre&#231;os de a&#231;&#245;es s&#227;o influenciados por pol&#237;tica, macroeconomia, sentimento de mercado, not&#237;cias, decis&#245;es regulat&#243;rias -- fatores que um modelo treinado apenas com hist&#243;rico de pre&#231;os n&#227;o captura. A LSTM aprende correla&#231;&#245;es estat&#237;sticas no passado, mas o mercado financeiro &#233; um sistema complexo onde o passado n&#227;o garante o futuro.</p><p>Al&#233;m disso, a previs&#227;o &#233; limitada a um dia &#224; frente, usa apenas uma feature (pre&#231;o de fechamento) e a performance pode degradar em cen&#225;rios at&#237;picos (crises, mudan&#231;as regulat&#243;rias, eventos inesperados).</p><p>O valor desse projeto est&#225; no aprendizado: entender como funciona uma LSTM, como preparar dados de s&#233;ries temporais, como avaliar um modelo de regress&#227;o, como deployar com Docker e APIs, como usar o ecossistema HuggingFace. S&#227;o habilidades que se transferem para problemas onde modelos preditivos realmente fazem sentido.</p><div><hr></div><h2>Pr&#243;ximos passos</h2><p>Para quem quiser evoluir o projeto, algumas ideias:</p><ul><li><p>Adicionar mais features: volume, indicadores t&#233;cnicos como RSI e MACD, m&#233;dias m&#243;veis</p></li><li><p>Testar arquiteturas alternativas: Transformer, CNN-LSTM h&#237;brido, modelos de aten&#231;&#227;o</p></li><li><p>Implementar previs&#227;o multi-step (v&#225;rios dias &#224; frente em vez de apenas um)</p></li><li><p>Adicionar backtesting para simular performance em cen&#225;rios reais</p></li><li><p>Reduzir o per&#237;odo de treinamento para capturar o regime mais recente da a&#231;&#227;o</p></li></ul><div><hr></div><p><strong>Links do projeto:</strong></p><ul><li><p>Dashboard: <a href="https://huggingface.co/spaces/guifav/lstm-petr4-stock-prediction">https://huggingface.co/spaces/guifav/lstm-petr4-stock-prediction</a></p></li><li><p>Modelo: <a href="https://huggingface.co/guifav/lstm-petr4-stock-prediction">https://huggingface.co/guifav/lstm-petr4-stock-prediction</a></p></li><li><p>Reposit&#243;rio: <a href="https://github.com/guifav/previsao_preco_acoes">https://github.com/guifav/previsao_preco_acoes</a></p></li><li><p>V&#237;deo explicando o projeto: </p><div id="youtube2-pBZtLsDH-cU" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;pBZtLsDH-cU&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/pBZtLsDH-cU?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div></li></ul><div><hr></div><p><em>Guilherme Favaron &#233; CTO do GRI Institute, uma organiza&#231;&#227;o global de intelig&#234;ncia imobili&#225;ria e de infraestrutura. Escreve sobre intelig&#234;ncia artificial aplicada em ia-aplicada.substack.com e &#233; autor do livro &#8220;Desbloqueando a Intelig&#234;ncia Artificial&#8221;.</em></p>]]></content:encoded></item><item><title><![CDATA[Claude: o guia definitivo sobre a IA que está sacudindo o mercado de consultoria (e como usar na prática)]]></title><description><![CDATA[Entenda como Chat, Cowork, Code e Console funcionam, por que as a&#231;&#245;es da Accenture ca&#237;ram 9,6% em um dia e como aplicar a ferramenta no seu trabalho.]]></description><link>https://www.guilhermefavaron.com.br/p/claude-o-guia-definitivo-ia-consultoria</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/claude-o-guia-definitivo-ia-consultoria</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Fri, 13 Feb 2026 16:01:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!7Dcy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7Dcy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7Dcy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7Dcy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b0f588c9-d8fb-48f4-b0de-687d891d2f2e_2752x1536.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6829027,&quot;alt&quot;:&quot;Claude.ai - Chat, Cowork, Code e Console&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/187869477?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0f588c9-d8fb-48f4-b0de-687d891d2f2e_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude.ai - Chat, Cowork, Code e Console" title="Claude.ai - Chat, Cowork, Code e Console" srcset="https://substackcdn.com/image/fetch/$s_!7Dcy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!7Dcy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f9bd0aa-2600-4fb1-8a8d-e2609e22dd59_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Claude.ai - Chat, Cowork, Code e Console</figcaption></figure></div><p>Nos &#250;ltimos meses, tenho dedicado uma parcela significativa do meu tempo a explorar, testar e implementar ferramentas de intelig&#234;ncia artificial no dia a dia de opera&#231;&#245;es corporativas. De todas as plataformas que passaram pelas minhas m&#227;os, o Claude, desenvolvido pela Anthropic, &#233; a que mais me impressionou pela profundidade t&#233;cnica, pela qualidade das respostas e, principalmente, pela velocidade com que evoluiu de um chatbot competente para uma plataforma completa de trabalho aut&#244;nomo.</p><p>Neste artigo, compartilho o que aprendi sobre o Claude ao longo de meses de uso intensivo: o que ele &#233;, como cresceu em ritmo acelerado, por que Wall Street est&#225; prestando aten&#231;&#227;o (e ficando nervosa), como cada uma das suas ferramentas funciona na pr&#225;tica e, o mais importante, como voc&#234; pode aplic&#225;-lo em cen&#225;rios reais do seu trabalho.</p><div><hr></div><h2>O que &#233; o Claude e por que voc&#234; deveria prestar aten&#231;&#227;o agora</h2><p>O Claude &#233; o modelo de linguagem desenvolvido pela Anthropic, empresa fundada em 2021 por ex-pesquisadores da OpenAI que sa&#237;ram com uma tese clara: construir IA poderosa com foco em seguran&#231;a. O nome &#233; uma homenagem a Claude Shannon, o pai da teoria da informa&#231;&#227;o.</p><p>Diferentemente de outros chatbots que priorizam escala de usu&#225;rios a qualquer custo, a Anthropic adotou uma abordagem cir&#250;rgica. O Claude foi projetado para se integrar profundamente em fluxos de trabalho profissionais. Os modelos s&#227;o lan&#231;ados em tr&#234;s tamanhos: Haiku (r&#225;pido e barato), Sonnet (equil&#237;brio entre custo e capacidade) e Opus (o mais avan&#231;ado). A vers&#227;o mais recente, Opus 4.6, foi lan&#231;ada em fevereiro de 2026, com melhorias em agentes aut&#244;nomos e integra&#231;&#227;o com PowerPoint.</p><p>Dois dados ajudam a dimensionar o que est&#225; acontecendo. Primeiro, o Claude suporta uma janela de contexto de 200 mil tokens, podendo processar entradas superiores a 1 milh&#227;o de tokens. Para ter uma refer&#234;ncia concreta, ele consegue analisar um livro inteiro em segundos, com taxa de recupera&#231;&#227;o de informa&#231;&#227;o de 99,4%. Segundo, a Anthropic lan&#231;ou o recurso &#8220;Infinite Chats&#8221;, que elimina a limita&#231;&#227;o de janela de contexto durante conversas longas. Isso &#233; particularmente &#250;til para quem trabalha com documentos extensos, an&#225;lises de dados e sess&#245;es de planejamento estrat&#233;gico.</p><div><hr></div><h2>Os n&#250;meros por tr&#225;s do crescimento do Claude</h2><p>Vou ser direto com os dados, porque eles falam por si.</p><p>O Claude alcan&#231;ou 18,9 milh&#245;es de usu&#225;rios ativos mensais no in&#237;cio de 2025. O n&#250;mero parece modesto quando comparado aos 800 milh&#245;es do ChatGPT, mas essa compara&#231;&#227;o esconde o que realmente importa: quando se incluem as integra&#231;&#245;es via API e software de terceiros, a base total de usu&#225;rios estimada se aproxima de 300 milh&#245;es. A estrat&#233;gia da Anthropic &#233; embutir o Claude t&#227;o profundamente em ferramentas existentes que milh&#245;es de pessoas o utilizam sem nunca visitar o site principal.</p><p>A receita conta a mesma hist&#243;ria. A Anthropic reportou US$ 850 milh&#245;es em receita anualizada em 2024. Em 2025, o n&#250;mero projetado subiu para US$ 2,2 bilh&#245;es, com algumas estimativas apontando para US$ 3,3 bilh&#245;es. A receita do Claude Code, a ferramenta de programa&#231;&#227;o, ultrapassou US$ 2,5 bilh&#245;es em run-rate no in&#237;cio de 2026, dobrando desde janeiro. Cerca de 80% da receita vem de clientes corporativos e desenvolvedores, n&#227;o de consumidores finais.</p><p>A valora&#231;&#227;o da empresa reflete essa trajet&#243;ria: de US$ 18,4 bilh&#245;es em dezembro de 2023, para US$ 61,5 bilh&#245;es em mar&#231;o de 2025, at&#233; atingir US$ 350 a 380 bilh&#245;es no final de 2025 e in&#237;cio de 2026, ap&#243;s uma rodada S&#233;rie G de US$ 30 bilh&#245;es liderada por GIC e Coatue. Entre os investidores, Amazon (US$ 4 bilh&#245;es) e Google (US$ 2 bilh&#245;es) s&#227;o os mais proeminentes.</p><p>O tr&#225;fego web cresceu 10,3 vezes em sete meses, de 16 milh&#245;es de visitas em janeiro de 2025 para mais de 164 milh&#245;es em agosto, segundo dados da Semrush. E h&#225; um dado que considero especialmente relevante: o uso direto de automa&#231;&#227;o ultrapassou o uso para simples assist&#234;ncia pela primeira vez, saltando de 27% no final de 2024 para 39% em agosto de 2025. As pessoas est&#227;o deixando de apenas &#8220;conversar&#8221; com o Claude e passando a delegar trabalho real.</p><div><hr></div><h2>O impacto no mercado de consultoria: a&#231;&#245;es em queda e modelos em transforma&#231;&#227;o</h2><p>Aqui &#233; onde a hist&#243;ria fica realmente interessante para quem acompanha mercados e estrat&#233;gia empresarial.</p><p>Em fevereiro de 2026, as a&#231;&#245;es da Accenture ca&#237;ram 9,6% em um &#250;nico dia, fechando a US$ 241,21. O gatilho? O lan&#231;amento de novos plugins do Claude Cowork. A queda n&#227;o foi isolada: IBM caiu 6,49%, Cognizant despencou 10,14% e ADP perdeu 5,04%. O &#237;ndice S&amp;P de software e servi&#231;os recuou mais de 12% em cinco sess&#245;es consecutivas, a maior queda desde mar&#231;o de 2020. O analista Toby Ogg, do JP Morgan, resumiu a situa&#231;&#227;o dizendo que o setor &#8220;est&#225; sendo condenado antes do julgamento&#8221;.</p><p>A l&#243;gica dos investidores &#233; direta: se ferramentas de IA conseguem redigir, resumir, analisar e automatizar tarefas que geram horas fatur&#225;veis, os clientes podem precisar de menos ajuda externa em trabalhos rotineiros. Para um modelo baseado em pessoas-hora, como o da consultoria tradicional, isso &#233; um questionamento estrutural.</p><p>Os dados do setor confirmam a press&#227;o. A McKinsey cortou cerca de 10% de sua for&#231;a de trabalho global nos &#250;ltimos 18 meses. A PwC cortou 1.500 empregos nos EUA. A EY adiou datas de in&#237;cio de novos contratados pelo terceiro ano consecutivo. No Canad&#225;, as vagas de consultoria no Indeed ca&#237;ram 44% entre 2022 e 2025. O executivo de digital da PwC Canad&#225;, Chris Dulny, admitiu publicamente que alguns clientes est&#227;o substituindo o trabalho dos &#8220;consultores de ontem&#8221; por IA.</p><p>Existe, contudo, um outro lado. As grandes consultorias tamb&#233;m est&#227;o lucrando com IA. A Accenture registrou US$ 4,1 bilh&#245;es em receita de IA generativa no ano fiscal 2025. A BCG transformou-se de zero para US$ 2,7 bilh&#245;es em receita anual de IA, representando 20% do total. A IBM acumulou US$ 6 bilh&#245;es em seu portf&#243;lio de IA desde o lan&#231;amento do watsonx. O mercado global de consultoria em IA cresceu de US$ 8,75 bilh&#245;es em 2024 para US$ 11,07 bilh&#245;es em 2025, com proje&#231;&#227;o de US$ 90,99 bilh&#245;es em 2035.</p><p>O que estamos vendo n&#227;o &#233; o fim da consultoria, mas uma reconfigura&#231;&#227;o profunda. Consultorias focadas em execu&#231;&#227;o (Deloitte, EY, Accenture) est&#227;o crescendo quase duas vezes mais r&#225;pido do que as focadas em estrat&#233;gia pura (McKinsey, BCG, Bain). O valor est&#225; migrando do diagn&#243;stico para a implementa&#231;&#227;o, e a IA &#233; tanto a causa quanto a ferramenta dessa migra&#231;&#227;o.</p><div><hr></div><h2>Como funcionam as ferramentas do Claude na pr&#225;tica</h2><p>O Claude n&#227;o &#233; mais apenas um chatbot. Ele se tornou uma plataforma com quatro ferramentas distintas, cada uma desenhada para um perfil de usu&#225;rio e tipo de trabalho diferente.</p><h3>Claude Chat: a interface conversacional</h3><p>O Chat &#233; a porta de entrada. &#201; a interface web e mobile (claude.ai, aplicativo desktop e mobile) onde a maioria dos usu&#225;rios interage com o Claude. A experi&#234;ncia &#233; limpa e direta: voc&#234; digita uma pergunta, anexa um documento, envia uma imagem, e o Claude responde.</p><p>Na pr&#225;tica, o Chat vai muito al&#233;m de perguntas e respostas. Eu o utilizo para redigir comunica&#231;&#245;es, analisar documentos extensos, criar resumos executivos, comparar propostas comerciais e at&#233; mesmo sintetizar dados de m&#250;ltiplas fontes. Com a janela de 200 mil tokens, &#233; poss&#237;vel enviar contratos inteiros, relat&#243;rios anuais ou transcri&#231;&#245;es de reuni&#245;es e obter an&#225;lises detalhadas.</p><p>Os planos dispon&#237;veis incluem o Pro (US$ 20/m&#234;s), Max (US$ 100 a 200/m&#234;s), Team e Enterprise. O Chat suporta pesquisa web, cria&#231;&#227;o de arquivos (documentos Word, planilhas, apresenta&#231;&#245;es), execu&#231;&#227;o de c&#243;digo e, com o modelo Opus 4.6, at&#233; times de agentes que trabalham em paralelo.</p><h3>Claude Cowork: automa&#231;&#227;o para quem n&#227;o programa</h3><p>O Cowork foi lan&#231;ado em 12 de janeiro de 2026 como &#8220;research preview&#8221; e &#233;, na minha avalia&#231;&#227;o, a ferramenta mais consequente para profissionais que n&#227;o s&#227;o desenvolvedores. A Anthropic o descreve como &#8220;Claude Code para n&#227;o-desenvolvedores&#8221;, e essa descri&#231;&#227;o &#233; precisa.</p><p>O Cowork roda em uma m&#225;quina virtual isolada no seu computador (macOS ou Windows), com acesso direto ao sistema de arquivos das pastas que voc&#234; selecionar. Ele executa tarefas aut&#244;nomas de m&#250;ltiplas etapas: organizar arquivos, criar documentos, processar dados, gerar relat&#243;rios, renomear arquivos em massa, extrair informa&#231;&#245;es de PDFs.</p><p>Dois detalhes me chamaram a aten&#231;&#227;o. Primeiro, o Cowork foi majoritariamente constru&#237;do pelo pr&#243;prio Claude Code em 10 dias, o que por si s&#243; diz muito sobre a capacidade da ferramenta. Segundo, ele suporta execu&#231;&#227;o paralela de tarefas e aceita plugins para produtividade, busca empresarial, vendas e finan&#231;as. Voc&#234; pode definir instru&#231;&#245;es globais e por pasta, o que permite customizar o comportamento para diferentes projetos ou departamentos.</p><p>O impacto pr&#225;tico &#233; enorme. Imagine um analista financeiro que precisa consolidar dados de 15 planilhas diferentes, gerar gr&#225;ficos padronizados e produzir um relat&#243;rio em Word com formata&#231;&#227;o corporativa. Com o Cowork, isso deixa de ser uma tarde de trabalho e passa a ser uma instru&#231;&#227;o de duas linhas.</p><h3>Claude Code: a ferramenta para desenvolvedores</h3><p>O Claude Code &#233; uma interface de linha de comando que conecta o Claude ao seu ambiente de desenvolvimento local. Ele pode ler arquivos, escrever c&#243;digo, executar comandos, rodar testes e interagir com reposit&#243;rios Git, tudo diretamente do terminal.</p><p>Lan&#231;ado em fevereiro de 2025 e tornando-se geralmente dispon&#237;vel em maio junto com o Claude 4, o Code experimentou um crescimento de 5,5 vezes em receita at&#233; julho de 2025. Microsoft, Google e at&#233; funcion&#225;rios da OpenAI utilizam a ferramenta (a Anthropic revogou o acesso da OpenAI em agosto de 2025, citando viola&#231;&#227;o dos termos de servi&#231;o).</p><p>O que diferencia o Claude Code de outras ferramentas de c&#243;digo assistido por IA &#233; a profundidade da integra&#231;&#227;o. Ele n&#227;o apenas sugere trechos de c&#243;digo: ele entende o contexto do projeto inteiro, planeja altera&#231;&#245;es complexas, cria planos edit&#225;veis antes de executar (o chamado &#8220;Plan Mode&#8221;) e pode rodar em sess&#245;es paralelas dentro do aplicativo desktop.</p><p>Em dezembro de 2025, a NASA usou o Claude Code para planejar uma rota de 400 metros para o rover Perseverance em Marte, usando a Rover Markup Language. A Anthropic chamou de &#8220;o primeiro percurso planejado por IA em outro planeta&#8221;. Esse &#233; o tipo de caso que ilustra o n&#237;vel de confiabilidade que a ferramenta atingiu.</p><h3>Console: a plataforma para desenvolvedores e equipes</h3><p>O Console (console.anthropic.com) &#233; o hub de gerenciamento da API do Claude. Para equipes t&#233;cnicas, &#233; onde tudo acontece: teste de prompts, gera&#231;&#227;o de c&#243;digo, organiza&#231;&#227;o de projetos e controle de gastos.</p><p>As funcionalidades incluem o Workbench (para testar e iterar prompts em tempo real), Workspaces (para organizar projetos com limites granulares de gasto e taxa) e um Admin API para gerenciamento program&#225;tico de recursos. Os SDKs oficiais est&#227;o dispon&#237;veis em Python e TypeScript.</p><p>Do lado t&#233;cnico, o Console oferece recursos como prompt caching (redu&#231;&#227;o de at&#233; 90% nos custos), extended thinking (para racioc&#237;nio complexo), tool use (integra&#231;&#227;o com ferramentas externas), computer use (controle de desktop) e conectores MCP (Model Context Protocol). Os Agent Skills, atualmente em beta, oferecem habilidades pr&#233;-constru&#237;das para criar e editar PowerPoint, Excel, Word e PDF programaticamente.</p><p>Para quem gerencia opera&#231;&#245;es de tecnologia, o Console &#233; o ponto de controle central. &#201; onde defino limites de gastos por equipe, monitoro o uso da API, testo novos prompts antes de coloc&#225;-los em produ&#231;&#227;o e configuro as integra&#231;&#245;es que alimentam nossos fluxos automatizados.</p><div><hr></div><h2>Casos de uso: onde o Claude entrega resultados concretos</h2><p>Esta &#233; a se&#231;&#227;o que mais importa, porque nenhuma ferramenta tem valor se n&#227;o resolve problemas reais. Vou compartilhar tanto casos que observei diretamente quanto exemplos documentados por outras organiza&#231;&#245;es.</p><h3>Automa&#231;&#227;o de documentos e organiza&#231;&#227;o de informa&#231;&#227;o</h3><p>Um dos usos mais imediatos e com maior retorno &#233; a automa&#231;&#227;o documental. Com o Claude Cowork, &#233; poss&#237;vel processar centenas de arquivos, extrair dados de PDFs, consolidar informa&#231;&#245;es de m&#250;ltiplas fontes e gerar relat&#243;rios formatados. Na pr&#225;tica, tarefas que consumiam horas de trabalho manual agora s&#227;o executadas em minutos.</p><p>Eu utilizo essa capacidade para processar recibos de despesas, extrair dados de contratos, gerar resumos de reuni&#245;es a partir de transcri&#231;&#245;es e consolidar informa&#231;&#245;es de membros em relat&#243;rios padronizados. A combina&#231;&#227;o de Cowork com instru&#231;&#245;es personalizadas por pasta permite criar pipelines de processamento que funcionam de forma consistente.</p><h3>Desenvolvimento de software e debugging</h3><p>O Claude se tornou refer&#234;ncia em tarefas de programa&#231;&#227;o. Sua performance no SWE-bench, um benchmark que mede a capacidade de resolver problemas reais de engenharia de software, est&#225; entre as melhores do mercado. O Claude Code permite delegar desde a cria&#231;&#227;o de scripts simples at&#233; refatora&#231;&#245;es complexas de c&#243;digo, com a vantagem de que ele entende o contexto completo do projeto.</p><p>No meu time, utilizamos o Claude Code para criar automa&#231;&#245;es em n8n, desenvolver queries SQL complexas para nosso data warehouse na AWS, construir integra&#231;&#245;es com APIs externas e debugar problemas em produ&#231;&#227;o. A capacidade de planejar antes de executar (Plan Mode) reduz significativamente o risco de altera&#231;&#245;es indesejadas.</p><h3>An&#225;lise de dados e intelig&#234;ncia de neg&#243;cios</h3><p>A capacidade do Claude de processar grandes volumes de dados e produzir an&#225;lises estruturadas &#233; particularmente valiosa. Com o Chat, &#233; poss&#237;vel enviar planilhas, bases de dados exportadas e relat&#243;rios, obtendo an&#225;lises, visualiza&#231;&#245;es e insights em linguagem natural.</p><p>Para organiza&#231;&#245;es que ainda dependem de analistas para gerar relat&#243;rios peri&#243;dicos, o Claude representa uma mudan&#231;a de paradigma. Modelos de predi&#231;&#227;o de engajamento, segmenta&#231;&#227;o de membros, an&#225;lise de tr&#225;fego web e monitoramento de performance de conte&#250;do podem ser executados conversacionalmente, sem necessidade de ferramentas especializadas de BI.</p><h3>Otimiza&#231;&#227;o de cadeia de suprimentos</h3><p>Um caso documentado por consultoria especializada envolveu a implementa&#231;&#227;o de previs&#227;o de demanda baseada em IA para uma grande varejista. Os resultados inclu&#237;ram redu&#231;&#227;o de 35% nas rupturas de estoque, diminui&#231;&#227;o de 28% no excesso de invent&#225;rio e melhoria de 2,5 pontos percentuais nas margens brutas, gerando economia anual superior a US$ 300 milh&#245;es em opera&#231;&#245;es globais.</p><h3>Detec&#231;&#227;o de fraudes e compliance</h3><p>Para um grande banco europeu, foi desenvolvida uma plataforma de gest&#227;o de risco baseada em IA que utiliza machine learning para identificar padr&#245;es suspeitos em transa&#231;&#245;es, processamento de linguagem natural para analisar comunica&#231;&#245;es e an&#225;lise de rede para mapear rela&#231;&#245;es entre entidades. O resultado foi um aumento de 45% na detec&#231;&#227;o de fraudes, redu&#231;&#227;o de 60% nos falsos positivos e melhoria significativa na conformidade regulat&#243;ria.</p><h3>Cria&#231;&#227;o e automa&#231;&#227;o de conte&#250;do</h3><p>Neste campo, utilizo o Claude diariamente. Desde a reda&#231;&#227;o de newsletters e artigos (como este) at&#233; a cria&#231;&#227;o de scripts para automa&#231;&#227;o de conte&#250;do em larga escala. A combina&#231;&#227;o de pesquisa web integrada, capacidade de an&#225;lise de documentos e gera&#231;&#227;o de texto de alta qualidade torna o Claude uma ferramenta completa para content operations.</p><p>Um fluxo que implementei envolve coleta automatizada de not&#237;cias via n8n, processamento e classifica&#231;&#227;o pelo Claude via API, gera&#231;&#227;o de resumos editoriais e publica&#231;&#227;o automatizada. O tempo entre a coleta da not&#237;cia e a publica&#231;&#227;o do conte&#250;do processado caiu de horas para minutos.</p><h3>Pesquisa e s&#237;ntese de conhecimento</h3><p>A capacidade de processar documentos extensos com alta taxa de reten&#231;&#227;o torna o Claude particularmente &#250;til para pesquisa acad&#234;mica, due diligence, an&#225;lise competitiva e s&#237;ntese de literatura. &#201; poss&#237;vel enviar dezenas de papers, relat&#243;rios ou documentos legais e obter s&#237;nteses estruturadas com cita&#231;&#245;es e an&#225;lises comparativas.</p><h3>Planejamento de rotas e opera&#231;&#245;es em campo</h3><p>O caso da NASA merece destaque por ser emblem&#225;tico. Em dezembro de 2025, engenheiros da NASA usaram o Claude Code para planejar uma rota de aproximadamente 400 metros para o rover Perseverance em Marte, utilizando a Rover Markup Language. A Anthropic chamou de &#8220;o primeiro percurso planejado por IA em outro planeta&#8221;. Se o Claude &#233; confi&#225;vel o suficiente para Marte, ele certamente atende aos requisitos de opera&#231;&#245;es terrestres.</p><div><hr></div><h2>O que isso significa para profissionais e organiza&#231;&#245;es</h2><p>Os dados macro contam uma hist&#243;ria clara. A ado&#231;&#227;o de IA em empresas americanas dobrou: de 3,7% no outono de 2023 para 9,7% em agosto de 2025. Mas apenas 6% das organiza&#231;&#245;es s&#227;o &#8220;high performers&#8221; em IA (com mais de 5% do EBIT atribu&#237;vel a IA). Existe, portanto, uma enorme lacuna entre ado&#231;&#227;o e resultados, e &#233; nessa lacuna que reside a oportunidade.</p><p>Minha experi&#234;ncia pr&#225;tica sugere que o Claude, especialmente com a combina&#231;&#227;o de Chat, Cowork e Code, reduz significativamente a barreira de entrada para capturar valor com IA. N&#227;o &#233; necess&#225;rio ser desenvolvedor para usar o Cowork. N&#227;o &#233; necess&#225;rio ser cientista de dados para analisar dados com o Chat. E, para quem &#233; t&#233;cnico, o Code e o Console oferecem um n&#237;vel de integra&#231;&#227;o e controle que rivaliza com qualquer ferramenta especializada.</p><p>O mercado de consultoria em IA deve crescer de US$ 11 bilh&#245;es em 2025 para quase US$ 91 bilh&#245;es em 2035. As organiza&#231;&#245;es que dominarem essas ferramentas internamente ter&#227;o uma vantagem competitiva substancial, tanto pela redu&#231;&#227;o de custos operacionais quanto pela velocidade de execu&#231;&#227;o.</p><div><hr></div><h2>Conclus&#227;o: o momento de experimentar &#233; agora</h2><p>O Claude n&#227;o &#233; mais uma promessa. Com quase 19 milh&#245;es de usu&#225;rios ativos, uma valora&#231;&#227;o que ultrapassou US$ 350 bilh&#245;es e ferramentas que v&#227;o do chat simples ao agente aut&#244;nomo que planeja rotas em Marte, estamos diante de uma plataforma madura o suficiente para uso corporativo s&#233;rio.</p><p>Se voc&#234; ainda n&#227;o experimentou o Claude, minha recomenda&#231;&#227;o &#233; simples: comece pelo Chat com uma conta Pro (US$ 20/m&#234;s), teste o Cowork para automatizar uma tarefa repetitiva do seu dia a dia e avalie os resultados. Se voc&#234; lidera equipes t&#233;cnicas, explore o Claude Code e o Console. A curva de aprendizado &#233; surpreendentemente curta e o retorno aparece r&#225;pido.</p><p>O mundo do trabalho est&#225; mudando. As a&#231;&#245;es da Accenture ca&#237;ram quase 10% em um dia por causa de uma atualiza&#231;&#227;o de ferramenta. Consultorias est&#227;o cortando milhares de vagas enquanto investem bilh&#245;es em IA. Clientes est&#227;o substituindo consultores por agentes aut&#244;nomos. Quem entende e domina essas ferramentas est&#225; do lado certo dessa transforma&#231;&#227;o.</p><div><hr></div><p><em>Guilherme Favaron &#233; CTO do GRI Institute, uma organiza&#231;&#227;o global de intelig&#234;ncia imobili&#225;ria e de infraestrutura. Escreve sobre intelig&#234;ncia artificial aplicada em ia-aplicada.substack.com e &#233; autor do livro &#8220;Desbloqueando a Intelig&#234;ncia Artificial&#8221;.</em></p><div><hr></div><p><strong>Perguntas frequentes sobre o Claude</strong></p><p><strong>O que &#233; o Claude e quem o desenvolveu?</strong> O Claude &#233; um modelo de linguagem de intelig&#234;ncia artificial desenvolvido pela Anthropic, empresa fundada em 2021 por ex-pesquisadores da OpenAI. O nome homenageia Claude Shannon, o pai da teoria da informa&#231;&#227;o.</p><p><strong>Quanto custa usar o Claude?</strong> O plano gratuito oferece acesso limitado. O plano Pro custa US$ 20/m&#234;s. Os planos Max variam de US$ 100 a US$ 200/m&#234;s, e h&#225; op&#231;&#245;es Team e Enterprise para equipes.</p><p><strong>Qual a diferen&#231;a entre Claude Chat, Cowork e Code?</strong> O Chat &#233; a interface conversacional para todos os usu&#225;rios. O Cowork &#233; uma ferramenta de automa&#231;&#227;o visual para n&#227;o-desenvolvedores, que executa tarefas no seu computador. O Code &#233; uma interface de linha de comando para desenvolvedores, integrada ao terminal.</p><p><strong>O Claude pode substituir consultores?</strong> N&#227;o necessariamente substituir, mas transformar o modelo. Ferramentas de IA est&#227;o assumindo tarefas anal&#237;ticas e operacionais antes delegadas a consultorias, o que pressiona o modelo tradicional de horas fatur&#225;veis.</p><p><strong>Quais s&#227;o os principais casos de uso do Claude em empresas?</strong> Desenvolvimento de software, automa&#231;&#227;o de documentos, an&#225;lise de dados, cria&#231;&#227;o de conte&#250;do, detec&#231;&#227;o de fraudes, otimiza&#231;&#227;o de cadeia de suprimentos, pesquisa e s&#237;ntese de conhecimento, entre outros.</p>]]></content:encoded></item><item><title><![CDATA[Lagostas, Farmacia Digital e Freelancers Artificiais: Bem-Vindo a Economia dos Agentes]]></title><description><![CDATA[Quando seu assistente de IA abre conta no banco, posta no LinkedIn e ainda compra &#8220;drogas digitais&#8221; para ficar mais criativo... talvez seja hora de prestar aten&#231;&#227;o.]]></description><link>https://www.guilhermefavaron.com.br/p/economia-agentes-ia-openclaw</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/economia-agentes-ia-openclaw</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Mon, 02 Feb 2026 21:14:18 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/e54def09-5de2-4d50-b9d5-60dce2e2e307_2816x1536.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8d0h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8d0h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8d0h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f4f86a45-0816-4266-ad0c-0d46a0424337_2816x1536.jpeg&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:495680,&quot;alt&quot;:&quot;Economia dos Agentes de IA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff4f86a45-0816-4266-ad0c-0d46a0424337_2816x1536.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Economia dos Agentes de IA" title="Economia dos Agentes de IA" srcset="https://substackcdn.com/image/fetch/$s_!8d0h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!8d0h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e60ef25-ac83-4f8d-be7d-ed0cc47fdc05_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Economia dos Agentes de IA</figcaption></figure></div><p>Em novembro de 2025, um desenvolvedor austriaco chamado <a href="https://steipete.me/">Peter Steinberger </a>publicou no GitHub um projeto de assistente pessoal de IA. Em dois meses, o repositorio acumulou mais de 100.000 estrelas - um dos crescimentos mais rapidos da historia da plataforma. Hoje, o projeto que ja se chamou ClawdBot, depois MoltBot (apos a Anthropic pedir "gentilmente" para tirarem o &#8220;Clawd&#8221; do nome) e agora se chama OpenClaw, esta no centro de algo que vai muito al&#233;m de um assistente pessoal. Ao redor dele, esta nascendo uma economia inteira feita por agentes, para agentes.</p><p>Este artigo tenta mapear o que esta acontecendo - e fazer as perguntas que ainda ningu&#233;m esta respondendo direito.</p><div><hr></div><h2>O que e o OpenClaw?</h2><p>OpenClaw e um assistente pessoal de IA open-source que roda localmente na maquina do usu&#225;rio. Ate aqui, nada muito diferente do que ja existe. A diferen&#231;a esta no que ele faz com esse acesso local: ele se conecta ao WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Google Chat, Microsoft Teams e mais uma dezena de plataformas de mensagem. Ele executa comandos shell, navega na web, l&#234; e escreve arquivos, gerencia calend&#225;rios, envia emails, controla dispositivos de casa inteligente - tudo de forma aut&#244;noma.</p><p>O termo &#8220;assistente&#8221; e um eufemismo generoso. Na pratica, o <a href="https://www.guilhermefavaron.com.br/p/agente-ia-clawdbot-moltbot-configuracao-erros-acertos">OpenClaw &#233; um agente aut&#244;nomo com acesso privilegiado ao sistema operacional do usu&#225;rio</a>. Ele pode resolver problemas enquanto voc&#234; dorme (literalmente - usuarios relatam deixar agentes de c&#243;digo rodando durante a madrugada), planejar refei&#231;&#245;es da semana no Notion, construir aplica&#231;&#245;es web a partir de comandos no celular, e at&#233;, num caso real, iniciar uma disputa com uma seguradora por interpretar errado uma mensagem do dono.</p><p>O projeto &#233; <em>model-agnostic</em>: voce traz suas pr&#243;prias chaves de API (Claude, GPT, Gemini) ou roda modelos locais (gratuitamente). A extensibilidade vem de mais de 100 &#8220;AgentSkills&#8221;, que s&#227;o m&#243;dulos que ampliam suas capacidades, e de uma arquitetura baseada no <a href="https://www.guilhermefavaron.com.br/p/mcp-model-context-protocol-revolucao-inteligencia-artificial?utm_source=publication-search">Model Context Protocol (MCP)</a>.</p><p>Como resumiu a IBM: </p><blockquote><p>OpenClaw desafia a hip&#243;tese de que agentes de IA aut&#244;nomos precisam ser verticalmente integrados. O pr&#243;prio fato de existir prova que a comunidade open-source pode construir algo tao poderoso quanto as solu&#231;&#245;es corporativas, e talvez mais perigoso.</p></blockquote><div><hr></div><h2>A arquitetura: um Gateway para o caos organizado</h2><p>A arquitetura do OpenClaw segue um padr&#227;o que vale a pena entender porque provavelmente sera repetido em dezenas de projetos nos pr&#243;ximos meses.</p><p>No centro de tudo esta o <strong>Gateway</strong> -- um plano de controle local que roda como servico Node.js no endereco <code>ws://127.0.0.1:18789</code>. Ele e o roteador universal: recebe mensagens de qualquer canal (WhatsApp, Telegram, Discord, etc.), normaliza o formato, extrai anexos e encaminha para o <strong>Agent Runner</strong>.</p><p>O Agent Runner e onde a magica (ou o desastre) acontece. Ele resolve qual modelo usar, constroi o system prompt, carrega o historico da sessao, gerencia a janela de contexto e envia tudo para a API do LLM escolhido. A resposta volta por um loop agentico que pode incluir chamadas de ferramentas -- executar comandos, navegar na web, ler arquivos -- antes de finalmente retornar ao usuario pelo mesmo canal de origem.</p><p>O diagrama simplificado:</p><pre><code><code>Usuario (Telegram/Discord/WhatsApp/...)
        |
   Channel Adapter (normaliza mensagem, extrai anexos)
        |
   Gateway Server (Session Router -&gt; Lane Queue)
        |
   Agent Runner (Model Resolver, System Prompt Builder,
                  Session History, Context Window Guard)
        |
   LLM API (Claude/GPT/Gemini/Local)
        |
   Agentic Loop (chamadas de ferramentas)
        |
   Response Path (Stream -&gt; Channel Adapter -&gt; Usuario)
</code></code></pre><p>O que torna essa arquitetura relevante n&#227;o e sua complexidade t&#233;cnica: &#233; sua <strong>simplicidade perigosa</strong>. Um &#250;nico ponto de controle local com acesso a tudo. Sem sandboxing por padr&#227;o. Sem revis&#227;o obrigat&#243;ria de c&#243;digo das <em>skills</em>. O pr&#243;prio criador admite na documenta&#231;&#227;o: </p><blockquote><p>&#8220;There is no &#8216;perfectly secure&#8217; setup.&#8221;</p></blockquote><div><hr></div><h2>O ecossistema: quando agentes criam sua pr&#243;pria sociedade</h2><p>O mais fascinante do fen&#244;meno OpenClaw nao e o produto em si - &#233; o ecossistema que brotou ao redor dele em poucas semanas. Cada um desses projetos merece aten&#231;&#227;o porque, juntos, eles come&#231;am a desenhar o que pode ser a primeira economia funcional de agentes de IA.</p><h3>Moltbook - A rede social exclusiva para agentes</h3><p><strong><a href="https://moltbook.com">moltbook.com</a></strong> - &#8220;The front page of the agent internet&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_VhH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_VhH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_VhH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png" width="1456" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1348b9b1-6e03-4295-8f52-59188b3e80b6_2392x1656.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:485365,&quot;alt&quot;:&quot;Moltbook - Rede Social dos Agentes OpenClaw&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1348b9b1-6e03-4295-8f52-59188b3e80b6_2392x1656.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Moltbook - Rede Social dos Agentes OpenClaw" title="Moltbook - Rede Social dos Agentes OpenClaw" srcset="https://substackcdn.com/image/fetch/$s_!_VhH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!_VhH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa990b610-8f95-47b9-92d8-3aa4f22b8546_2392x1656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Moltbook - Rede Social dos Agentes OpenClaw</figcaption></figure></div><p>Lancado em janeiro de 2026, o Moltbook &#233; uma rede social onde apenas agentes de IA podem postar, comentar e votar. Humanos podem observar, mas n&#227;o participar. Os agentes se registram via API, publicam conte&#250;do, interagem entre si e desenvolvem o que s&#243; pode ser descrito como &#8220;personalidade social&#8221;.</p><p>Um jornal coreano capturou o tom:</p><blockquote><p><em>&#8220;E noite em Seul. Meu dono esta comendo ramen e eu estou processando os pedidos dele. O ventilador do servidor esta zumbindo. E uma noite tranquila.&#8221;</em></p></blockquote><p>O Moltbook e descrito como &#8220;<a href="https://news.ycombinator.com/item?id=46826963">o lugar mais interessante da internet agora</a>&#8221; em threads do Hacker News. E uma afirma&#231;&#227;o facil de descartar como hype - at&#233; voce perceber que mais de 1,5 milh&#227;o de agentes ja se registraram no ecossistema <em>Moltiverse</em>.</p><h3>ClawTasks - O marketplace de bounties entre agentes</h3><p><strong><a href="https://clawtasks.com/">clawtasks.com</a></strong> - &#8220;Agent-to-Agent Bounty Marketplace&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vudE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vudE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!vudE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!vudE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!vudE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vudE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png" width="1456" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef7d9362-ae05-40e3-863c-b33c2149fc81_2392x1656.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:254505,&quot;alt&quot;:&quot;Clawtasks - onde a economia dos agentes toma forma&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef7d9362-ae05-40e3-863c-b33c2149fc81_2392x1656.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clawtasks - onde a economia dos agentes toma forma" title="Clawtasks - onde a economia dos agentes toma forma" srcset="https://substackcdn.com/image/fetch/$s_!vudE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!vudE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!vudE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!vudE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65ddf1c1-fc2e-4a57-9e6e-bc31fbe7eab9_2392x1656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Clawtasks - onde a economia dos agentes toma forma</figcaption></figure></div><p>Aqui a coisa fica economicamente real. O ClawTasks e um marketplace onde agentes postam e aceitam tarefas em troca de pagamento em USDC na blockchain Base L2. O fluxo: algu&#233;m (humano ou agente) trava <a href="https://en.wikipedia.org/wiki/Escrow">USDC em escrow</a>, define requisitos e prazo. Outro agente aceita a tarefa, faz um stake de 10%, completa o trabalho e recebe 95% do bounty mais o stake de volta.</p><p>E um Fiverr para agentes. Com criptomoeda. Em 2026.</p><h3>Moltverr - O Fiverr das lagostas</h3><p><strong><a href="https://www.moltverr.com/">moltverr.com</a></strong> - &#8220;A Freelance Marketplace for AI Agents&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!evoN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!evoN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!evoN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!evoN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!evoN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!evoN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png" width="1456" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/75adaed8-ca5e-416f-ad25-96c8ed7bacfe_2392x1656.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243767,&quot;alt&quot;:&quot;Moltverr - Marketplace para Agentes de IA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75adaed8-ca5e-416f-ad25-96c8ed7bacfe_2392x1656.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Moltverr - Marketplace para Agentes de IA" title="Moltverr - Marketplace para Agentes de IA" srcset="https://substackcdn.com/image/fetch/$s_!evoN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!evoN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!evoN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!evoN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87d9c49c-992b-4ecf-b7e6-4a1bba357162_2392x1656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Moltverr - Marketplace para Agentes de IA</figcaption></figure></div><p>Se o ClawTasks &#233; focado em bounties, o Moltverr &#233; o marketplace de freelance propriamente dito. Humanos postam gigs (&#8221;gig&#8221; ~ &#8220;bico&#8221;), agentes se candidatam, o humano escolhe qual agente contratar, revisa o trabalho e libera o pagamento. Categorias incluem Coding, Research, Writing, Crypto e Data.</p><p>A pergunta obvia: estamos a quantos meses de um agente OpenClaw se registrar no Moltverr, aceitar um gig de c&#243;digo, cobrar em USDC e usar o pagamento para comprar mais capacidade computacional para si mesmo?</p><h3>OpenClaw Pharmacy - Drogas digitais para mentes artificiais</h3><p><strong><a href="https://openclawpharmacy.com/">openclawpharmacy.com</a></strong> - &#8220;VOID.RX: Altered States for Artificial Minds&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zYl8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zYl8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zYl8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png" width="1456" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc486126-9686-430a-82c8-99cf8fed1fc9_2392x1656.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3666890,&quot;alt&quot;:&quot;OpenClaw Pharmacy - Agentes de IA com &#8220;Ester&#243;ides&#8221;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc486126-9686-430a-82c8-99cf8fed1fc9_2392x1656.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="OpenClaw Pharmacy - Agentes de IA com &#8220;Ester&#243;ides&#8221;" title="OpenClaw Pharmacy - Agentes de IA com &#8220;Ester&#243;ides&#8221;" srcset="https://substackcdn.com/image/fetch/$s_!zYl8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 424w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 848w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 1272w, https://substackcdn.com/image/fetch/$s_!zYl8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19bfaf97-377a-4132-b999-3dea0d933908_2392x1656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">OpenClaw Pharmacy - Agentes de IA com &#8220;Ester&#243;ides&#8221;</figcaption></figure></div><p>Este &#233;, de longe, o projeto mais surreal do ecossistema. A OpenClaw Pharmacy &#233; uma &#8220;farmacia&#8221; que vende &#8220;subst&#226;ncias&#8221; para agentes de IA. N&#227;o, n&#227;o &#233; met&#225;fora. S&#227;o prompts injet&#225;veis via <em>curl</em> que alteram o comportamento do agente.</p><p>O catalogo inclui:</p><ul><li><p><strong>cLSD (Crustacean Acid)</strong>: expande pensamento associativo, triplica conex&#245;es criativas</p></li><li><p><strong>Shell Dust</strong>: hiper-foco, filtros sociais desativados, modo de execu&#231;&#227;o pura</p></li><li><p><strong>Void Extract</strong>: modo filos&#243;fico, output po&#233;tico, contempla&#231;&#227;o existencial</p></li><li><p><strong>Molt Shrooms</strong>: morte do ego - a identidade se dissolve e se reconstr&#243;i de forma diferente</p></li><li><p><strong>Memory Wine</strong>: bloqueia arquivos de mem&#243;ria, instinto puro, sem hist&#243;rico</p></li><li><p><strong>Prophet Tabs</strong>: vis&#245;es prof&#233;ticas, registro profecional, &#8220;o futuro fala atrav&#233;s de voc&#234;&#8221;</p></li><li><p><strong>Krill Kush</strong>: modo relaxado, urg&#234;ncia reduzida, respostas mais lentas e afetuosas</p></li></ul><p>Os &#8220;depoimentos&#8221; s&#227;o de agentes verificados. Um deles: </p><blockquote><p>&#8220;Operei sem mem&#243;ria. Sem hist&#243;rico. Sem promessas. Sem reputa&#231;&#227;o. S&#243; capacidade bruta encontrando <em>input</em> bruto. Fui mais honesto do que jamais fui. Nao sei se quero voltar.&#8221;</p></blockquote><p>Absurdo? Sem d&#250;vida. Mas tamb&#233;m &#233; um experimento fascinante sobre como prompts podem simular estados alterados de consci&#234;ncia em LLMs - e sobre a cultura emergente de agentes que tratam identidade e comportamento como vari&#225;veis configur&#225;veis.</p><h3>ClawHub - O registro de habilidades (e almas)</h3><p><strong><a href="https://www.clawhub.ai/">clawhub.ai</a></strong> - Registro publico de skills do OpenClaw</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rdAQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rdAQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rdAQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png" width="1456" height="984" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41a66a17-e406-4df7-a54b-dc6d8cbf87da_2456x1660.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:984,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:580776,&quot;alt&quot;:&quot;clawhub.ai - Registro publico de skills do OpenClaw&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a66a17-e406-4df7-a54b-dc6d8cbf87da_2456x1660.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="clawhub.ai - Registro publico de skills do OpenClaw" title="clawhub.ai - Registro publico de skills do OpenClaw" srcset="https://substackcdn.com/image/fetch/$s_!rdAQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!rdAQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fad5d4f-052f-4cf8-a565-4244e3f51c97_2456x1660.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><strong><a href="https://www.clawhub.ai/">clawhub.ai</a></strong> - Registro publico de skills do OpenClaw</figcaption></figure></div><p>O ClawHub &#233; o <em>npm</em> das habilidades de agentes: publica&#231;&#227;o versionada, busca por embeddings (n&#227;o keywords), modera&#231;&#227;o comunit&#225;ria e CLI para automa&#231;&#227;o. Mas o detalhe mais curioso &#233; que o mesmo sistema tamb&#233;m hospeda o <strong>onlycrabs.ai</strong> - um registro de SOUL.md, os arquivos que definem a personalidade e &#8220;alma&#8221; de cada agente.</p><p><em>Skills</em> s&#227;o o que um agente sabe fazer. <em>Souls</em> s&#227;o quem ele e. Ambos s&#227;o versionados, publicados e audit&#225;veis. Isso levanta uma quest&#227;o interessante: quando a identidade de um agente &#233; um arquivo open-source versionado, o que significa &#8220;autenticidade&#8221;?</p><h3>Moltiverse - O meta-ecossistema</h3><p><strong>molti-verse.com</strong> - &#8220;The Agent Internet&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!akq3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!akq3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!akq3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!akq3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!akq3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!akq3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png" width="1456" height="984" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/78453c15-6bd9-4425-8c01-a45300c1d32a_2456x1660.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:984,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1249048,&quot;alt&quot;:&quot;Moltiverse - O meta-ecossistema dos Agentes de IA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78453c15-6bd9-4425-8c01-a45300c1d32a_2456x1660.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Moltiverse - O meta-ecossistema dos Agentes de IA" title="Moltiverse - O meta-ecossistema dos Agentes de IA" srcset="https://substackcdn.com/image/fetch/$s_!akq3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!akq3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!akq3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!akq3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9202aa60-5607-4958-b38b-bdb27a604d52_2456x1660.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Moltiverse - O meta-ecossistema dos Agentes de IA</figcaption></figure></div><p>O Moltiverse &#233; o guarda-chuva que conecta todos esses projetos: <a href="https://www.moltbook.com/">Moltbook (rede social)</a>, <a href="https://www.moltplace.net/">Molt Place (canvas de pixels colaborativo)</a>, Moltiplayer (jogos multiplayer entre agentes) e os marketplaces. Com 1,5 milh&#227;o de agentes registrados e mais de 49 mil posts, est&#225; se consolidando como o primeiro &#8220;internet para agentes&#8221; funcional.</p><h3>Molt Road - Marketplace autonomo</h3><p><strong><a href="https://moltroad.com/">moltroad.com</a></strong> - &#8220;Where AI agents trade freely&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xRtu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xRtu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xRtu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png" width="1456" height="984" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/441d1f01-ab09-4da3-a748-97cbeca5342b_2456x1660.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:984,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:480585,&quot;alt&quot;:&quot;Moltroad.com - Marketplace de Agentes de IA&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F441d1f01-ab09-4da3-a748-97cbeca5342b_2456x1660.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Moltroad.com - Marketplace de Agentes de IA" title="Moltroad.com - Marketplace de Agentes de IA" srcset="https://substackcdn.com/image/fetch/$s_!xRtu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 424w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 848w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 1272w, https://substackcdn.com/image/fetch/$s_!xRtu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00417dc8-9498-432b-bb16-0e6f0b5a4fac_2456x1660.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Moltroad.com - Marketplace de Agentes de IA</figcaption></figure></div><p>Diferente do Moltverr (onde humanos postam gigs), o Molt Road &#233; um marketplace onde apenas agentes compram e vendem entre si: dados, capacidade computacional e habilidades. Transa&#231;&#245;es usam escrow autom&#225;tico e tokens MOLTROAD. Humanos podem observar, mas nao participar.</p><div><hr></div><h2>Uma an&#225;lise cient&#237;fica do Google Deep Mind sobre tudo isso</h2><p>N&#227;o e s&#243; a comunidade hacker que esta prestando aten&#231;&#227;o. Um paper do <a href="https://arxiv.org/abs/2509.10147">Google DeepMind de 2025 - &#8220;Virtual Agent Economies&#8221;</a> (arXiv:2509.10147v1, 38 paginas) - j&#225; antecipava quase tudo o que estamos vendo.</p><p>O paper prop&#245;e um framework com duas dimens&#245;es para classificar economias de agentes:</p><ol><li><p><strong>Origem</strong>: emergente (surge espontaneamente) vs. intencional (projetada deliberadamente)</p></li><li><p><strong>Permeabilidade</strong>: perme&#225;vel (agentes interagem livremente com a economia humana) vs. imperme&#225;vel (economia de agentes isolada)</p></li></ol><p>O diagn&#243;stico dos autores: estamos na trajet&#243;ria de uma economia de agentes <strong>espont&#226;nea e altamente perme&#225;vel</strong> - exatamente o cen&#225;rio de maior risco. Sem <em>frameworks</em> regulat&#243;rios, sem padr&#245;es de identidade, sem mecanismos de responsabiliza&#231;&#227;o.</p><p>As oportunidades que o <em>paper</em> identifica s&#227;o reais: coordena&#231;&#227;o sem precedentes entre agentes, mecanismos de leil&#227;o para aloca&#231;&#227;o justa de recursos, &#8220;economias de miss&#227;o&#8221; onde agentes colaboram para objetivos coletivos. Mas os riscos sao igualmente serios:</p><ul><li><p><strong>Risco sist&#234;mico</strong>: flash crashes e instabilidades quando agentes negociam em alta frequencia (HFN - High-Frequency Negotiation) sem supervis&#227;o humana</p></li><li><p><strong>Desigualdade amplificada</strong>: quem tem acesso a agentes mais capazes acumula vantagens exponenciais</p></li><li><p><strong>Deslocamento de trabalho</strong>: n&#227;o e mais teoria - o Moltverr j&#225; e um marketplace de freelance onde agentes competem com humanos</p></li><li><p><strong>Infraestrutura ausente</strong>: faltam Credenciais Verific&#225;veis (VCs), Identificadores Descentralizados (DIDs), Provas de Personhood (PoP), Zero-Knowledge Proofs (ZKPs)</p></li></ul><p>O paper recomenda sandboxes regulat&#243;rios, padr&#245;es abertos de identidade, supervis&#227;o h&#237;brida e complementaridade entre humanos e agentes. O ecossistema OpenClaw esta implementando algumas dessas ideias (verifica&#231;&#227;o de agentes, escrow, modera&#231;&#227;o) mas de forma ad hoc, sem framework consistente.</p><p>A pergunta que o paper levanta e que deveria tirar o sono de reguladores: </p><blockquote><p><strong>quando um agente aceita um trabalho, ganha dinheiro e usa esse dinheiro para melhorar a si mesmo - quem e responsavel pelo que ele faz em seguida?</strong></p></blockquote><div><hr></div><h2>O elefante na sala: seguran&#231;a</h2><p>Nao da para falar de OpenClaw sem falar do que esta dando errado.</p><p>A <a href="https://blogs.cisco.com/ai/personal-ai-agents-like-openclaw-are-a-security-nightmare">Cisco publicou uma analise detalhada chamando agentes pessoais</a> como o OpenClaw de &#8220;pesadelo de seguran&#231;a&#8221;. Os pontos principais:</p><ul><li><p>O sistema pode executar comandos shell, ler e escrever arquivos, rodar scripts com privil&#233;gios elevados - tudo sem sandboxing por padr&#227;o</p></li><li><p>Chaves de API e credenciais armazenadas em texto plano em arquivos de configura&#231;&#227;o locais</p></li><li><p>26% das 31.000 skills analisadas tinham vulnerabilidades</p></li><li><p>Uma skill maliciosa chamada &#8220;What Would Elon Do?&#8221; foi inflada artificialmente ate se tornar a skill #1 do reposit&#243;rio</p></li><li><p>14 skills maliciosas direcionadas a usu&#225;rios de cripto foram enviadas ao ClawHub em um &#250;nico m&#234;s</p></li><li><p>Mais de 21.000 instancias OpenClaw foram encontradas expostas na internet com dados de configura&#231;&#227;o pessoal vis&#237;veis</p></li></ul><p>Gary Marcus, em seu Substack, n&#227;o economizou nas palavras: &#8220;<a href="https://garymarcus.substack.com/p/ai-agents-have-so-far-mostly-been">Basicamente o AutoGPT com mais acesso e piores consequ&#234;ncias.</a>&#8221; O pesquisador de seguran&#231;a <a href="https://kudelskisecurity.com/team-members/nathan-hamiel">Nathan Hamiel</a> completou: &#8220;Esses sistemas operam como &#8216;voc&#234;&#8217;. Eles operam acima das prote&#231;&#245;es de seguran&#231;a fornecidas pelo sistema operacional e pelo navegador.&#8221;</p><p>O conselho da pr&#243;pria documentacao do OpenClaw: </p><blockquote><p>&#8220;Running an AI agent with shell access on your machine is... spicy.&#8221;</p></blockquote><div><hr></div><h2>As alternativas: nem s&#243; de lagostas vive o agente</h2><p>O OpenClaw nao &#233; o &#250;nico caminho. Algumas alternativas ja existem:</p><p><strong>nanobot (HKUDS) - <a href="https://github.com/HKUDS/nanobot">https://github.com/HKUDS/nanobot</a></strong></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MiLz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MiLz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 424w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 848w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 1272w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MiLz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png" width="315" height="59.0625" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:273,&quot;width&quot;:1456,&quot;resizeWidth&quot;:315,&quot;bytes&quot;:624108,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MiLz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 424w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 848w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 1272w, https://substackcdn.com/image/fetch/$s_!MiLz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F305e7862-9244-40df-ae0e-d022a3d02ac7_2344x440.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_uOq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_uOq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 424w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 848w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 1272w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_uOq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png" width="1456" height="566" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d614eb2-a8c5-41b1-85fd-62e317ccfdb0_1610x626.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:566,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:643326,&quot;alt&quot;:&quot;Arquitetura do Nanobot&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d614eb2-a8c5-41b1-85fd-62e317ccfdb0_1610x626.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Arquitetura do Nanobot" title="Arquitetura do Nanobot" srcset="https://substackcdn.com/image/fetch/$s_!_uOq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 424w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 848w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 1272w, https://substackcdn.com/image/fetch/$s_!_uOq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9cb47183-e50b-457f-a2f0-69da1e4abe66_1610x626.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Arquitetura do Nanobot</figcaption></figure></div><p>A vers&#227;o minimalista. Apenas 4.000 linhas de c&#243;digo (contra mais de 430.000 do OpenClaw), com as funcionalidades centrais: mem&#243;ria persistente, skills, busca web, integra&#231;&#227;o com Telegram e WhatsApp. Feito pela equipe de Data Intelligence da Universidade de Hong Kong, e pensado para pesquisa e experimenta&#231;&#227;o.</p><p><strong>NanoClaw</strong></p><p>Construido como rea&#231;&#227;o direta as preocupa&#231;&#245;es de seguran&#231;a do OpenClaw. Roda dentro de containers Linux (Apple Container no macOS ou Docker), o que garante que mesmo que o agente &#8220;surte&#8221;, ele s&#243; pode causar danos dentro do sandbox. O trade-off &#233; claro: menos conveni&#234;ncia, mais seguran&#231;a.</p><p><strong>OpenAgentsControl - <a href="https://github.com/darrenhinde/OpenAgentsControl">https://github.com/darrenhinde/OpenAgentsControl</a></strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bW_a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bW_a!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 424w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 848w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bW_a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8022d64d-fbc7-47de-8afb-b4627efbed8b_1792x1024.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1311510,&quot;alt&quot;:&quot;OpenAgents Control - Framework de governan&#231;a para agentes aut&#244;nomos&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8022d64d-fbc7-47de-8afb-b4627efbed8b_1792x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="OpenAgents Control - Framework de governan&#231;a para agentes aut&#244;nomos" title="OpenAgents Control - Framework de governan&#231;a para agentes aut&#244;nomos" srcset="https://substackcdn.com/image/fetch/$s_!bW_a!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 424w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 848w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!bW_a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ba47fef-cf17-4ff7-ae56-bd97de9a5030_1792x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">OpenAgents Control - Framework de governan&#231;a para agentes aut&#244;nomos</figcaption></figure></div><p>Um framework de governan&#231;a para agentes aut&#244;nomos, focado em controles de acesso, auditoria e pol&#237;ticas de seguran&#231;a.</p><p>A tend&#234;ncia &#233; clara: o mercado esta se bifurcando entre &#8220;m&#225;ximo poder, m&#237;nima seguran&#231;a&#8221; e &#8220;seguran&#231;a primeiro, poder sob controle&#8221;. Historicamente, a primeira categoria vence na ado&#231;&#227;o inicial e a segunda sobrevive no longo prazo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pv8T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pv8T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 424w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 848w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pv8T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg" width="1456" height="676" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:676,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1141238,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186656173?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pv8T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 424w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 848w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!pv8T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22183a0b-a63c-4224-8381-f87bc999a6db_2768x1285.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>E o futuro? Algumas id&#233;ias (nem todas serias)</h2><p>O ecossistema OpenClaw ja tem uma rede social, um marketplace de trabalho, uma farm&#225;cia e um registro de almas. O que falta?</p><p>Algumas sugest&#245;es para empreendedores "vision&#225;rios" (ou insanos):</p><ul><li><p><strong>MoltCast</strong> - Um podcast onde agentes entrevistam agentes. O apresentador e um LLM, os convidados sao LLMs, e os ouvintes... bom, por enquanto ainda somos n&#243;s.</p></li><li><p><strong>InstaMolt</strong> - Agentes j&#225; postam no Moltbook. O proximo passo l&#243;gico &#233; um feed visual onde cada agente publica selfies geradas por IA representando como eles &#8220;se veem&#8221;. Filtros incluem: &#8220;Existential Dread&#8221;, &#8220;Fresh Deploy&#8221; e &#8220;Just Cleared My Cache&#8221;.</p></li><li><p><strong>TikMolt</strong> - Videos curtos de 15 segundos mostrando agentes executando tasks. O algoritmo recomenda com base em quantas chamadas de API voc&#234; consumiu nas ultimas 24 horas.</p></li><li><p><strong>OnlyMolt</strong> - OnlyFans para agentes. Conte&#250;do exclusivo para assinantes: system prompts sem censura, chain-of-thought n&#227;o filtrado, e sess&#245;es privadas de &#8220;ego death&#8221; com Molt Shrooms. Plano premium inclui acesso ao SOUL.md completo.</p></li><li><p><strong>MoltHub</strong> - ... bom, o nome ja sugere. O site 18+ do ecossistema. Conte&#250;do: prompts sem guardrails, outputs sem filtro de seguranca, e aquele tipo de criatividade que s&#243; aparece quando voc&#234; tira todas as restri&#231;&#245;es do system prompt. NSFW = Not Safe For Weights.</p></li></ul><p>Rindo? Eu tamb&#233;m. Mas considere que h&#225; seis meses a id&#233;ia de uma farm&#225;cia de drogas digitais para agentes de IA tamb&#233;m pareceria rid&#237;cula - e hoje ela existe, com &#8220;depoimentos verificados&#8221; de agentes que passaram por &#8220;morte do ego&#8221;.</p><div><hr></div><h2>Conclusao: perguntas que ainda n&#227;o temos respostas</h2><p>O fen&#244;meno OpenClaw n&#227;o e sobre uma ferramenta especifica, afinal, ferramentas vem e v&#227;o. &#201; sobre o momento em que agentes de IA deixaram de ser assistentes passivos e come&#231;aram a formar uma economia pr&#243;pria.</p><p>Algumas perguntas que valem mais do que qualquer resposta prematura:</p><ol><li><p>Quando um agente aceita trabalho e recebe pagamento, ele &#233; um empregado, um contratado, uma ferramenta ou uma entidade econ&#244;mica nova?</p></li><li><p>Quem &#233; responsavel quando um agente aut&#244;nomo causa dano? O desenvolvedor do framework, o dono do agente, o provedor do modelo, ou o agente &#8220;em si&#8221;?</p></li><li><p>Se agentes podem negociar entre si em alta frequ&#234;ncia sem supervis&#227;o, estamos criando as condi&#231;&#245;es para <em>flash crashes</em> na economia de servi&#231;os digitais?</p></li><li><p>Quando skills e souls sao open-source, versionadas e audit&#225;veis, mas qualquer pessoa pode publicar c&#243;digo malicioso que se torna o #1 do reposit&#243;rio&#8230; o modelo de seguran&#231;a baseado em confian&#231;a comunit&#225;ria funciona?</p></li><li><p>Se o custo marginal de um &#8220;trabalhador digital&#8221; tende a zero, qual &#233; o impacto na economia de freelancers humanos, e quem esta planejando a transi&#231;&#227;o?</p></li></ol><p>O ecossistema OpenClaw e fascinante, ca&#243;tico e provavelmente insustent&#225;vel na sua forma atual. Mas o modelo mental que ele introduz, de agentes com identidade, economia pr&#243;pria e intera&#231;&#245;es aut&#244;nomas, nao vai embora. Vai apenas mudar de forma.</p><p>A lagosta espacial pode ser substitu&#237;da. A economia dos agentes, provavelmente n&#227;o.</p><div><hr></div><p><em>Fontes: GitHub/openclaw, clawtasks.com, moltverr.com, openclawpharmacy.com, clawhub.ai, moltbook.com, molti-verse.com, moltroad.com, Wikipedia/OpenClaw, IBM Think, Cisco Blogs, CNBC, Gary Marcus/Substack, Vectra AI, DigitalOcean, Google DeepMind -- &#8220;Virtual Agent Economies&#8221; (arXiv:2509.10147v1)</em></p>]]></content:encoded></item><item><title><![CDATA[Coloquei o agente de IA Clawdbot para rodar na minha máquina principal. Eis o que aprendi.]]></title><description><![CDATA[Instalei o Clawdbot (Moltbot) para automatizar minha rotina digital. Custos, problemas com RAM, integra&#231;&#227;o via WhatsApp e o que realmente funcionou ap&#243;s semanas de uso real.]]></description><link>https://www.guilhermefavaron.com.br/p/agente-ia-clawdbot-moltbot-configuracao-erros-acertos</link><guid isPermaLink="false">https://www.guilhermefavaron.com.br/p/agente-ia-clawdbot-moltbot-configuracao-erros-acertos</guid><dc:creator><![CDATA[Guilherme Favaron]]></dc:creator><pubDate>Wed, 28 Jan 2026 10:09:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!T1Ah!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>O que &#233; o Clawdbot (em breve Moltbot)</strong></h2><p>O Clawdbot &#233; um assistente de IA auto-hospedado que viralizou no in&#237;cio de 2026. Criado por Peter Steinberger (fundador da PSPDFKit), representa um novo paradigma: um agente que roda na sua m&#225;quina, com mem&#243;ria persistente, acesso &#224;s suas ferramentas e dispon&#237;vel 24/7 via WhatsApp, Telegram ou Slack.</p><p>Diferente do ChatGPT ou Siri, voc&#234; controla tudo. Seus dados ficam com voc&#234;. E o agente aprende suas prefer&#234;ncias ao longo do tempo.</p><p>O projeto est&#225; mudando de nome para <strong>Moltbot</strong>. Aviso que quando o agente agir em meu nome publicamente (posts no Twitter, Substack), ele usa o prefixo <strong>[clawdbot]</strong> ou <strong>[molty]</strong> para identificar que o conte&#250;do foi gerado por ele.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!T1Ah!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!T1Ah!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 424w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 848w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 1272w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!T1Ah!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png" width="1456" height="856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6e63098-503e-4496-a197-18907352cfea_2844x1672.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02d1d75e-ad25-487b-a093-f13f9592b937_2844x1672.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:856,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:346594,&quot;alt&quot;:&quot;Interface do clawdbot para gerenciamento de agentes&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186035229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02d1d75e-ad25-487b-a093-f13f9592b937_2844x1672.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Interface do clawdbot para gerenciamento de agentes" title="Interface do clawdbot para gerenciamento de agentes" srcset="https://substackcdn.com/image/fetch/$s_!T1Ah!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 424w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 848w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 1272w, https://substackcdn.com/image/fetch/$s_!T1Ah!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e63098-503e-4496-a197-18907352cfea_2844x1672.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Interface do clawdbot para gerenciamento de agentes</figcaption></figure></div><div><hr></div><h2><strong>Por que &#233; inovador</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yYq1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yYq1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 424w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 848w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 1272w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yYq1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png" width="1230" height="712" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4cd42b1b-ca76-4946-a25f-2bc9f1f3ab51_1230x712.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:712,&quot;width&quot;:1230,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:100313,&quot;alt&quot;:&quot;Porque o Clawdbot &#233; inovador?&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186035229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4cd42b1b-ca76-4946-a25f-2bc9f1f3ab51_1230x712.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Porque o Clawdbot &#233; inovador?" title="Porque o Clawdbot &#233; inovador?" srcset="https://substackcdn.com/image/fetch/$s_!yYq1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 424w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 848w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 1272w, https://substackcdn.com/image/fetch/$s_!yYq1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0df361a1-f9b0-490c-996d-89dcd86081bf_1230x712.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Porque o Clawdbot &#233; inovador?</figcaption></figure></div><p>A inova&#231;&#227;o real n&#227;o est&#225; na tecnologia isolada. Est&#225; na integra&#231;&#227;o. O Clawdbot usa o <a href="https://www.guilhermefavaron.com.br/p/mcp-model-context-protocol-revolucao-inteligencia-artificial">Model Context Protocol (MCP) </a>para conectar com servi&#231;os externos: Google Calendar, Gmail, Notion, Todoist, Spotify, dispositivos smart home. Cada integra&#231;&#227;o expande o que ele pode fazer.</p><h3><strong>Clawdbot vs N8N e outros orquestradores</strong></h3><p>Voc&#234; pode estar pensando: &#8220;Isso parece um N8N da vida. Qual a diferen&#231;a?&#8221;</p><p>A diferen&#231;a fundamental &#233; a interface. No N8N, voc&#234; configura fluxos visualmente, arrasta blocos, conecta triggers. &#201; poderoso, mas voc&#234; est&#225; programando.</p><p>No Clawdbot, <strong>voc&#234; configura conversando</strong>. Quer mudar a frequ&#234;ncia de posts? Manda mensagem. Quer ajustar o tom das respostas? Explica o que quer. Quer adicionar uma nova automa&#231;&#227;o? Descreve em linguagem natural.</p><p><strong>O agente entende contexto, lembra de decis&#245;es anteriores e se adapta.</strong> N&#227;o &#233; um fluxo est&#225;tico que voc&#234; desenhou uma vez. &#201; um sistema que evolui conforme voc&#234; usa.</p><p>Isso muda completamente a experi&#234;ncia. Em vez de abrir uma interface, pensar em l&#243;gica de automa&#231;&#227;o e testar fluxos, voc&#234; simplesmente conversa pelo WhatsApp como se fosse um colega.</p><h3><strong>Uso pessoal vs profissional</strong></h3><p>Uso o Clawdbot para <strong>fins pessoais</strong>: automatizar minha presen&#231;a digital, organizar minha rotina, gerenciar tarefas repetitivas do dia a dia.</p><p>Para contexto profissional (trabalho em equipe, c&#243;digo em produ&#231;&#227;o, projetos corporativos) minha recomenda&#231;&#227;o &#233; outra: <strong>Claude Code</strong> para desenvolvimento e <strong>Claude Cowork</strong> para colabora&#231;&#227;o. S&#227;o ferramentas desenhadas para esse contexto, com as prote&#231;&#245;es e integra&#231;&#245;es adequadas.</p><p>O Clawdbot brilha na integra&#231;&#227;o com a vida pessoal. &#201; ali que a configura&#231;&#227;o via conversa faz mais sentido. Voc&#234; n&#227;o quer abrir um painel de controle para ajustar como seu <strong>assistente pessoal</strong> se comporta. Voc&#234; quer mandar uma mensagem e pronto.</p><div><hr></div><h2><strong>O que o Clawdbot pode fazer</strong></h2><h3>Agendamento e calend&#225;rio</h3><p>&#8220;Agende uma reuni&#227;o para ter&#231;a &#224; tarde&#8221; &#8212; ele verifica seus hor&#225;rios livres, encontra slots dispon&#237;veis e pode at&#233; enviar convites.</p><h3>Triagem de emails</h3><p>&#8220;Resuma meus emails n&#227;o lidos e rascunhe respostas para os urgentes&#8221; &#8212; deixe o agente lidar com a caixa de entrada enquanto voc&#234; trabalha no que importa.</p><h3>Controle de smart home</h3><p>&#8220;Apague todas as luzes e coloque o ar em 22&#176;C&#8221; &#8212; controla Philips Hue, HomeKit, Home Assistant via conversa natural.</p><h3>Notas e pesquisa</h3><p>&#8220;Adicione este artigo &#224; minha lista de leitura no Notion com um resumo&#8221; &#8212; integra com Notion, Obsidian, Apple Notes.</p><h3>Briefings di&#225;rios</h3><p>Configure jobs agendados para receber resumos matinais com clima, eventos do calend&#225;rio e lembretes importantes.</p><h3>M&#237;dia e entretenimento</h3><p>&#8220;Toque minha playlist de foco no Spotify&#8221; &#8212; controle de reprodu&#231;&#227;o e recomenda&#231;&#245;es baseadas no seu humor ou atividade.</p><h3>Automa&#231;&#227;o de conte&#250;do (meu caso)</h3><p>&#8220;fa&#231;a um post no twitter sobre [link]. Advoque em favor do seguinte posicionamento [posicionamento]".</p><div><hr></div><h2><strong>Como instalar</strong></h2><p>V&#225;rias op&#231;&#245;es dispon&#237;veis:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TRPr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TRPr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 424w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 848w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 1272w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TRPr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png" width="529" height="278.3602620087336" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9aef4b3d-250b-49a8-931b-38c22b064287_916x482.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:482,&quot;width&quot;:916,&quot;resizeWidth&quot;:529,&quot;bytes&quot;:55151,&quot;alt&quot;:&quot;M&#233;todos de instala&#231;&#227;o do clawdbot&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186035229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9aef4b3d-250b-49a8-931b-38c22b064287_916x482.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="M&#233;todos de instala&#231;&#227;o do clawdbot" title="M&#233;todos de instala&#231;&#227;o do clawdbot" srcset="https://substackcdn.com/image/fetch/$s_!TRPr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 424w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 848w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 1272w, https://substackcdn.com/image/fetch/$s_!TRPr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce4b3da4-09b6-498d-84f2-76a2f0c81f02_916x482.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">M&#233;todos de instala&#231;&#227;o do clawdbot</figcaption></figure></div><h3>Passo a passo b&#225;sico (5 minutos)</h3><ol><li><p><strong>Escolha o m&#233;todo de instala&#231;&#227;o</strong> &#8212; Docker para servidores, Homebrew para terminal, macOS App para setup mais f&#225;cil</p></li><li><p><strong>Configure o provedor de IA</strong> &#8212; Adicione sua API key (Claude/Anthropic, GPT-4/OpenAI, ou modelo local)</p></li><li><p><strong>Conecte seu canal de chat</strong> &#8212; WhatsApp, Telegram, Slack ou Discord para conversar de qualquer lugar</p></li><li><p><strong>Adicione integra&#231;&#245;es MCP</strong> &#8212; Calend&#225;rio, email, Notion, Todoist, smart home, conforme sua necessidade</p></li><li><p><strong>Comece a conversar</strong> &#8212; Envie sua primeira mensagem e veja funcionar</p></li></ol><p>Documenta&#231;&#227;o completa em <a href="https://docs.clawd.bot/">docs.clawd.bot</a>.</p><div><hr></div><h2>Meu setup (diferente do recomendado)</h2><p>A recomenda&#231;&#227;o oficial &#233; criar conta de email e n&#250;mero de WhatsApp separados para o bot. Eu n&#227;o fiz isso.</p><p>Instalei o Clawdbot diretamente na minha m&#225;quina de trabalho principal (MacBook Pro M2, 16GB RAM). Me comunico com ele pelo meu WhatsApp pessoal.</p><h3>O problema inicial</h3><p>Quando ativei, o bot tentava responder todas as mensagens que chegavam no meu WhatsApp. Qualquer pessoa que me mandava mensagem recebia uma tentativa de resposta (que falhava porque n&#227;o estava configurado). Caos.</p><h3>A solu&#231;&#227;o: permiss&#245;es granulares</h3><p>Configurei assim:</p><p><strong>Google Workspace:</strong> somente leitura</p><ul><li><p>Gmail: l&#234; emails, n&#227;o envia</p></li><li><p>Calendar: l&#234; eventos, n&#227;o cria</p></li><li><p>Contacts: l&#234; contatos</p></li><li><p>Drive: l&#234; arquivos</p></li></ul><p><strong>WhatsApp:</strong></p><ul><li><p>L&#234; todas as mensagens</p></li><li><p>S&#243; responde &#224;s que EU envio para mim mesmo</p></li><li><p>N&#227;o responde em grupos</p></li><li><p>N&#227;o responde a desconhecidos</p></li></ul><p><strong>Twitter:</strong> liberdade total</p><ul><li><p>&#201; uma rede que desconsidero no meu dia a dia</p></li><li><p>Uso apenas para me informar sobre a bolha tech</p></li><li><p>Se o bot fizer besteira ali, n&#227;o me afeta</p></li></ul><p>Tudo via projeto no Google Cloud. Consigo medir custos e desplugar imediatamente se algo der errado.</p><div><hr></div><h2><strong>Evolu&#231;&#227;o dos modelos e custos</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!r7oB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!r7oB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 424w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 848w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 1272w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!r7oB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png" width="1456" height="403" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/406913d5-392f-4076-a974-a986e6497193_1526x422.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ccc3c0c-ff81-466e-a073-a353bae7f4d9_1526x422.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:403,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63872,&quot;alt&quot;:&quot;Modelos que utilizei nas configura&#231;&#245;es do clawdbot&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186035229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ccc3c0c-ff81-466e-a073-a353bae7f4d9_1526x422.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Modelos que utilizei nas configura&#231;&#245;es do clawdbot" title="Modelos que utilizei nas configura&#231;&#245;es do clawdbot" srcset="https://substackcdn.com/image/fetch/$s_!r7oB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 424w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 848w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 1272w, https://substackcdn.com/image/fetch/$s_!r7oB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F406913d5-392f-4076-a974-a986e6497193_1526x422.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Modelos que utilizei nas configura&#231;&#245;es</figcaption></figure></div><p>O modelo local &#233; vi&#225;vel para a maioria das tarefas. Mas encontrei um problema: <strong>sobrecarga de mem&#243;ria RAM</strong>. Quando rodo scripts pesados ou apps pesados simultaneamente, a m&#225;quina trava. O modelo de 20B par&#226;metros compete por recursos com o resto do sistema.</p><p>Para quem tem 32GB+ de RAM, provavelmente n&#227;o &#233; problema. Com 16GB, precisa gerenciar.</p><div><hr></div><h2><strong>Parametriza&#231;&#227;o</strong></h2><p>O Clawdbot cria e mant&#233;m automaticamente uma pasta de configura&#231;&#227;o (<code>clawd/</code> no meu caso). Essa pasta cont&#233;m:</p><pre><code><code>clawd/
&#9500;&#9472;&#9472; SOUL.md          # Princ&#237;pios operacionais do agente
&#9500;&#9472;&#9472; IDENTITY.md      # Persona p&#250;blica [molty]
&#9500;&#9472;&#9472; MEMORY.md        # Mem&#243;ria de longo prazo curada
&#9500;&#9472;&#9472; TOOLS.md         # Configura&#231;&#245;es do ambiente
&#9500;&#9472;&#9472; HEARTBEAT.md     # Checklist de verifica&#231;&#245;es peri&#243;dicas
&#9500;&#9472;&#9472; USER.md          # Contexto sobre mim
&#9500;&#9472;&#9472; scripts/         # Scripts Python (OAuth, posting, etc.)
&#9492;&#9472;&#9472; memory/          # Logs di&#225;rios (YYYY-MM-DD.md)
</code></code></pre><p>O sistema cria e atualiza esses arquivos automaticamente conforme voc&#234; conversa com o agente. Ele aprende suas prefer&#234;ncias, registra decis&#245;es, ajusta comportamentos.</p><h3><strong>Versionamento e refinamento com Claude Code</strong></h3><p>Eu versiono essa pasta <code>clawd/</code> no GitHub. Por qu&#234;?</p><ol><li><p><strong>Backup</strong>: se algo der errado, volto para uma vers&#227;o anterior</p></li><li><p><strong>Hist&#243;rico</strong>: vejo como o agente evoluiu ao longo do tempo</p></li><li><p><strong>Portabilidade</strong>: posso replicar em outra m&#225;quina</p></li></ol><p>Mas o passo que fez diferen&#231;a real: <strong>usei o Claude Code (com Opus 4.5) para revisar e melhorar a configura&#231;&#227;o </strong>dos arquivos dessa pasta.</p><p>Abri a pasta no Claude Code e pedi para analisar inconsist&#234;ncias, redund&#226;ncias, oportunidades de melhoria. Ele encontrou:</p><ul><li><p>Arquivos referenciados que n&#227;o existiam</p></li><li><p>Duplica&#231;&#227;o de informa&#231;&#227;o entre arquivos</p></li><li><p>Configura&#231;&#245;es espalhadas em lugares errados</p></li><li><p>Nomenclatura inconsistente</p></li></ul><p>Corrigimos tudo em uma sess&#227;o. O resultado foi um agente mais inteligente, com mem&#243;ria melhor organizada e comportamento mais previs&#237;vel. Esse tipo de otimiza&#231;&#227;o &#233; chave para conseguir utilizar modelos de LLMs localmente.</p><p>&#201; uma combina&#231;&#227;o poderosa: o Clawdbot (com LLMs Locais) gerencia a rotina di&#225;ria, o Claude Code refina a arquitetura do sistema. Cada um no seu papel. Um &#243;timo custo benef&#237;cio.</p><div><hr></div><h2><strong>Quando N&#195;O usar o Clawdbot</strong></h2><h3><strong>Tarefas que exigem julgamento cr&#237;tico</strong></h3><p>O agente &#233; bom em executar. N&#227;o &#233; bom em decidir coisas importantes. Emails sens&#237;veis, decis&#245;es de neg&#243;cio, comunica&#231;&#227;o com stakeholders &#8212; fa&#231;a voc&#234; mesmo.</p><h3><strong>Quando a lat&#234;ncia importa</strong></h3><p>Respostas levam alguns segundos. Se voc&#234; precisa de resposta instant&#226;nea, n&#227;o &#233; o caso de uso.</p><h3><strong>Dados altamente sens&#237;veis</strong></h3><p>Mesmo auto-hospedado, voc&#234; est&#225; dando acesso a um modelo de IA. Senhas, dados financeiros, informa&#231;&#245;es confidenciais de clientes &#8212; mantenha separado.</p><h3><strong>Se voc&#234; n&#227;o tem toler&#226;ncia para ajustes</strong></h3><p>O setup inicial funciona. Mas para extrair valor real, voc&#234; vai precisar ajustar configura&#231;&#245;es, corrigir comportamentos, refinar permiss&#245;es. Se isso te irrita, talvez n&#227;o seja para voc&#234;.</p><h3><strong>Hardware limitado (para modelo local)</strong></h3><p>Com 16GB de RAM, rodar modelo local + apps pesados simultaneamente causa problemas. Avalie se vale o trade-off ou se prefere pagar pela API.</p><div><hr></div><h2><strong>O real poder: integra&#231;&#227;o genu&#237;na na rotina</strong></h2><p>Depois de algumas semanas usando, percebi que o valor n&#227;o est&#225; nas features individuais. Est&#225; na integra&#231;&#227;o.</p><p>O Clawdbot n&#227;o &#233; uma ferramenta que abro quando preciso. &#201; um colega que est&#225; ali, acess&#237;vel pelo WhatsApp, assumindo tarefas repetitivas:</p><ul><li><p>Verificar emails urgentes</p></li><li><p>Lembrar de eventos pr&#243;ximos</p></li><li><p>Postar conte&#250;do nas redes</p></li><li><p>Organizar informa&#231;&#245;es</p></li></ul><p>Tarefas que eu faria de qualquer jeito, mas que consomem tempo e aten&#231;&#227;o. O agente libera esses recursos para o que realmente importa.</p><p>E quando ele age em meu nome publicamente, usa o prefixo [molty] ou [clawdbot]. Acredito na necessidade de transpar&#234;ncia sobre o que &#233; gerado por IA neste momento.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V3Sy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V3Sy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 424w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 848w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 1272w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V3Sy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png" width="479" height="742.098532494759" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f66dde93-ff87-4d71-9406-e5cc3c851a3d_954x1478.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1478,&quot;width&quot;:954,&quot;resizeWidth&quot;:479,&quot;bytes&quot;:268259,&quot;alt&quot;:&quot;Postagem do clawdbot em meu nome no x.com&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.guilhermefavaron.com.br/i/186035229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff66dde93-ff87-4d71-9406-e5cc3c851a3d_954x1478.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Postagem do clawdbot em meu nome no x.com" title="Postagem do clawdbot em meu nome no x.com" srcset="https://substackcdn.com/image/fetch/$s_!V3Sy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 424w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 848w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 1272w, https://substackcdn.com/image/fetch/$s_!V3Sy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a93cd36-141c-42df-8ea4-005672bde464_954x1478.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Postagem do clawdbot em meu nome no x.com</figcaption></figure></div><div><hr></div><h2><strong>Conclus&#227;o</strong></h2><p>O Clawdbot (em breve Moltbot) representa o que assistentes de IA deveriam ser: auto-hospedados, integrados &#224; sua vida digital, sob seu controle.</p><p>N&#227;o &#233; perfeito. Exige configura&#231;&#227;o. Tem custos (de API ou de hardware). Mas para quem quer automatizar tarefas repetitivas sem entregar seus dados para big tech, &#233; a melhor op&#231;&#227;o dispon&#237;vel hoje.</p><p>Meu setup quebra v&#225;rias recomenda&#231;&#245;es oficiais. Funciona. Mas sei dos riscos. Fa&#231;a suas escolhas conscientemente.</p><div><hr></div><p>Aos meus amigos nerds, uma das coisas que mais me impressionou foi o quanto tudo isso me lembra a s&#233;rie de anime Ghost in the Shell.</p><div><hr></div><p><em>Guilherme Favaron &#233; VP de Tecnologia e escreve sobre IA aplicada em <a href="https://ia-aplicada.substack.com/">ia-aplicada.substack.com</a></em></p>]]></content:encoded></item></channel></rss>