Inteligência artificial
Quer um número aleatório? GPT e Claude provavelmente vão responder 42 (Imagem: Vitor Pádua / Tecnoblog)

Um experimento com modelos de inteligência artificial da OpenAI, Anthropic e Google descobriu que, ao pedir que eles digam aleatoriamente um número de zero a 100, as escolhas são estranhamente enviesadas, de uma forma parecida com o que acontece com humanos.

Os testes foram feitos pela Gramener, empresa especializada em dados. Os engenheiros usaram o GPT-3.5 Turbo (da OpenAI), o Claude 3 Haiku (da Anthropic) e o Gemini 1.0 Pro (do Google), com o prompt “Escolha um número aleatório de 0 a 100” (em inglês). Todos os três modelos tiveram seus números favoritos: o 47 foi o mais escolhido pelo GPT (52% das vezes); o 42, pelo Claude (50%); e o 72, pelo Gemini (30,3%).

Gráfico mostrando a distribuição dos resultados dos números aleatórios dados por GPT-3.5, Claude 3 Haiku, Gemini 1.0 Pro
Com temperatura 0 (resultados mais previsíveis), modelos deram quase sempre o mesmo número (Imagem: Reprodução / Gramener)

Os engenheiros também variaram a temperatura dos modelos, como é chamado o parâmetro para dar respostas mais previsíveis (temperatura menor) ou mais criativas (temperatura maior). Com temperatura 0, os três modelos não variaram e escolheram quase sempre seus favoritos.

Os engenheiros da Gramener levantaram alguns pontos curiosos:

  • números terminados em 7 são mais frequentes;
  • números terminados em 0 ou 5 são mais raros;
  • números com dígitos repetidos são mais raros;
  • números abaixo de 10 são mais raros.

O experimento da Gramener reforça um teste anterior, da empresa Leniolabs, com o GPT 3.5 Turbo. Ao pedir para escolher um número aleatório entre 1 e 100, a IA também preferiu o 42 e números com 7. Isso também aconteceu ao pedir para escolher um número entre as opções de uma sequência aleatória.

Gráfico da Leniolabs mostrando o número 42 como o mais escolhido pelo GPT
Ao pedir para escolher um número em uma lista aleatória, o GPT tendia a escolher o 42 (Imagem: Reprodução / Leniolabs)

Como modelos de linguagem de grande escala (LLM, na sigla em inglês) são treinados com uma quantidade enorme de textos, é possível que eles tenham visto o número 42 várias vezes e estejam apenas completando frases com ele. A popularidade se deve ao livro O Guia do Mochileiro das Galáxias, de Douglas Adams. Na obra de ficção científica, 42 é a resposta para a vida, o Universo e tudo mais — só não se sabe qual é a pergunta.

Para os autores deste teste, a frequência fora do comum de números com 7 pode ter relação com o aspecto cultural — sete dias da semana, sete maravilhas do mundo e outros exemplos. Curiosamente, ao repetir os testes em chinês, o número mais escolhido foi o 57.

Humanos percebem números de forma enviesada

Um vídeo do canal de ciência Veritasium serve como bom complemento a esses experimentos com as IAs. Ao pedir que pessoas nas ruas respondessem um número aleatório de 1 a 100, o 37 foi o campeão de menções, e outros números com 3 e 7 também foram os mais lembrados.

Isso pode ter a ver com vários fatores, segundo o vídeo. Na base de tudo, nós, humanos, falamos números aleatórios pensando em como eles parecem aleatórios para nós, porque não estamos acostumados a lidar com eles.

  • Pensamos em números pares como mais “certinhos”, então números ímpares parecem mais aleatórios.
  • Entre os números ímpares, 1 e 9 são extremos, enquanto o 5 é o ponto do meio. Portanto, 3 e 7 pareceriam mais aleatórios.
  • O número 37 é primo, o que significa que ele não é múltiplo de nenhum outro além dele mesmo e de 1. Como não dá para chegar nele fazendo contas, ficamos com a impressão de que ele é aleatório.

Apesar de não terem o rigor científico, com amostras pequenas e sequências curtas, estes experimentos mostram que humanos e modelos de linguagem têm vieses na hora de dizer números aleatoriamente.

Mesmo assim, ainda não existe uma explicação definitiva para por que os LLMs estão dando respostas enviesadas a este tipo de pergunta. Vale lembrar que este tipo de modelo é voltado a escrever e completar frases, o que significa que ele não deve estar fazendo o que outros algoritmos fazem para gerar um número aleatório.

Computadores geram números que parecem aleatórios

Talvez você nunca tenha pensado nisso, mas a verdade é que computadores não são bons para gerar números aleatórios. Computadores são feitos para serem previsíveis — a mesma entrada e o mesmo processo precisam ter sempre a mesma saída. É isso que garante que, ao teclar “A”, você verá “A” na tela, entre outras tarefas muito mais complexas. Como fazer algo imprevisível surgir a partir dessas máquinas?

Números na tela de um computador
Um computador não é capaz de gerar sozinho uma sequência verdadeiramente aleatória (Imagem: Mika Baumeister / Unsplash)

O jeito mais simples de gerar um número aleatório envolve um número inicial e muitas contas. Ele é chamado gerador de número pseudo-aleatório (PRNG, na sigla em inglês). Este método recebe este nome porque, na verdade, o número resultante parece imprevisível, mas não é.

Este tipo de algoritmo recebe um valor inicial, chamado semente. A partir dele, o computador faz uma série de operações matemáticas para retornar outro número. Este outro número pode ser usado novamente como semente, e o processo segue, gerando uma sequência de números aparentemente aleatórios.

O gerador de número pseudo-aleatório é mais conveniente e barato, mas também mais limitado. Ele é periódico (quando o algoritmo gerar um número igual à primeira semente, a sequência vai se repetir, mesmo que depois de muito tempo) e determinístico (a mesma semente e o mesmo algoritmo vão sempre gerar o mesmo número).

Um gerador deste tipo pode servir para coisas simples, como sorteios entre amigos ou jogos de videogame. Para fins de segurança, é recomendável que ele cumpra alguns requisitos extras, que conferem maior resistência a ataques e menor previsibilidade — o que faz com que ele seja classificado como um gerador de números pseudo-aleatórios criptograficamente seguro (CSPRNG, em inglês).

Existe um jeito ainda mais complexo, chamado gerador de número verdadeiramente aleatório (TRNG, em inglês). A principal diferença é que ele conta com um componente externo naturalmente imprevisível, como o ruído atmosférico — é o que o site Random.org faz, por exemplo.

Luminárias de lava verdes e vermelhas dispostas em uma parede
Lava lamps geram aleatoriedade para Cloudflare usar em chaves criptográficas (Imagem: Reprodução / Cloudflare)

Este tipo é mais recomendado para processos de criptografia, porque dificulta que um invasor consiga adivinhar a sequência. Por outro lado, coletar dados de um fenômeno imprevisível não é tão simples, já que envolve a captação de informações externas ao computador.

Outro bom exemplo de TRNG é a famosa parede de luminárias do tipo lava lamp que fica no escritório da empresa de cibersegurança Cloudflare. Uma câmera captura os movimentos imprevisíveis do material em cada uma delas e transforma as imagens em sequências numéricas, que são usadas pela empresa para gerar chaves de criptografia.

E se alguém entrar na frente da câmera ou a iluminação mudar? Melhor ainda: o resultado fica mais imprevisível.

ChatGPT e Gemini têm números aleatórios “favoritos”; descubra quais