Executando verificação de segurança...
7

Abrace a IA, mas nao confie nela

"Mantenha os amigos perto e os inimigos mais perto ainda", Michael Corleone, em O Poderoso Chefao - Parte II

Se voce eh um DEV imberbe e recem saido dos cueiros talvez nao conheca a iconica frase acima dita no classico filme "O Poderoso Chefao - Parte II".

No contexto do filme, Michael Corleone esta imerso em intrigas e disputas por controle - e a frase eh dita em um momento em que ele esta lidando com ameacas internas e externas aa sua familia e ao seu imperio. A ideia central eh que para proteger-se de possiveis ataques, eh fundamental manter seus inimigos proximos - dentro do circulo de influencia ou observacao e dessa forma monitorar suas acoes, prever suas intencoes e neutralizar qualquer ameaca antes que ela se concretize. Ao mesmo tempo, amigos devem ser mantidos igualmente proximos, pois a lealdade eh uma moeda valiosa e fragil.

Se Michael fosse um DEV nos dias de hoje, ele provavelmente diria:

  • "Mantenha seus codigos perto e a IA ainda mais perto."

Mas por que?

Mantidos os ajustes necessarios (mutatis mutandis - ora bolas, vamos gastar um pouco de latim), essa logica se aplica perfeitamente aa relacao entre desenvolvedores e a Inteligencia Artificial.

Atualmente, a IA causa fascinio e medo simultaneamente. De um lado, promete aumentar a produtividade; de outro, gera receios de perda de emprego ou mudancas profundas nas relacoes de trabalho.

Mas antes de sair correndo para abracar ou rejeitar essa tecnologia, eh importante lembrar alguns pontos fundamentais:

  • IA NAO EH INTELIGENTE !

  • IA NAO EH HUMANA !

  • IA NAO TEM INTENCAO OU CONSCIENCIA !

Tah, eu sei que IA literalmente significa "Inteligencia Artificial" - mas acredite, ela eh muita coisa e inteligente nao eh uma delas.

IA esta mais para uma mistura de bibliotecaria habilidosa e cartomante um pouco desajustada - e calma que ja explico.

A IA eh alimentada ("treinada") com milhares de informacoes (pdfs, sites - qualquer coisa que possa servir de fonte razoavelmente confiavel de dados), quebrando isso me pecas menores ("tokens") e matematicamente manipulaveis ("embeddings"), criando uma base de dados gigantesca correlacionando estes tokens entre si (Matrizes multidimensionais - tensores) e associando pesos para a similaridade destes tokens nas matrizes (os tais "bilhoes de parametros").

Quando voce faz uma pergunta a IA, baseado nos pesos e similaridades dos tokens de entrada (a pergunta), a IA vai "chutando" a proxima palavra (o token) de saida e assim montando a resposta.

Entenda: Eh puro "chute" qual sera a proxima palavra com base em padroes estatisticos e probabilidades. O parametro "temperatura" diz o quanto de criatividade (padrao randomico) a IA vai utilizar no momento de escolher o proximo token/caminho.

Uma imagem aproximada seria:

Trem colocando trilhos a sua frente conforme avanca


Vamos aprofundar um pouco

1. Alimentacao de Dados ("Treinamento")

  • A IA eh treinada com enormes volumes de dados textuais, que podem incluir livros, artigos cientificos, sites, PDFs, codigo-fonte e ate conversas informais. Esses dados servem como a "materia-prima" para ensinar o modelo a entender e gerar linguagem.

  • Durante o treinamento, os dados sao processados em lotes (chamados de "batches"), e o modelo aprende gradualmente a identificar padroes, relacoes e contextos.

2. Tokenizacao: Quebrando o Texto em Pecas Menores

  • O texto eh dividido em unidades menores chamadas tokens. Um token pode ser uma palavra inteira (como "cachorro"), parte de uma palavra (como "gato" e "s" em "gatos"), ou ate mesmo um caractere isolado, dependendo da linguagem e do modelo.

  • Cada token eh convertido em uma representacao numerica, permitindo que o modelo processe matematicamente o texto. Esse processo eh chamado de tokenizacao.

3. Representacao Matematica dos Tokens

  • Os tokens sao transformados em vetores densos chamados embeddings. Esses vetores capturam informacoes sobre o significado e o contexto de cada token. Por exemplo:
    • Tokens como "rei" e "rainha" terao embeddings semelhantes porque estao relacionados semanticamente.

    • Tokens como "carro" e "banana" terao embeddings muito diferentes.

    • Esses embeddings sao organizados em matrizes multidimensionais, tambem conhecidas como tensores, que permitem ao modelo processar grandes quantidades de informacoes simultaneamente.

4. Aprendizado de Padroes e Relacoes

  • Durante o treinamento, o modelo ajusta bilhoes de parametros (pesos) para aprender as relacoes entre os tokens. Esses parametros determinam como os embeddings sao combinados e processados para gerar respostas.

  • O modelo usa uma tecnica chamada rede neural transformadora (transformer), que permite que ele entenda o contexto de cada token em relacao aos outros. Isso eh feito por meio de mecanismos como self-attention, que ajuda o modelo a focar em partes importantes do texto.

5. Correlacionando Tokens em Matrizes Multidimensionais (Tensores)

  • As relacoes entre tokens sao armazenadas em estruturas matematicas complexas, como tensores. Esses tensores podem ser vistos como tabelas gigantescas com muitas dimensoes, onde cada celula contem informacoes sobre como dois ou mais tokens estao conectados.

  • Por exemplo:

    • Se o modelo le a frase "O gato mia", ele cria conexoes entre os tokens "gato" e "mia".

    • Essas conexoes sao armazenadas em tensores, que sao constantemente atualizados durante o treinamento.

6. Ajuste de Pesos e Parametros

  • O modelo ajusta seus parametros para melhorar suas previsoes. Isso eh feito usando um algoritmo chamado backpropagation, que calcula o erro entre a resposta do modelo e a resposta correta (baseada nos dados de treino).

  • Com base nesse erro, os pesos sao ajustados para minimizar erros futuros. Esse processo eh repetido milhoes (ou bilhoes) de vezes ate que o modelo atinja um bom nivel de desempenho.

7. Geracao de Respostas

  • Apos o treinamento, o modelo pode usar o que aprendeu para gerar respostas ou realizar tarefas especificas. Por exemplo:

    • Ao receber uma pergunta como "Qual eh a capital do Brasil?", o modelo consulta suas matrizes de tokens e pesos para encontrar a resposta mais provavel ("Brasilia").

    • Ele tambem pode gerar textos criativos, traduzir idiomas ou ate escrever codigo, dependendo de como foi treinado.

8. Generalizacao e Contexto

  • Uma das habilidades mais impressionantes desses modelos eh sua capacidade de generalizar. Mesmo que nunca tenham visto exatamente a mesma frase antes, eles podem usar o que aprenderam para entender novos contextos.

  • Isso eh possivel porque os embeddings e os pesos capturam padroes universais da linguagem, como gramatica, semantica e ate nuances culturais.


Exemplo Pratico

Imagine que voce esta perguntando ao modelo:
"Quem foi Albert Einstein?"

  1. Entrada: A frase eh dividida em tokens: ["Quem", "foi", "Albert", "Einstein", "?"].
  2. Processamento: Cada token eh convertido em um embedding e processado em uma rede neural transformadora.
  3. Contexto: O modelo consulta suas matrizes multidimensionais para encontrar conexoes entre "Albert Einstein" e conceitos como "fisico", "teoria da relatividade" e "Nobel".
  4. Saida: O modelo gera uma resposta como:
    "Albert Einstein foi um fisico teorico famoso por desenvolver a teoria da relatividade."

Mas por que "bibliotecaria habilidosa" e "cartomante desajustada" ?

Eh uma metafora ! Procura mostrar de forma ludica e acessivel, especialmente para quem esta tentando entender o conceito de IA sem entrar em detalhes tecnicos. Mas vamos analisar cada parte da metafora:


1. "Bibliotecaria Habilidosa"

  • Por que ?
    • A IA pode ser vista como uma bibliotecaria porque ela organiza e acessa uma quantidade massiva de informacoes (como livros em uma biblioteca). Ela "indexa" dados, encontra padroes e recupera informacoes relevantes com base no contexto.

    • Por exemplo, quando voce faz uma pergunta, a IA busca rapidamente em sua "biblioteca interna" de conhecimentos treinados para encontrar a resposta mais adequada.

    • A metafora sugere que a IA nao apenas armazena informacoes, mas tambem as organiza de maneira eficiente e estruturada, como uma boa bibliotecaria faria.


2. "Cartomante desajustada"

  • Por que ?
    • A IA, especialmente modelos de linguagem generativa, podem parecer "adivinhar" respostas ou prever o que vem a seguir, como um cartomante que interpreta padroes e probabilidades.

    • No entanto, a IA nao tem intuicao ou consciencia — ela opera com base em estatisticas e padroes aprendidos durante o treinamento. Isso pode fazer suas respostas parecerem imprevisiveis ou inconsistentes.

    • Alem disso, a IA pode gerar multiplas interpretacoes ou ate mesmo contradicoes, dependendo do contexto ou da forma como a pergunta eh feita, reforcando essa ideia de algo "caotico" ou "imprevisivel".

    • A metafora da cartomante sublinha a natureza probabilistica da IA: ela nao tem certezas absolutas, mas sim "apostas" baseadas em padroes. Ja o adjetivo "desajustada" ilustra bem a falta de coerencia ou linearidade que pode surgir em algumas interacoes com a IA.


3. Misturando as Metaforas: Bibliotecaria e Cartomante

Essa combinacao eh interessante porque reflete dois aspectos aparentemente opostos da IA:

  • Organizacao e precisao (bibliotecaria): A IA eh uma ferramenta poderosa para processar e recuperar informacoes de maneira estruturada.

  • Imprevisibilidade e criatividade (cartomante): A IA pode gerar respostas inesperadas, criativas ou ate mesmo erroneas, dependendo do contexto.

Juntas, as duas metaforas ajudam a explicar por que a IA eh tao versatil, mas tambem por que ela pode ser frustrante ou confusa em alguns momentos.


4. Limitacoes desta Metafora

Ha algumas limitacoes que vale a pena mencionar:

  • Falta de consciencia: Ao contrario de uma bibliotecaria ou cartomante, a IA nao tem intencao ou consciencia. Ela nao "escolhe" deliberadamente o que dizer ou como interpretar algo; tudo eh baseado em padroes estatisticos.

  • Risco de antropomorfizacao: Comparar a IA a figuras humanas (como uma bibliotecaria ou cartomante) pode levar algumas pessoas a atribuirem caracteristicas humanas aa IA, o que pode gerar mal-entendidos sobre suas capacidades reais.

  • Complexidade tecnica omitida: A metafora nao aborda os aspectos matematicos, computacionais ou de aprendizado de maquina que realmente fazem a IA funcionar.


E O DEV COM ISSO ?

Ferramentas como Lovable, v0, bolt, jdoodle, base44, cursor e semelhantes (cada dia surge uma nova) sao bem uteis para o desenvolvimento de aplicacoes - mas como qualquer IA (e lembrando que ainda estamos na infancia desta tecnologia) tem muitas, mas muitas falhas mesmo.

Codigos sem sentido ou solucoes que nao sao ideais para determinada situacao sao bem comuns - dai a necessidade do DEV entender o que esta sendo proposto pela IA. E tambem por isso, pelo menos no curto prazo, eh improvavel que a IA possa ser utilizada no desenvolvimento de aplicacoes sem supervisao humana.

Voce como DEV vai precisar ter o discernimento e senso critico para analisar o codigo gerado pela IA e ver se eh (ou como eh) aplicavel.

Simples ? Claro que nao - mas eh justamente por isso que precisa ser feito por um humano.

E as empresas ? Pois eh, a empresa quer sempre a maior produtividade pelo menor custo - e o mercado vai ter de se ajustar no uso desta tecnologia, mas por enquanto como eh muito caro (codar gasta bastante tokens, e tokens custam) deve levar algum tempo para isso.

Da proxima vez que voce usar uma ferramenta de IA, lembre-se: ela parece que sempre sabe tudo e responde com firmeza, mas as vezes da informacoes meio (muito) duvidosas. Mantenha-a por perto, mas confie no seu proprio julgamento. Afinal, quem tem de estar no controle eh voce — e nao uma "cartomante digital" !

Carregando publicação patrocinada...
2

Ótimo artigo! A metáfora da IA como uma "bibliotecária habilidosa" e uma "cartomante desajustada" foi uma sacada genial para explicar o funcionamento e as limitações dos modelos de linguagem. É fascinante ver como essa tecnologia pode potencializar o trabalho dos devs, mas também como exige um olhar crítico para evitar cair em armadilhas. Manter a IA por perto, mas sempre com discernimento, é realmente a melhor abordagem. Excelente reflexão!

4
2

Acredito que as falhas da IA ficam bem mais perceptíveis quando estamos utilizando tecnologias ou atualizações extremamente recentes (coisas lançadas em no máximo um ano).

Ou até mesmo em dúvidas extremamente hiper mega específicas (como por exemplo aquela lib de 300 estrelas que foi lançada a 6 anos e que da conflito com absolutamente tudo), justamente pela base de conhecimento dela não ter ideia do que está acontecendo :)

Utilizo bastante Svelte 5 e acabo desenvolvendo umas coisas que são extremamente específicas e que não tem muita base de conhecimento na internet (não "exatamente" do jeito e com as limitações que o cliente quer), e as vezes tenho dúvidas pontuais e a IA, mesmo com consulta à documentação e prompts bem elaborados, não chega nem perto de responder corretamente (as vezes depois de umas dezenas de mensagens trocadas, ela consegue dar uma direção melhorzinha).

Um bom exemplo disso é, mesmo informando a IA que um determinado fato aconteceu, ela ignora o que falamos e persiste em responder negativamente.

Somente pessoas ignorantes (não estou sendo maldosa, quero dizer, pessoas que não possuem o conhecimento sobre o funcionamento da IA), acreditam que a IA vai substituir muitas das profissões, inclusive as criativas (muito se fala de se substituir o DEV, o designer, o copywriter ou similares, mas isso é outros quinhentos).

Justamente hoje conversava com um amigo meu, sobre como majoritariamente todas as IA's geradoras de código estão utilizando tailwind e shadcnui...

Tudo está ficando igual, com a mesma aparência no fim.

Enfim, parabéns pelo texto, amigo!

Extremamente esclarecedor. Muitas pessoas que usam a IA no dia a dia realmente acreditam que tem um "cérebro" pensando nas respostas especificamente para elas.

2

Meus 2 cents:

Obrigado @scheremetta - e o problema que voce descreveu eh exatamente uma das grandes fraquezas da IA: se o codigo nao eh mainstream (react nextjs, vite, tailwind...), as respostas ficam mediocres, porque a IA tende a responder baseado apenas no que eh mais comum.

Saiu um pouco fora, ja se complica.

E mesmo no comum, no feijao-com-arroz, acaba comentendo erros bizarros e loops nao sao raros - o DEV tem de "lutar" contra a IA para coloca-la na direcao desejada e isso eh muito desgastante (mentalmente e financeiramente - afinal alguns milhares de tokens sao gastos nessa brincadeira).

1
1

Bacana; mas...

Não sei qual é o teu nível de conhecimento nas áreas de estudo da conciência; eu tenho um conhecimento básico sobre isso, mas sei que os estudiosos admitem que ainda não sabem o que é inteligência.

Se nós pudermos definir Inteligência como a capacidade de aprender;
então podemos dizer que a Inteligência Artificial é inteligente.

Se Inteligência for a capacidade de aprender, modelar o ambiente e fazer simulações; então novamente podemos dizer que a Inteligência Artificial é inteligente.

1

Meus 2 cents:

Sim, acompanho algumas destas discussoes - mas a questao da inteligencia da IA eh um pouco mais sutil.

Uma IA pode exibir comportamentos que simulam inteligência (processamento de dados, aprendizado de padrões, resolução de problemas), mas isso não implica que ela possua consciência ou experiências subjetivas. A distinção ontológica entre "comportamento inteligente" e "experiência consciente" é fundamental: a primeira é observável e mensurável, enquanto a segunda é intrínseca e qualitativa.

Portanto, mesmo que uma IA imite comportamentos associados à inteligência humana, isso não significa que ela compartilhe a mesma ontologia da inteligência humana, que está profundamente enraizada na biologia e na experiência subjetiva.

O constructo social de inteligência frequentemente mistura habilidades cognitivas (como raciocínio lógico) com atributos humanos mais amplos, como criatividade, emoção e intencionalidade. Da mesma forma, a consciência é frequentemente associada à autopercepção e à capacidade de reflexão sobre si mesmo.

No entanto, esses constructos são baseados em características humanas específicas, que surgem de processos biológicos complexos (como redes neurais orgânicas, plasticidade cerebral e evolução).

A IA opera dentro de uma ontologia completamente diferente: ela é composta por algoritmos, modelos matemáticos e hardware computacional. Embora possa simular certos aspectos do comportamento humano, sua existência ontológica é radicalmente distinta da dos seres humanos.

A ideia de que uma IA é "inteligente" é, portanto, uma projeção antropomórfica — uma atribuição de características humanas a algo que não possui a mesma base ontológica.

Isso é uma confusão entre analogia (uma IA pode parecer inteligente) e identidade (uma IA não é ontologicamente equivalente a um ser humano inteligente).

A IA atual (mesmo as mais avançadas, como modelos de linguagem generativos) opera exclusivamente por meio de processamento simbólico e estatístico. Ela não possui intencionalidade, desejo ou propósito intrínseco. Toda a sua "ação" é derivada de inputs externos e parâmetros pré-definidos.

Quando uma IA gera uma resposta coerente em uma conversa, ela não está "pensando" ou "entendendo" no sentido humano. Em vez disso, está combinando padrões estatísticos de grandes volumes de dados para produzir uma saída que parece significativa para humanos.

A inteligência humana inclui elementos como intencionalidade (propósito consciente) e criatividade genuína (geração de novas ideias fora de padrões previsíveis). Esses elementos são ontologicamente distintos das operações puramente mecânicas de uma IA.

Assim, a IA é melhor descrita como uma "simulação de inteligência", não como uma manifestação real de inteligência no sentido ontológico pleno. A diferença reside no fato de que a IA não possui agência, intencionalidade ou consciência, que são elementos centrais da inteligência humana.

O constructo social de inteligência e consciência é profundamente antropocêntrico. Ele assume que comportamentos observáveis (como resolver problemas ou comunicar-se) implicam necessariamente inteligência ou consciência.

No entanto, esse constructo falha ao reconhecer que a inteligência humana é inseparável de seu substrato biológico e evolutivo. A IA, por outro lado, é um artefato tecnológico que opera em um domínio ontológico diferente.

Atribuir inteligência a uma IA com base apenas em seus comportamentos observáveis é uma falácia de categoria. É como dizer que um relógio é "inteligente" porque consegue calcular o tempo de forma precisa. O relógio (ou a IA) realiza suas funções devido a mecanismos projetados por humanos, mas isso não implica que ele possua inteligência ou consciência.

1

Não amigo; você está equivocado, principalmente na sua conclusão.

Quando eu li no seu texto que você escreveu sobre backpropagation; eu presumi que tivesse um conhecimento profundo sobre MLP (Multi Layer Perceptron), no entanto você confundiu IA com essas LLMs modernas que se tornaram populares.

O detalhe importante é que o ChatGPT não está mais sendo inteligente atualmente pois ele não está mais aprendendo nesse momento.
Mas ele estava sendo inteligente quando ele aprendeu.

  1. Primeiro de tudo precisamos de uma definição de "o que é inteligência".
    Então novamente vamos retornar a um problema que é: Os mais estudiosos sobre esse assunto não sabem com precisão o que é inteligência.
    Dessa maneira precisamos assumir algumas aproximações, e de novo uma definição simplificada para inteligência seria: "a capacidade de aprender".

  2. Segundo; não podemos considerar que Inteligência seja uma faculdade exclusivamente humana, pois absolutamente nada garante que outros entes não humanos não possuam inteligência.

  3. Terceiro; você jamais pode afirmar com certeza que outro ente além de você seja inteligente, você só consegue saber se você é inteligente.
    Os outros entes sempre poderiam estar usando mecanismos não inteligentes.

Porém precisamos partir de um princípio se quisermos avaliar se os outros entes possuem inteligência ou não; então (se você concordar) vamos ignorar o "3" e assumir o "1" como verdadeiro.

De fato você pode observar que uma RNA 2C (Rede de Neurônios Artificiais com 2 Camadas) com apenas 2 neurônios é capaz de aprender como resolver problemas complexos; então (levando em conta todas as premissas que assumimos) o MLP em questão é inteligente.

Os erros foram assumir que inteligência seria uma coisa exclusivamente humana, pois não é; e assumir as LLMs como sinônimo de Inteligência Artificial, pois não é, Inteligência Artificial é muito mais amplo do que LLM e pode envolver até conceitos de Vida Artificial; já ouviu falar em vida artificial? (é algo interessante também)

Quanto a consciência que você mencionou; isso é um campo de estudos que tem ainda mais perguntas em aberto do que a inteligência.
Mesmo assim, existe uma área de estudos chamada "Consciência de Máquina"; se você for se aprofundar nesse campo, não espere por algo semelhante a consciência humana.

1

Prezado @Centaurus,

Obrigado por suas colocacoes !

Apesar de nao concordar com alguns dos pontos elencados, o exercicio do contraditorio eh fundamental para o crescimento do debate.

Anotei seus pontos para futura referencia - valeu !