{"id":33982,"date":"2025-07-29T10:23:17","date_gmt":"2025-07-29T13:23:17","guid":{"rendered":"https:\/\/building.nubank.com\/?p=33982"},"modified":"2025-07-29T10:28:40","modified_gmt":"2025-07-29T13:28:40","slug":"otimizacao-narrativas-usuarios-modelos-fundacionais","status":"publish","type":"post","link":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/","title":{"rendered":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>Autor: <a href=\"https:\/\/www.linkedin.com\/in\/taylor-foust\/\">Taylor Foust<\/a><\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Este trabalho \u00e9 fruto de um esfor\u00e7o colaborativo de muitos engenheiros do Nubank (em ordem alfab\u00e9tica): Austin McEver, Brayan Garzon, Daniel Braithwait, F\u00e1bio Souza, Gabriel Gandour, Gustavo Vieira, Helder Dias, Hiroto Udagawa, Jos\u00e9 Mora, Lucas Costa, Marcelo Buga, Matheus Ramos, Neriton Tolentino e Stelios Karvanis. Tamb\u00e9m agradecemos a Rohan Ramanath, Daniel Silva e Guilherme Tanure pelo apoio.<\/em><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introdu\u00e7\u00e3o<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Em publica\u00e7\u00f5es anteriores do nosso blog, apresentamos o conceito de como o Nubank utiliza modelos fundacionais para aprender representa\u00e7\u00f5es \u00f3timas de atributos em tarefas preditivas. Especificamente, mostramos como dados de transa\u00e7\u00f5es banc\u00e1rias podem ser representados como uma sequ\u00eancia de tokens constru\u00eddos a partir dos atributos da transa\u00e7\u00e3o (por exemplo: data, valor, descri\u00e7\u00e3o). As transa\u00e7\u00f5es s\u00e3o combinadas com outros eventos e informa\u00e7\u00f5es de contexto para formar uma representa\u00e7\u00e3o do usu\u00e1rio (ou narrativa), que ent\u00e3o \u00e9 tokenizada e enviada aos nossos modelos fundacionais. Esses modelos transformam a sequ\u00eancia de tokens em representa\u00e7\u00f5es otimizadas para suas tarefas de aprendizado. Essas narrativas de usu\u00e1rios n\u00e3o s\u00e3o fixas \u2013 \u00e9 necess\u00e1rio escolher quais informa\u00e7\u00f5es incluir e como represent\u00e1-las da forma mais \u00fatil poss\u00edvel para os modelos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No restante deste post, mostramos que a constru\u00e7\u00e3o dessas narrativas pode ser encarada como uma busca por hiperpar\u00e2metros em duas dimens\u00f5es principais: quais fontes de informa\u00e7\u00e3o incluir e como representar os eventos que comp\u00f5em cada fonte. Apresentamos nossa abordagem experimental para explorar esse espa\u00e7o de hiperpar\u00e2metros e demonstramos como esse processo reduz significativamente o esfor\u00e7o necess\u00e1rio para incorporar novas fontes de dados, elimina suposi\u00e7\u00f5es e melhora a performance dos modelos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Incluindo uma transa\u00e7\u00e3o em uma narrativa de usu\u00e1rio: como representamos uma transa\u00e7\u00e3o?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos apresentar o processo com um exemplo simples: uma pessoa faz uma compra no cart\u00e3o de cr\u00e9dito. Na forma mais simples, poder\u00edamos representar esse evento com um \u00fanico token, como &lt;compra-cartao-credito&gt;, mas essa hist\u00f3ria tem muitos outros detalhes.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcfrw3BJ4h5V5-19LLeBXOl2UASqK6USP5ynGoEJ2Vh4fj76dxqfgwpIvSAz3Hv1_Sewa-TQzuTnwna20WWtCabgj8MHtQzn6VKVowmo-IuiJQ-IpntMeAtRoRaNSje9wOhOXHYeQ?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 1<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Quando a compra aconteceu? Em qual estabelecimento? Foi uma compra presencial ou online? Qual foi o valor gasto? A compra foi aprovada? Se foi recusada, qual foi o motivo? Qual era o saldo da conta depois da transa\u00e7\u00e3o?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">De forma intuitiva, pode parecer que quanto mais informa\u00e7\u00f5es incluirmos na representa\u00e7\u00e3o da transa\u00e7\u00e3o, melhor ser\u00e1 o desempenho do modelo \u2013 afinal, o modelo poderia aprender a ignorar o que n\u00e3o \u00e9 relevante. No entanto, nossos experimentos mostram que adicionar mais tokens (mesmo os que parecem informativos) nem sempre melhora a performance do modelo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nossos modelos, como toda arquitetura baseada em transformers, t\u00eam uma limita\u00e7\u00e3o de tamanho de contexto, por conta do escalonamento quadr\u00e1tico da aten\u00e7\u00e3o \u2013 mesmo utilizando algoritmos eficientes como o <a href=\"https:\/\/arxiv.org\/abs\/2205.14135\">FlashAttention<\/a>.. Isso significa que, quando a janela de contexto est\u00e1 cheia, qualquer nova informa\u00e7\u00e3o inserida &#8220;empurra&#8221; outra para fora. Por isso, cada token precisa justificar sua presen\u00e7a: deve trazer informa\u00e7\u00e3o \u00fatil para a tarefa de modelagem e n\u00e3o ser redundante com outros tokens. Em outras palavras, esse processo se assemelha \u00e0 edi\u00e7\u00e3o de um documento de texto: precisamos garantir que a linguagem seja concisa e que s\u00f3 mantenhamos o que \u00e9 essencial.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXesXQ2XiLCt8w85nkkIxKgYgLZgestxOkqhKsEhKJHf_gPZfQXWfBWJYXvNBOL3d6_ca41nnjTTJ1ooJNqJpokFg4VekajxfwJsDiZzCyavD5HGq0CZCE3k_91PLVtTEuSclA7Xrg?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 2<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Otimizando Representa\u00e7\u00f5es de Transa\u00e7\u00f5es<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nosso objetivo ao criar documentos de usu\u00e1rios \u00e9 duplo: incluir o m\u00e1ximo de informa\u00e7\u00f5es \u00fateis poss\u00edvel e representar essas informa\u00e7\u00f5es com o menor n\u00famero de tokens poss\u00edvel. Mas como sabemos se um token espec\u00edfico vale a pena ser inclu\u00eddo? Determinamos a efetividade da sele\u00e7\u00e3o de tokens por meio de experimenta\u00e7\u00e3o e testes emp\u00edricos com base em m\u00e9tricas de avalia\u00e7\u00e3o offline.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para ilustrar esse processo, considere o seguinte exemplo de usu\u00e1rio: abc-123. Essa pessoa tem quatro transa\u00e7\u00f5es: uma transfer\u00eancia recebida e tr\u00eas compras no cart\u00e3o de cr\u00e9dito. Essas transa\u00e7\u00f5es est\u00e3o ilustradas na Figura 3 abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXc98wiPx48gLXkwhkXFIYC-NRS3w7PPsaaIAJgXTWRzS_yU9ozUleLp4xI1FwkkPcErbpSILREXD9Kg6RoJ6o2XL5fSOdklRTtlrNV5XyziRbtik35qcus38ukZil6nygbKu2IT?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 3: transa\u00e7\u00f5es de exemplo para o usu\u00e1rio abc-123<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Para cada uma dessas transa\u00e7\u00f5es, h\u00e1 diversos atributos que podem ser \u00fateis para os nossos modelos: o valor da transa\u00e7\u00e3o, a data (ano, dia, dia da semana, m\u00eas etc.), o status da transa\u00e7\u00e3o, a origem da transa\u00e7\u00e3o, a descri\u00e7\u00e3o, o motivo de recusa (se aplic\u00e1vel) e o modo de entrada (como a transa\u00e7\u00e3o foi realizada). Para cada um desses atributos, criamos m\u00f3dulos de pr\u00e9-processamento que adicionam os tokens necess\u00e1rios \u00e0 representa\u00e7\u00e3o da transa\u00e7\u00e3o. Muitos desses m\u00f3dulos adicionam tokens especiais (faixas de valor, se foi pagamento ou recebimento, atributos de data, status da transa\u00e7\u00e3o), enquanto outros (como descri\u00e7\u00e3o) s\u00e3o passados como texto bruto para o tokenizador e tokenizados usando o algoritmo BPE.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Neste experimento, geramos diversos m\u00f3dulos de pr\u00e9-processamento: <strong>amount, date, description, source, status, denial_reason e entry_mode<\/strong>, que, ao serem selecionados, alteram a forma como as transa\u00e7\u00f5es s\u00e3o representadas para o modelo. Podemos ent\u00e3o selecionar qualquer combina\u00e7\u00e3o desses m\u00f3dulos ao inicializar o modelo, treinar o modelo e gerar m\u00e9tricas de avalia\u00e7\u00e3o em um conjunto de testes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No teste 1, inicializamos o modelo com pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description<\/strong>. Uma vers\u00e3o tokenizada da transa\u00e7\u00e3o 4 est\u00e1 na Figura 4, com o texto representado por cada token entre colchetes angulares.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfk6C7EBc2Xny_xiq702DOJMAIwEadUjtX4ZWLbT9RJqSV7I6xF0aqkB7jNTVc3e2u6WMqbKOtVUEqG5mj-T_ELA5_lZHLMeaLzOZtICRqqP8xPmwbABx-yvLmsUOAymqXyz8EjRQ?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 4<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No teste 2,&nbsp; pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, source]<\/strong>.&nbsp; A apresenta\u00e7\u00e3o se tornaria:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXczW6XqBW1R5MV-83--58mpSIAbUGGbd1eo1ELnzK-l0v4fvzNs1jwbE8pLtOf7DQ5uGFFGqMwIFjnEuyEqKNZml9vHAbsG0jqgLqZDVBzilSG2BaA9xqC12s1-UUZ3A9gvHqee?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 5<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No teste&nbsp; 3,&nbsp; pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, status]<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcdp_XeHhguhXae3gSHo3Yt1v85HABUHWyl3YFb6wDdbHEhA-tF7BRkJA0KdOVfJPcGUgD69YgzDnmCSEhGjNHs7InG3f6W-PGN51UkcCq92G2Io7AF_moMiFLm1HMDLODj_Mr2?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 6<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No teste 4,&nbsp; pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, entry_mode]<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfc7DWUo4Zfxj5V0ITPjsh9fN9cmS5Qu3Zc5oqErzhsYORNXVx_kOPTd0lkGCb2uQDUt2xVEzRMOr1NXLR4u6zuCcpM-Z_MjyzlJZqmiT6ZBeWrzhbBiE8pFIFr2oEqxLvDW6aTqQ?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 7<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No teste 5, &nbsp; pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, denial_reason]<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcJhve-VNJ7GI-gKkocCz3dpjqkXqs2C-FjfZEs1ZW71xgMnGDw5UP9HtqNSrExcVtRh08rF4gDERz9BHJtQJsQkgrx6z34K9C1cGc1Tqufu9n6av4IqIHLqMJCtjyQaWPYCMST?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 8<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No testel 6, &nbsp; pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, status, denial_reason]<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXeYsspdutWWq13YxGC0QT45ahRGyG29zuOLAkYkYgyvdQb3cjJmDzwvNID0_9czufyAQvpT3tC7E-C_i0xzByaCqmygKfEqRSRMtyfbAfdgmqyPcrtHcqKk2Glk4lIBB6KNOUr6?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 9<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Treinamos os modelos e avaliamos o desempenho em nosso conjunto de valida\u00e7\u00e3o. Existem muitas outras combina\u00e7\u00f5es poss\u00edveis al\u00e9m das que listamos aqui. Resultados de exemplo est\u00e3o ilustrados na Figura 10 abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXc3nB_hwzXlt-UguNQksPfH65tkAsI1ws79jO6tzNZ7G14sew3YBaLLwrr7nUBY4rahvjX2iuAYXI0Q6UzQktguRCGhN1zTCcMeBeJ9Zy1UrOD5XMVsM7R0F631okLXrwmBxBmvwQ?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\" title=\"Chart\"\/><figcaption class=\"wp-element-caption\">Figura 10<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Embora limitado em escopo para fins de ilustra\u00e7\u00e3o, este experimento nos permitiu encontrar uma forma otimizada de representar transa\u00e7\u00f5es \u2014 um componente fundamental da narrativa de usu\u00e1rio. Primeiro, criamos pr\u00e9-processadores reutiliz\u00e1veis que convertem atributos das transa\u00e7\u00f5es em tokens, e em seguida realizamos uma busca de hiperpar\u00e2metros para determinar a combina\u00e7\u00e3o ideal desses pr\u00e9-processadores. Neste caso, descobrimos que mais informa\u00e7\u00e3o nem sempre leva a uma performance melhor: em algumas situa\u00e7\u00f5es, a inclus\u00e3o de certos pr\u00e9-processadores (ou suas combina\u00e7\u00f5es) pode piorar os resultados, muitas vezes devido \u00e0 limita\u00e7\u00e3o da janela de contexto do modelo.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Quais fontes de informa\u00e7\u00e3o incluir?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Nos exemplos anteriores, discutimos apenas fontes de dados de transfer\u00eancias e compras no cart\u00e3o de cr\u00e9dito, mas o Nubank possui muitas outras fontes de transa\u00e7\u00f5es \u2014 al\u00e9m de fontes que n\u00e3o s\u00e3o transacionais. Ao avaliar novas fontes de dados, aplicamos a mesma abordagem experimental para garantir que os dados adicionais realmente enriquecem as representa\u00e7\u00f5es dos usu\u00e1rios e melhoram nossos indicadores de performance. No entanto, para algumas fontes, certos tokens podem n\u00e3o ser \u00fateis, e outras podem exigir a cria\u00e7\u00e3o de novos tokens. Por isso, desenvolvemos nosso framework de forma que cada fonte possa utilizar uma l\u00f3gica de pr\u00e9-processamento pr\u00f3pria.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As Caixinhas do Nubank s\u00e3o contas de investimento nas quais os usu\u00e1rios podem alocar valores em aplica\u00e7\u00f5es de sua escolha \u2014 geralmente com um objetivo de economia espec\u00edfico. A estrutura dessas transa\u00e7\u00f5es \u00e9 semelhante \u00e0 que vimos com transfer\u00eancias e compras no cart\u00e3o: observamos movimenta\u00e7\u00f5es de valores para dentro e para fora, e normalmente, a descri\u00e7\u00e3o da transa\u00e7\u00e3o reflete o objetivo da economia definido pelo pr\u00f3prio usu\u00e1rio. Um exemplo desses dados est\u00e1 representado na Figura 11 abaixo.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfsqDXOPGawIQCSds9DufJZizgoIrWz1Lj7_e0wtRMwuwbVDek_eKS1oksqZrUy4xcJ93aoDT5yEgzDjfcnW95l9pN8pWAblfjjqJMv1NxB4ClRpBQh8u2Ss5UO5344DQcDjcPiIg?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 11<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Usar os mesmos m\u00f3dulos de pr\u00e9-processamento que aplicamos nas fontes de transa\u00e7\u00f5es anteriores j\u00e1 permite capturar uma boa quantidade de informa\u00e7\u00f5es (como valor, data, descri\u00e7\u00e3o, origem e status). No entanto, h\u00e1 alguns campos adicionais que s\u00e3o exclusivos das transa\u00e7\u00f5es de Caixinhas e que tamb\u00e9m podem ser \u00fateis: <strong>transaction_type, investment_type e account_balance<\/strong>. Podemos criar novos m\u00f3dulos que processem essas informa\u00e7\u00f5es em tokens especiais e testar a inclus\u00e3o da fonte de dados das Caixinhas tanto com os pr\u00e9-processadores padr\u00e3o quanto com os novos m\u00f3dulos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Executar esses experimentos \u00e9 quase id\u00eantico aos testes que mostramos anteriormente \u2014 a \u00fanica diferen\u00e7a est\u00e1 na especifica\u00e7\u00e3o de um conjunto de dados que inclui transa\u00e7\u00f5es de Caixinhas e na ativa\u00e7\u00e3o dos novos pr\u00e9-processadores voltados para essas transa\u00e7\u00f5es. Com isso, podemos definir os seguintes testes adicionais:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Teste 7: pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, status, denial_reason<\/strong>], dataset=\u201dtransactions_with_money_box\u201d<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Teste 8: pre_processors = [<strong>amount<\/strong>, <strong>date<\/strong>, <strong>description, status, denial_reason<\/strong>], dataset=\u201dtransactions_with_money_box\u201d, pre_processor_overrides={\u201cMONEY BOX\u201d: [<strong>amount, date, description, status, transaction_type, investment_type, account_balance<\/strong>]}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No <strong>teste 8<\/strong>, adicionar\u00edamos ao nosso documento de usu\u00e1rio uma entrada como a seguinte:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXd_eZ6JN5_U2X36SJ8Ovq1nDvHMF6n-Y85330jeBw7RUxBP07_ktAsh0rPPxwHufLgGeWbrVhFLOMUjoJlhNiw5OigdpF-8UFyXXhLR2z65Twg1AO2kVetCn8eCdg2dyo6-k64nkA?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 12<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Da mesma forma, para transa\u00e7\u00f5es relacionadas a empr\u00e9stimos, existem diversos atributos adicionais que passamos para o modelo e que n\u00e3o s\u00e3o relevantes para os outros tipos de transa\u00e7\u00f5es que mencionamos at\u00e9 agora. Empr\u00e9stimos possuem taxas de juros associadas, saldos devedores, n\u00famero de parcelas pagas, entre outros. Para aproveitar essas informa\u00e7\u00f5es importantes sem ocupar a janela de contexto com tokens irrelevantes para outras fontes, permitimos que cada fonte extraia apenas os tokens de que realmente precisa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para representar o pagamento de um empr\u00e9stimo com a inclus\u00e3o dos pr\u00e9-processadores<strong> interest_rate, number_of_payments_made e remaining_balance<\/strong>, a transa\u00e7\u00e3o poderia ser representada da seguinte forma:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfUuBM_a0m6jIKe2ou7JqWvU5dj1_iOuMfQB3nHgwQzorA1uMg3Y-_wteebW2zkX0_r5xERaAU3WIOSmR5Ih7trrkNFqaJLTmM07X_8TwejCHgpRneaNeVecbr3m67B4OrC7AxG?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 13<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Tamb\u00e9m inclu\u00edmos uma variedade de outras fontes de dados que s\u00e3o ainda mais diferentes das transa\u00e7\u00f5es tradicionais. Por exemplo, em nossos modelos fundacionais brasileiros, incorporamos dados do <a href=\"https:\/\/www.bcb.gov.br\/en\/financialstability\/creditinformationsystem\">Sistema de Informa\u00e7\u00f5es de Cr\u00e9dito (SCR)<\/a>. Esses dados s\u00e3o totalmente distintos das transa\u00e7\u00f5es e assumem a forma de atualiza\u00e7\u00f5es mensais de m\u00e9tricas relacionadas a cr\u00e9dito dos usu\u00e1rios. Essas informa\u00e7\u00f5es podem trazer visibilidade sobre o hist\u00f3rico financeiro dos usu\u00e1rios antes de se tornarem clientes do Nubank, al\u00e9m de oferecer um retrato da vida financeira deles fora do Nubank. Isso ajuda a garantir que nossos modelos sejam robustos tanto para novos clientes quanto para aqueles que utilizam os servi\u00e7os do Nubank com menor frequ\u00eancia. Ap\u00f3s o pr\u00e9-processamento, esses dados podem assumir uma forma semelhante \u00e0 da Figura 14.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXdn5ZGs6dXgtJTyCRh3IdCWuOxf3OcC0jpR36mRBZKFu_pF_dKwQR0DscyrA1ux1TaGMReSFPC5t6LxGIBBWtL8wecNjnA_NJmQnlXJuaaL6GI6FPqPzehXoBlFw3Y3sryFhfwx?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 14<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Ter a flexibilidade de acomodar diferentes formatos de dados com facilidade \u00e9 essencial para acelerar a experimenta\u00e7\u00e3o e nos permite preencher lacunas no entendimento sobre nossos usu\u00e1rios. Assim como antes, adicionar essas novas fontes ao nosso modelo e testar seu impacto na performance envolve apenas criar o m\u00f3dulo de pr\u00e9-processamento, selecionar o dataset com a nova fonte dispon\u00edvel e ativar o m\u00f3dulo de pr\u00e9-processamento. Ao otimizar esses hiperpar\u00e2metros, otimizamos a representa\u00e7\u00e3o dos usu\u00e1rios e conseguimos obter ganhos de desempenho no modelo. A Figura 15 abaixo mostra os resultados observados.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXf5-V0S1DeWT-N7HfVHWeUWLwhV5wMx8n_LB1jhV_0YCwubRIN5MNL7oLAugn-wFLaJul2OBCFTmXJ5Gn1Rp8cQR4eh5nxpccj-OX5xppmXujY5s46gpK2oLQqm6lGobc7zEufzVw?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\" title=\"Chart\"\/><figcaption class=\"wp-element-caption\">Figura 15<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Escrevendo Documentos de Usu\u00e1rio<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Com as fontes de dados que discutimos, o documento para nosso usu\u00e1rio de exemplo toma uma forma semelhante \u00e0 seguinte:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXdLfMkoCkslkGB2WEtvA_7xEDE0qKcs-8jxVANFTHJcasvB7342Ye9qJVZ43k9cyuGWhBHG9Cw1gGu9uADZmFWukSoagZO5HBMc9bhtDFOMNcIHndquQJRVpDBuwXcQcDgc9Uig2g?key=7vigl8V04-JoLJVWvgl10Q\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Figura 16<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Embora n\u00e3o seja uma leitura agrad\u00e1vel para uma pessoa, validamos por meio de experimenta\u00e7\u00e3o que nossos modelos preferem essa estrutura. Essa representa\u00e7\u00e3o permite que nossos modelos compreendam a jornada do usu\u00e1rio desde antes de se tornar cliente do Nubank at\u00e9 a ado\u00e7\u00e3o de diversos produtos do banco. O modelo consegue entender a situa\u00e7\u00e3o financeira do usu\u00e1rio, como ela mudou ao longo do tempo, seus h\u00e1bitos de consumo e de poupan\u00e7a, seus objetivos financeiros e dificuldades, al\u00e9m dos produtos Nubank que usa para melhorar sua vida. Crucialmente, nosso papel n\u00e3o \u00e9 criar a representa\u00e7\u00e3o final dos dados para o modelo, mas sim apresent\u00e1-los de forma que o modelo consiga extrair as informa\u00e7\u00f5es necess\u00e1rias e construir as caracter\u00edsticas que o ajudem a atingir seus objetivos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A sele\u00e7\u00e3o e representa\u00e7\u00e3o dos dados s\u00e3o de extrema import\u00e2ncia em todas as aplica\u00e7\u00f5es de aprendizado de m\u00e1quina, e s\u00e3o uma das partes mais demoradas do processo. Pode levar semanas para os praticantes de aprendizado de m\u00e1quina avaliarem uma nova fonte de dados, descobrirem como derivar caracter\u00edsticas tabulares, limparem e pr\u00e9-processarem essas caracter\u00edsticas e, finalmente, treinarem um novo modelo com esses dados e rodarem a avalia\u00e7\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Com os modelos fundacionais do Nubank, simplificamos esse processo, transformando-o em uma quest\u00e3o de aprimorar as maneiras de escrever documentos de usu\u00e1rios. Como mostramos, ainda h\u00e1 nuances nesse processo e \u00e9 necess\u00e1rio pensar, mas o processo \u00e9 muito mais simples, r\u00e1pido, flex\u00edvel e fornece feedback quantific\u00e1vel em termos de performance na avalia\u00e7\u00e3o do modelo. Conseguimos passar de uma fonte de dados bruta para resultados de testes em apenas alguns dias. E as representa\u00e7\u00f5es dos dados n\u00e3o precisam se conformar \u00e0s restri\u00e7\u00f5es t\u00edpicas do aprendizado de m\u00e1quina tabular. Como pesquisadores no Nubank, s\u00f3 precisamos considerar: que informa\u00e7\u00f5es podem enriquecer a narrativa que temos para este usu\u00e1rio e como posso apresentar essas informa\u00e7\u00f5es para nossos modelos de forma eficiente e \u00fatil? Ent\u00e3o, apresentamos uma variedade de op\u00e7\u00f5es e deixamos que o modelo escolha a representa\u00e7\u00e3o que considera melhor.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.<\/p>\n","protected":false},"author":178110103,"featured_media":33967,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":true,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[778793307,2503,2502],"tags":[2599,2541,2560,2540,2498],"ppma_author":[2321],"class_list":["post-33982","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-research-pt-br","category-data-analytics","category-data-science-machine-learning-pt-br","tag-engineering-culture-pt-br","tag-inteligencia-artificial","tag-large-language-models-pt-br","tag-machine-learning-pt-br","tag-software-engineering-pt-br"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank<\/title>\n<meta name=\"description\" content=\"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank\" \/>\n<meta property=\"og:description\" content=\"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/\" \/>\n<meta property=\"og:site_name\" content=\"Building Nubank\" \/>\n<meta property=\"article:published_time\" content=\"2025-07-29T13:23:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-29T13:28:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2-1024x665.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"665\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nubank Editorial\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nubank Editorial\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/\"},\"author\":{\"name\":\"Nubank Editorial\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/462f4f5a8d4ec3ccbc3d661dde00f0a4\"},\"headline\":\"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais\",\"datePublished\":\"2025-07-29T13:23:17+00:00\",\"dateModified\":\"2025-07-29T13:28:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/\"},\"wordCount\":2280,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/image-2.png?fit=1966%2C1276&ssl=1\",\"keywords\":[\"Engineering culture\",\"Intelig\u00eancia Artificial\",\"large language models\",\"machine learning\",\"Software engineering\"],\"articleSection\":[\"AI Research\",\"Data &amp; Analytics\",\"Data science &amp; Machine Learning\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/\",\"name\":\"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/image-2.png?fit=1966%2C1276&ssl=1\",\"datePublished\":\"2025-07-29T13:23:17+00:00\",\"dateModified\":\"2025-07-29T13:28:40+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/462f4f5a8d4ec3ccbc3d661dde00f0a4\"},\"description\":\"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/image-2.png?fit=1966%2C1276&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/image-2.png?fit=1966%2C1276&ssl=1\",\"width\":1966,\"height\":1276},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/otimizacao-narrativas-usuarios-modelos-fundacionais\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\",\"name\":\"Building Nubank\",\"description\":\"We make the extraordinary happen\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/462f4f5a8d4ec3ccbc3d661dde00f0a4\",\"name\":\"Nubank Editorial\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g0a78bc815f2126d9ba65b2af185671f1\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g\",\"caption\":\"Nubank Editorial\"},\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/author\\\/editorial\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank","description":"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/","og_locale":"pt_BR","og_type":"article","og_title":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank","og_description":"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.","og_url":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/","og_site_name":"Building Nubank","article_published_time":"2025-07-29T13:23:17+00:00","article_modified_time":"2025-07-29T13:28:40+00:00","og_image":[{"width":1024,"height":665,"url":"https:\/\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2-1024x665.png","type":"image\/png"}],"author":"Nubank Editorial","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Nubank Editorial","Est. tempo de leitura":"13 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#article","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/"},"author":{"name":"Nubank Editorial","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/462f4f5a8d4ec3ccbc3d661dde00f0a4"},"headline":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais","datePublished":"2025-07-29T13:23:17+00:00","dateModified":"2025-07-29T13:28:40+00:00","mainEntityOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/"},"wordCount":2280,"commentCount":0,"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2.png?fit=1966%2C1276&ssl=1","keywords":["Engineering culture","Intelig\u00eancia Artificial","large language models","machine learning","Software engineering"],"articleSection":["AI Research","Data &amp; Analytics","Data science &amp; Machine Learning"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/","url":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/","name":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais - Building Nubank","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#primaryimage"},"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2.png?fit=1966%2C1276&ssl=1","datePublished":"2025-07-29T13:23:17+00:00","dateModified":"2025-07-29T13:28:40+00:00","author":{"@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/462f4f5a8d4ec3ccbc3d661dde00f0a4"},"description":"O Nubank otimiza a representa\u00e7\u00e3o de dados para seus modelos de IA, tratando a sele\u00e7\u00e3o de informa\u00e7\u00f5es e a sua forma de representa\u00e7\u00e3o como uma busca de hiperpar\u00e2metros. Isso reduz o esfor\u00e7o de incorporar novos dados e melhora o desempenho do modelo.","breadcrumb":{"@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#primaryimage","url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2.png?fit=1966%2C1276&ssl=1","contentUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2.png?fit=1966%2C1276&ssl=1","width":1966,"height":1276},{"@type":"BreadcrumbList","@id":"https:\/\/building.nubank.com\/pt-br\/otimizacao-narrativas-usuarios-modelos-fundacionais\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/building.nubank.com\/pt-br\/"},{"@type":"ListItem","position":2,"name":"Otimiza\u00e7\u00e3o de Narrativas de Usu\u00e1rios para Modelos Fundacionais"}]},{"@type":"WebSite","@id":"https:\/\/building.nubank.com\/pt-br\/#website","url":"https:\/\/building.nubank.com\/pt-br\/","name":"Building Nubank","description":"We make the extraordinary happen","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/building.nubank.com\/pt-br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/462f4f5a8d4ec3ccbc3d661dde00f0a4","name":"Nubank Editorial","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g0a78bc815f2126d9ba65b2af185671f1","url":"https:\/\/secure.gravatar.com\/avatar\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g","caption":"Nubank Editorial"},"url":"https:\/\/building.nubank.com\/pt-br\/author\/editorial\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2025\/07\/image-2.png?fit=1966%2C1276&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/pbKBB5-8Q6","jetpack_sharing_enabled":true,"authors":[{"term_id":2321,"user_id":178110103,"is_guest":0,"slug":"editorial","display_name":"Nubank Editorial","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/8c056170dc75ffd365b306a0ac7bea4e51d1cdab52a0c84e6ba0a42f7e2f4633?s=96&d=identicon&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/33982","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/users\/178110103"}],"replies":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/comments?post=33982"}],"version-history":[{"count":6,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/33982\/revisions"}],"predecessor-version":[{"id":34011,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/33982\/revisions\/34011"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media\/33967"}],"wp:attachment":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media?parent=33982"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/categories?post=33982"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/tags?post=33982"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/ppma_author?post=33982"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}