Após o post falando sobre a Gabriela, o meu clone do SimSimi, eu deixei a Gabriela pública para qualquer um usar na Loritta, para ver o que iriam achar e para ver se encontrariam problemas nela...
Neste post eu irei falar algumas mudanças que eu fiz na Gabriela para deixar ela melhor e mais parecida com o SimSimi!
Como eu falei no post passado, o SimSimi não responde exatamente a sua pergunta, as vezes ele tenta responder apenas algo parecido com o que você deseja, por exemplo:
Você conhece o Sans do Undertale?
Se o SimSimi não estiver programado para responder isto, ele irá responder Você conhece o Sans?
Você conhece a Nilce do Leon?
Se o SimSimi não estiver programado para responder isto, ele irá responder Você conhece a Nilce e o Leon?
Enquanto a Gabriela sabe responder igual ao SimSimi no primeiro caso, ela não sabe responder igual ao SimSimi no segundo caso.
Para corrigir isto, é necessário separar as nossas frases em alguma outra coisa... Isto terá que jogar fora o sistema atual e trocar para um sistema baseado em arrays, por exemplo:
Você conhece a Nilce e o Leon?
Será separado em... (nós iremos ignorar palavras pequenas)
voce
, conhece
, nilce
, leon
Ou seja, ao perguntar Você conhece a Nilce do Leon?
Será separado em...
voce
, conhece
, nilce
, leon
Fazendo que ela responda a pergunta que foi ensinada anteriormente!
Para fazer isto, eu tive que remodelar como ela estava salvando as mensagens na database, em vez de salvar a mensagem, eu separei todas as "partes" das mensagens em uma lista, para depois verificar "olha, se tem pelo ou menos um argumento de nossa pergunta na pergunta salva, pegar ela!"
Muitas pessoas adicionam frases consideradas "idiotas" ou "nada a ver" na Gabriela, fazendo que ela responda coisas sem sentido.
Agora existe um sistema de upvotes e downvotes, quanto mais upvotes uma mensagem tem, mais chances dela aparecer na hora que perguntar sobre aquilo para a Gabriela.
Ou seja...
peso = upvotes + downvotes
E na hora de escolher, a Gabriela analisa o peso da mensagem, para deixar respostas nada a ver de "lado" e pegar apenas as melhores respostas.
Para evitar alguém enviando a mesma mensagem toda hora, agora ela verifica se existem algumas respostas iguais que já existem.
Igual no SimSimi, agora ela guarda quem enviou a resposta.
Atualmente não serve para nada, mas futuramente poderá possível ver quem enviou a resposta que a Gabriela respondeu!
Para evitar pessoas fazendo spam de links nas respostas da Gabriela, ela irá automaticamente remover qualquer tipo de link nas respostas dela.
E por enquanto é isso! Agora a Gabriela é mais inteligente conseguindo responder perguntas mais "abrangentes" e agora funciona mais como o próprio SimSimi funciona!