[Resolvido] Dúvida - erro ao receber mensagem offline


#1

Oi Pessoal,
Boa tarde! Tudo bem?

Eu criei um bot super simples, e estou com algumas dúvidas:

1- Eu estou rodando ele direto do meu pc, não o hospedei, então, quando alguém envia uma mensagem e o bot não está online, quando executo ele envia muitas mensagens de uma vez só, no mínimo quatro, e sai totalmente fora do fluxo que criei (o que não acontece quando a pessoa envia a mensagem e ele está online);

2- Tive alguns problemas com conflito de mensagens (pessoas enviando mensagem simultaneamente), alguém já passou por isso?

3-Outra dúvida que tenho é sobre relacionar as intenções com entidades, alguém teria algum exemplo, eu procurei mas não encontrei algo que pudesse aplicar ao meu caso.

Obrigada à todos!


#2

Bom dia Juliana,

  1. Quando o seu bot esta OFFLINE o servidor armazena as msgs (até 100) e quando voce ficar online recebe todas as msgs, na pratica o seu bot não deveria ficar OFFLINE nunca é uma conversa em tempo real.

  2. Isso pode acontecer mesmo, as conversas são em tempo real. O seu bot receber N msgs ao mesmo tempo

  3. Um exemplo simples e que todos adoramos é o caso de um pedido de pizza. Para realizar um pedido de pizza (intenção PedirPizza) precisamos de varias entidades (tamanho, sabor, pagamento, endereco). A intenção é unica PEDIRPIZZA e as entidades dão contexto para aquela intenção.

Espero ter ajudado. =)


#3

Obrigada por responder, Breno!

Esclarecendo os problemas:

  1. Meu bot está ficando offline por ser um teste, estou utilizando apenas para aprender, ainda não o utilizo para questões reais e ele não foi hospedado. O problema é que ao receber a mensagem que ficou “guardada”, meu bot manda a mesma mensagem de boas vindas 4 vezes, por exemplo, o que não ocorre se a pessoa envia algo com o bot online, então não entendi.

  2. Consegui resolver, obrigada!

  3. Eu gostaria de pegar o valor de uma entidade ao avaliar uma intenção, seguindo seu exemplo: O usuário deseja pedir uma pizza(intenção) e eu quero pegar o tamanho, sem precisar avaliar a intenção novamente, porém a cada vez que o usuário me envia uma mensagem eu analiso a intenção…Fiquei sem saber como fazer diferente.

Muito obrigada pela atenção, novamente, e me desculpe pelas perguntas simples.

:slight_smile:


#4

Olá @Juliana_Helena, tudo bem ?

Conseguiu sanar todas suas dúvidas ? Se ainda pudermos ajudá-la em alguma coisa me avise. :wink:


#5

Oi @rafaelpa, tudo bem e você?

Ainda tenho a dúvida marcada como número 3, em minha última mensagem.

Após a análise da Intenção, eu irei receber um inteiro, e fiz uma gambiarra horrível para que meu Bot entenda que esse inteiro tem relação com a última intenção recebida.

Eu pesquisei e não encontrei uma solução ótima, se você tiver alguma dica :slight_smile:

Obrigada!!


#6

Juliana,

sempre que vc analisa um texto através de um dos provedores de IA eles devolvem basicamente 2 informações:

1 - Quais as intenções identificadas (ordenadas pelo nível de certeza)
2 - Quais as entidades encontradas no texto (caso existam)

Ou seja, se vc enviar um texto para análise e este possuir alguma entidade, além de receber a intenção do usuário, vc receberá tbem todas as entidades encontradas.

Vamos a um exemplo:

Se o seu modelo possuir a intenção ComprarPizza e a entidade Sabor com um valor calabreza

Ao analisar o texto:

Cliente: “Quero comprar uma pizza de calabreza

Vc receberá:

Intenção: ComprarPizza
Entidade: Sabor (calabreza)

Repare que só analizei o texto uma única vez e obtive todos os valores.


Por outro lado, se o usuário me enviar:

Cliente: “Quero comprar uma pizza

a análise retornará apenas

Intenção: ComprarPizza
Entidade: Vazio

Nesta situação, é responsabilidade do desenvolvedor perceber que ainda falta uma entidade (Sabor) no contexto da conversa e enviar ao usuário uma pergunta intermediária. Por exemplo:

Bot: "Ótimo, sei que vc quer comprar uma pizza. Agora me diga por favor qual o sabor desejado ?"

Pegou a ideia ?