Discourse Chatbot 🤖

Olá Robert, posso colocar este bot como moderador? Tentei, mas nem sequer tenho a opção com o bot.

1 curtida

Esse primeiro erro não tem nada a ver com o Chat (“Post Embedding”). Este é inofensivo e ocorre quando você exclui uma Postagem logo após a criação, antes que o sistema tenha tempo de criar um embedding. O evento de exclusão inicia um trabalho para excluir o embedding correspondente, que, nesses casos, está faltando. Você pode ignorá-lo.

Você pode compartilhar o backtrace do segundo erro, por favor? (da aba de log).

Para invocar o bot do Chat, você deve mencionar o bot com @ ou usar o recurso de Acesso Rápido ativado nas configurações do plugin. Você também deve garantir que o bot esteja ativado para o Chat (também nas configurações do plugin).

Observe que o bot atualmente não suporta Tópicos de Chat… funciona apenas no nível superior do Chat. Você está tentando acessar em um Tópico?

2 curtidas

É principalmente um bot de chamada e resposta (embora possa ser invocado automaticamente na criação de Tópicos em Categorias definidas). Atualmente, ele não foi projetado para atuar como um Moderador.

1 curtida

Ah, acabei de atualizar (eu estava apenas 100 commits atrasado) e parece que houve uma alteração drástica no núcleo que afeta o uso do Chat. Vou dar uma olhada.

Enquanto isso, você pode mudar o Quick Launch para Mensagens Pessoais.

1 curtida

Eu atualizei o plugin.

O chat agora deve funcionar como antes:

2 curtidas

Também adicionei suporte para Tópicos de Chat

Agora o contexto do Chatbot está limitado ao Tópico de Chat atual e deve responder apenas ao Tópico atual.

Me avise se tiver algum problema.

1 curtida

A pesquisa no Fórum estava quebrada pela versão 1.3, isso agora está resolvido.

2 curtidas

Ainda estou recebendo o mesmo erro atualizado há 3 horas.

activesupport-7.1.4.1/lib/active_support/broadcast_logger.rb:134:in `block in error'

activesupport-7.1.4.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'

activesupport-7.1.4.1/lib/active_support/broadcast_logger.rb:231:in `each'

activesupport-7.1.4.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'

activesupport-7.1.4.1/lib/active_support/broadcast_logger.rb:134:in `error'

/var/www/discourse/plugins/discourse-chatbot/lib/discourse_chatbot/message/message_reply_creator.rb:38:in `rescue in create'

/var/www/discourse/plugins/discourse-chatbot/lib/discourse_chatbot/message/message_reply_creator.rb:11:in `create'

/var/www/discourse/plugins/discourse-chatbot/app/jobs/regular/chatbot_reply.rb:150:in `execute'

/var/www/discourse/app/jobs/base.rb:322:in `block (2 levels) in perform'

rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'

rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'

/var/www/discourse/app/jobs/base.rb:309:in `block in perform'

/var/www/discourse/app/jobs/base.rb:305:in `each'

/var/www/discourse/app/jobs/base.rb:305:in `perform'

sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'

sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'

/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'

sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'

sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'

sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'

sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'

sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'

sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'

sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'

sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'

sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'

sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'

sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'

sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'

sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'

E vocês reconstruíram completamente o site?

A atualização do plugin deveria ter sido suficiente.

Qual versão você está usando? Tanto do plugin quanto do Discourse?

Após lançar esta correção e atualizar, não consigo reproduzir seu problema (mas definitivamente conseguia antes).

1 curtida

Após uma reconstrução completa, está funcionando, obrigado pelo seu tempo!

2 curtidas

O bot parou de responder após atualizações recentes, apresentando estes erros:

Chatbot: Houve um problema, mas tentarei novamente até o limite: variável local ou método `res’ indefinido para uma instância de DiscourseChatbot::OpenAiBotBasic

Exceção do Job: variável local ou método `res’ indefinido para uma instância de DiscourseChatbot::OpenAiBotBasic

Alguma ideia sobre o que se trata?

2 curtidas

Acho que posso saber o que está acontecendo. Vou dar uma olhada e retorno.

Deixe-me adivinhar: não há problema com o bot RAG?

1 curtida

Isso deve ter sido corrigido agora:

Por favor, atualize e confirme.

1 curtida

Isso é hilário. Novamente, uma correção ganhou vida cerca de meia hora depois que eu reconstruí a minha :joy:

Obrigado [1]


  1. por essa correção, não pelo timing :rofl: ↩︎

2 curtidas

sim, funciona agora, obrigado

2 curtidas

Obrigado por este plugin! Eu o configurei e tudo parece ter corrido bem (todas as configurações estão lá, tenho as chaves de API, créditos OpenAI, o chatbot foi adicionado como usuário, me tornei um dos grupos de alta confiança), mas não estou recebendo nenhuma resposta da caixa de chat, privada ou publicamente. Não tenho certeza do que estou fazendo de errado ou que informações compartilhar.

Além disso, o botão Falar com o chatbot não faz nada quando clicado. :thinking:

Falei cedo demais. Foi porque mudei o nome do bot. Agora só preciso descobrir por que atingi uma cota depois de apenas algumas mensagens.

1 curtida

Verifique em qual nível de confiança do Chatbot seu usuário está.

Existem três “níveis de confiança” que são coleções de Grupos do Discourse.

Normalmente, como administrador, você tentaria estar em um grupo incluído no nível Alto.

Eu começaria com a estratégia padrão de rastrear consultas (chatbot_quota_basis). Se você alterou isso para tokens, precisará aumentar significativamente as cotas padrão para todos os níveis de confiança, pois cada consulta pode custar milhares de tokens. Os padrões são definidos para suportar consultas.

Sim, estou no grupo de alta confiança. E tenho a base de cota definida como consultas. O chatbot respondeu a uma pergunta e, em seguida, declarou imediatamente: *


*

1 curtida

Tente executar o job de redefinição de cota no sidekiq pressionando o botão de gatilho associado:

Depois disso, pergunte ao bot qual é sua cota restante.

1 curtida