Discourse チャットボット 🤖

会話に2人目の人間(つまり投稿)が参加すると、ボットは自動応答を停止します。

人間が1人しかいない場合、ボットは常に一度応答します。

これはOPで説明されています。こちらです。

私のフォーラムは10万人以上のユーザーがおり、ダイジェストの期間を180日から600日に変更したところ、現在多くのメールが送信されています。これがクォータのトリガーに影響する可能性がありますか?ボットに言及しましたが、1時間経ってもリセットされません。

「いいね!」 1

ジョブキューが大きい場合、ボットの応答が遅延します。

トリガーされたジョブも遅延する可能性があります。

まず、バックログを処理してください :)。

何度か返信を作成しようとしましたが、最終的に失敗しました。この問題が続く場合は、管理者に連絡してください。ありがとうございます!

理由を確認する必要があります。ログにエラーが出ているはずです。

詳細ログ(最後の設定)を有効にし、ログを警告(本番環境では情報ログは読めません)にリダイレクトしてAIの応答を確認してください。

その後、/logs でこれらを表示します。

多くの場合、有効なキーが提供されていないか、アカウントにお金が不足していることが原因ですが、他の理由も考えられます。

Sidekiq のバックログが大きいようです。Sidekiq の容量を増やしてタスクをより速く処理する方法はありますか?

それはこのプラグインの範囲を超えています :slight_smile:

以下を組み合わせることで対応できます。

  1. より多くのコアとメモリを備えた、より強力なサーバーに移行する。
  2. メールサービスプロバイダーのレート制限を(潜在的に)増やす。

通常、キューはほぼ空になっているはずです。

チャットボット:問題が発生しましたが、nilをIntegerに強制できませんでした。リトライします。

これがエラーメッセージです。

チャットボットの埋め込みを有効にしましたか?

おそらく、あなたのボットはRAGタイプですか?(もしそうなら、上記を有効にする必要があります)

どのモデルを使用していますか?

RAGなし。

gpt-4o-mini

このエラーのバックトレースは /logs で確認できますか?

メッセージ (4件のコピーが報告されました)

チャットボット: 問題が発生しましたが、nil を整数に強制できませんでした。制限まで再試行します。

バックトレース

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:134:in `block in error'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:134:in `error'
/var/www/discourse/plugins/discourse-chatbot/app/jobs/regular/chatbot_reply.rb:140:in `rescue in execute'
/var/www/discourse/plugins/discourse-chatbot/app/jobs/regular/chatbot_reply.rb:121:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'

これらを適切に設定し、疑わしいと思われるものがログに他にないか教えていただけますでしょうか。

追伸:Basic および RAG ボットは最新版で動作することを確認しました。

非公開の議論からの結論:クォータリセットジョブはまだ実行されていませんでした。

ボットを使用するには、これが一度実行される必要があります。

現在、プラグインをインストールした後に、この初期実行を手動でトリガーする必要がある場合があります。

まもなく、この一度限りの初期実行を自動的に実行することを検討します。

これで問題が恒久的に解決されることを願っています。

「いいね!」 3

DeepSeek Hype :sweat_smile:

Chatbot :rocket: で参加しましょう

少なくとも Basic モードで V3 と R1 にアクセスできます。

私は以下を使用しました:

(アフィリエイトではありません)

そこがモデルをホストしています。

以下のように設定します:

必ず Basic ボットモードを設定し、キーを置き換えてください。

しかし、ウェブサイトにアクセスしてサインアップできる場合は、DeepSeek AI を直接使用できる可能性があります :sweat_smile:

ベース URL は「https://api.deepseek.com」になります。

「いいね!」 4

代替モデル、特に大規模なホスト型オープンソースモデルの使用方法については、最後の投稿を参照してください。

@merefieldさん、こんにちは。

トピックのチャットボット自動応答が、トピック内で応答する際に2回応答するようになりました。ユーザーが質問すると、チャットボットが回答し、すぐに同じ質問に2回連続で回答します。どうすれば落ち着かせることができるでしょうか?:sunglasses:

「いいね!」 1

それは非常に奇妙です。

最新バージョンでテストしたところ、最初の投稿に対してのみ1つの応答しか受け取っていません。最初の投稿 → 自動応答 → 返信 → 別のボット応答。

現在、あなたの問題を再現できるかどうかわからないため、あなたの設定について詳しく説明していただけますか?

それとも、それがあなたが目にしている動作ですか?

ボットは、さらに別のユーザーがトピックに投稿するまで、常に応答し続けることに注意してください。したがって、当初は、会話がユーザーとボットの間にある間、ボットは常に最後に話します(これはOPで文書化されています)。

誰かがその機能改善に資金を提供する寸前でしたが、請求書を支払わなかったため、現時点では現在の動作のままです。

ロバートさん、ありがとうございます。いくつか調べてみます。常に発生するわけではありません。ボットに返信しながら同時に@botにメンションすることが原因なのか、あるいは同じブラウザで別のアカウントにログイン・ログアウトすることによるキャッシュの問題なのか、確信が持てませんでした。最近のアップデートで何か問題が発生したのではないかと考えました。私の環境も最新の状態です。もし具体的な原因となる状況が見つかったら、お知らせします。