;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Letícia Piccolotto

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

IA que cria foto fake do papa Francisco ajudaria o governo, mas há riscos

Foto criada por inteligência artificial Midjourney mostra papa Francisco usando jaqueta branca estilosa - Reprodução/Reddit/Midjourney
Foto criada por inteligência artificial Midjourney mostra papa Francisco usando jaqueta branca estilosa Imagem: Reprodução/Reddit/Midjourney

06/04/2023 04h00

Nas últimas semanas, todos nós pudemos perceber o quanto a inteligência artificial generativa pode avançar. Isso se deu por conta da circulação nas redes sociais de uma foto falsa do papa Francisco usando um casaco fashion, enganando diversos veículos de comunicação que a publicaram como sendo verdadeira.

Espaços consagrados, como a revista Vogue, entre outros, tiveram que posteriormente desmentir a tal publicação, gerando uma série de debates e reflexões sobre os avanços e limites da utilização da inteligência artificial generativa no nosso cotidiano.

Além disso, a chegada da inteligência artificial generativa traz questionamentos sobre o potencial de transformação dos governos.

Quais cenários podemos imaginar para um futuro que está bem próximo de acontecer?

Sabemos que os governos —incluindo os poderes Executivo, Legislativo e Judiciário— coletam e armazenam uma grande quantidade de dados. Esses dados são, em sua maioria, importantes para a construção de políticas públicas mais inclusivas e eficazes.

No entanto, muitas vezes essas informações são difíceis de analisar devido a obstáculos como:

  • Volume de dados. Com a crescente quantidade de dados gerados diariamente, os governos enfrentam o desafio de gerenciar e armazenar grandes volumes de informações. Isso pode levar à necessidade de soluções de infraestrutura de dados caras e complexas.
  • Qualidade dos dados. A qualidade dos dados é fundamental para a tomada de decisão informada. No entanto, muitas vezes os dados podem estar incompletos, desatualizados ou imprecisos, o que pode levar a análises equivocadas e ações ineficazes.
  • Falta de especialistas em dados. Muitos governos enfrentam uma escassez de especialistas em dados qualificados para coletar, gerenciar e analisar dados. Isso pode dificultar a obtenção de insights significativos a partir dos dados.
  • Integração de dados. Os dados do governo geralmente são armazenados em sistemas separados e podem estar em formatos diferentes. Integrar esses dados para obter uma visão completa pode ser um desafio técnico e burocrático.
  • Privacidade e segurança dos dados. Os governos são responsáveis por garantir a privacidade e a segurança dos dados que coletam e gerenciam. Isso pode ser um desafio, especialmente à medida que o Poder Público busca compartilhar dados para melhorar a tomada de decisões.

Considerados todos esses pontos, podemos concluir que a inteligência artificial generativa pode ajudar também os governos a melhorar a comunicação com os cidadãos.

Os governos enfrentam muitos desafios ao se comunicar com a sociedade, especialmente quando se trata de informações complexas ou sensíveis.

Com a inteligência artificial generativa, os governos podem criar gráficos, visualizações e outros materiais de comunicação que são facilmente compreensíveis e atraentes, permitindo que o público entenda melhor as informações apresentadas.

Porém, há também impactos negativos que precisam ser considerados, como:

  • a perda de empregos
  • o viés algorítmico
  • a falta de transparência
  • a dependência tecnológica
  • os riscos de segurança cibernética

É preciso pensar em como avançar nessa discussão, especialmente diante da proibição da utilização do ChatGPT na Itália e restrições na Ásia.

Embora a IA possa trazer muitos benefícios para o setor público, é importante considerar esses impactos e trabalhar para minimizá-los.

No Brasil, até o momento, a IA generativa tem sido utilizada principalmente na indústria criativa.

Alguns artistas brasileiros têm utilizado essa tecnologia para criar obras de arte, como pinturas e esculturas, que são geradas automaticamente pela IA a partir de algoritmos e dados utilizados pelas plataformas —ainda pretendo escrever uma reflexão sobre a origem desses dados e o processo ético dessa construção.

Além disso, empresas de publicidade e marketing têm utilizado a IA generativa para criar campanhas publicitárias personalizadas e mais eficientes.

No entanto, como já falei aqui anteriormente, é importante destacar que a IA generativa também apresenta desafios e questões éticas.

  • Por exemplo, é preciso garantir que os algoritmos utilizados pela IA não reproduzam preconceitos ou estereótipos, o que poderia levar a consequências negativas para a sociedade.
  • Além disso, é necessário que haja um debate sobre o impacto da IA generativa no mercado de trabalho, já que essa tecnologia pode substituir algumas atividades realizadas por humanos.

Portanto, é fundamental que governo brasileiro acompanhe de perto o desenvolvimento da IA generativa e promova um debate amplo e democrático sobre suas implicações éticas, sociais e econômicas.

É preciso investir em pesquisas e em políticas públicas que estimulem a inovação e o desenvolvimento de tecnologias responsáveis e que estejam alinhadas com os valores e interesses da sociedade brasileira.

Você está pronto para entrar nessa discussão? Compartilhe suas ideias comigo em minhas redes sociais.