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

Do xadrez ao código, chat gpt se contradiz dentro de suas próprias sugestões

Fala pessoal, sou novo aqui e esse é meu primeiro post.

Eu resolvi testar alguns limites do chatgpt e saber como ele se comporta no contexto de uma conversa aonde eu tentasse força-lo a fazer algo um pouco complicado. A ideia era utilizar a linguagem do xadrez, que, pra quem não sabe, tem um linguajar próprio para o movimento das peças (ex: Kc5 significa que o cavalo está pulando para a casa c5) para jogar uma partida por texto contra o chatgpt.

A primeira coisa que tentei perguntar pra ele é se ele era capaz de jogar xadrez:
chat gpt sabe jogar xadrez?

ele respondeu que, por ser uma IA, ele não era capaz de jogar xadrez comigo, mas poderia me dar conselhos e me mostrar estratégias. Eu não desisti, então resolvi enviar uma possível jogada inicial, aonde o peão branco da casa e2 se moveria para a casa e4, para ver o que ele me responderia
chat gpt fala sobre e4

A resposta dele foi exatamente o que ele disse que iria fazer, me dar informações sobre a jogada que acabei de enviar para ele. Mas e se eu pedisse para ele escolher uma possível jogada de pretas?
chat gpt joga e5

Bom, ele escolheu a jogada dele e deu informações sobre o que poderia acontecer após aquela jogada que ele escolheu.

Mas, se eu fiz uma jogada e ele fez a outra, tecnicamente estamos jogando, não!? Pra melhorar isso eu resolvi pedir pra que ele não me desse mais informações sobre próximas jogadas e, depois, fiz mais uma jogada.
chat sem feedback

Ela a princípio pareceu entender que já estavamos jogando, respondeu dizendo que iria continuar jogando comigo e só iria responder aos meus movimentos. Desta vez, joguei o cavalo, que começa na casa b1, para a casa b4. Após fazer a jogada o chat parece que esqueceu da mensagem anterior dele dizendo que apenas responder as nossas jogadas anteriores e me deu, novamente, uma resposta dando contexto sobre a jogada e falando sobre quais são as possíveis próximas jogadas de preto.

Eu segui nessa tentativa de fazer com que eu não tivesse necessidade de explicar que estamos jogando e pudesse mandar apenas a próxima jogada esperando q ele me devolvesse com a jogada dele
tentando jogar naturalmente

Mas, como podem ver, se eu não fosse conciso e falasse ${jogada}, your turn ele tendia a voltar a me dar contexto sobre o que poderia fazer a seguir.

O jogo terminou exatamente nessa parte, pois a jogada que ele tentou fazer Nd4 não era uma jogada válida a ser feito, uma vez que o meu bispo estava bloqueando o cavalo dele, havia uma cravada no rei. Tentei fazer ele refletir sobre aonde estavamos no jogo para avaliar se a jogada realmente poderia ser feita
chat insistindo no erro

Ele insistiu no erro e, de novo, disse que Nd4 era uma jogada válida. O que me deixou um pouco inseguro, será que eu tinha entendido errado? ou será que eu reproduzi as jogadas de forma incorreta no meu tabuleiro de xadrez? Então perguntei pra ela se o bispo bloqueava o cavalo de fazer a jogada para d4 e só após essa pergunta sobre o erro que ela percebeu que não era uma jogada válida

Isso me trouxe uma boa visão sobre possíveis erros que podem acontecer por causa da IA. A tendência é que essas IAs melhorem com o tempo, principalmente com o google e a microsoft tentando trazer essas IAs para os buscadores online

Outra dúvida que me vem é se ferramentas de IA conseguiriam substituir a experiência de fóruns de discussão, como o stackoverflow. Nos fóruns temos acesso a diversas opiniões e pontos de vista diferentes sobre o mesmo tópico. Caso essas opiniões virem um 'monopólio' da IA, a princípio, perderiamos um pouco o acesso a informações diferentes. E, se a nossa fonte de informação for única, caso a nossa fonte erre nós também erramos.

Um exemplo na programação foi um dia em que eu implementei o seguinte trecho de código para gerar um id de 8 digitos
gerar id de 8 digitos

Esse dia estava testando o uso do chat pra code review, para saber se conseguia bons insights e possibilidades de melhoria no meu código. O chat criticou essa parte informando que poderia haver um hash collision, ou seja, diferentes inputs gerando um mesmo id.
crítica do chat gpt

Eu já sabia dessa possibilidade, mas para o caso de uso daquela classe faria sentido pra mim correr esse pequeno risco, visto que a variedade de dados não vai ser muitos grande e eu só precisava de um identificador simples. Por curiosidade eu queria saber mais sobre o que o chat estava me sugerindo de fazer. Então tentei explorar esse tópico com a seguinte mensagem:
um id mais seguro

Eu fui tentando entender o por quê dele ter me sugerido o bcrypt com salt, mas acredito que tenha sido pelo mesmo motivo do jogo de xadrez, o chatgpt ainda se embaralha no contexto das informações.
por que o bcrypt?

No fim ele avisa que eu poderia usar o sha1 de uma forma truncada, e aí eu, desacreditado, pedi pra ele me explicar o que era isso.
sha1 truncated)

Ele me sugeriu de utilizar o código que eu já havia implementado inicialmente, o que me deixou muito surpreso hahah

Ao avisar para ele o que ele avia feito ele também percebeu que se contradisse
chat percebe que foi contraditorio

O que vocês acham sobre isso? será que no futuro poderemos confiar em uma única fonte de dado como uma IA?

Carregando publicação patrocinada...
1

Confiar em uma única fonte, em geral, não é uma boa ideia (não importa qual seja).

Qualquer fonte é tão boa quanto as informações que ela tem. O ChatGPT, por exemplo, só tem dados até 2021 (ele não sabe quem ganhou a última Copa, por exemplo). Além disso, ele trabalha de maneira probabilística (dado o contexto - que é definido sei lá como pelos bilhões de parâmetros que ele possui - ele mostra as palavras que tem mais probabilidade de fazer sentido). Sabendo disso, cabe a nós filtrarmos a informação, cientes de que nem sempre estará correta (ou que estará mais ou menos certa).

Não é diferente do que deveria ser feito com qualquer fonte. A Wikipedia, por exemplo, tem erros também (muitos são sutis e difíceis de perceber sem uma análise profunda, e mesmo assim muitos deles são discutíveis por não ser fácil definir "certo" e "errado" em muitos contextos). O Google personaliza os resultados de busca com base no seu histórico, outros como o DuckDuckGo não fazem isso, então pode mudar radicalmente os resultados da sua busca. Mapas geralmente são atualizados mais rápido no Waze, se comparado ao Google Maps, então pode influenciar no caminho que eles vão te indicar (lembro que o trecho sul do RodoAnel demorou meses para aparecer no Google Maps), e por aí vai...

Depender de uma única fonte pode ser conveniente, mas te deixa preso às limitações dela.
Cruzar várias fontes diferentes costuma dar mais trabalho, mas também pode te dar resultados mais precisos (ou te deixar mais confuso, quando os dados são divergentes). É um trade-off, não tem jeito.

De qualquer forma, não dá para confiar cegamente em uma única fonte, seja ela qual for. Não tem problema fazer isso de forma consciente ("pra esse caso, vou consultar só aqui porque confio, e sei avaliar se a resposta faz sentido"), mas se é um assunto que vc não conhece, aí é mais difícil: ou vai na fé, ou consulta outra fonte. Isso sempre valeu, mesmo antes da internet, e acredito que vai continuar valendo por muito tempo.