Le bot AI a cessé de répondre après la dernière mise à jour

Version de Discourse : v3.3.0.beta6
Version de l’IA : 9d887ad4

  • Peu importe le modèle que je choisis lorsque je démarre une conversation avec le bot.
  • Je peux voir les requêtes réussies dans la table ai_api_audit_logs.
    • lorsqu’un utilisateur démarre une conversation, le seul appel LLM effectué est l’appel du bot de titre (“Vous êtes titlebot. Étant donné un sujet, vous trouverez un titre. Vous ne répondrez jamais qu’avec un titre de sujet de 7 mots.”)
    • le bot met à jour le titre mais ne répond pas.
  • Les requêtes à nos fournisseurs fonctionnent bien - Discourse AI n’essaie même pas de faire un appel.

Voici une capture d’écran de la conversation :

Remarquez la réponse vide du bot.

D’après les logs, vous pouvez voir qu’il n’y a qu’un appel bot_title, et pas de log bot.

Voici les paramètres de la persona :

Que se passe-t-il lorsque vous accédez à /admin/plugins/discourse-ai/ai-llms et que vous appuyez sur Test sur ce LLM ?

En supposant que vous vouliez dire cliquer sur Edit à côté d’un LLM, puis faire défiler vers le bas et cliquer sur Run Test, j’obtiens un message de succès pour tous les LLM activés (anthropic et openai).

Y a-t-il quelque chose dans /logs ?

Parbleu, il y en a un ! Job exception: DiscourseAi::Completions::Llm::UNKNOWN_MODEL

Message (30 copies reported)

Job exception: DiscourseAi::Completions::Llm::UNKNOWN_MODEL

Backtrace

/var/www/discourse/plugins/discourse-ai/lib/completions/llm.rb:129:in `proxy'
/var/www/discourse/plugins/discourse-ai/lib/ai_bot/personas/persona.rb:155:in `craft_prompt'
/var/www/discourse/plugins/discourse-ai/lib/ai_bot/bot.rb:54:in `reply'
/var/www/discourse/plugins/discourse-ai/lib/ai_bot/playground.rb:426:in `reply_to'
/var/www/discourse/app/jobs/regular/create_ai_reply.rb:18:in `execute'
/var/www/discourse/app/jobs/base.rb:305:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.0.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.0.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:292:in `block in perform'
/var/www/discourse/app/jobs/base.rb:288:in `each'
/var/www/discourse/app/jobs/base.rb:288: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'

env :


hostname	forum-app
process_id	2575726
application_version	a4bfe8adb4aae3e8049ce5e7122ba01f4db1bdb5
current_db	default
current_hostname	community.ankihub.net
job	Jobs::CreateAiReply
problem_db	default
time	5:15 pm
opts	
post_id	334872
bot_user_id	-121
persona_id	1
current_site_id	default

essayez de sélectionner un LLM par défaut différent dans le persona, d’enregistrer, de recharger, puis de sélectionner à nouveau Claude 3.5 Sonnet

Cela pourrait être lié à la migration.

J’ai changé le modèle par défaut pour le persona en gpt-4o. J’ai essayé de démarrer une conversation privée avec le bot et cela n’a pas fonctionné. J’ai re-basculé le modèle par défaut sur claude 3.5 sonnet et cela ne fonctionne toujours pas. J’ai également essayé de désactiver et de réactiver le persona.

J’ai essayé une conversation privée avec un autre persona qui utilise claude 3.5 sonnet, et cela fonctionne bien. Une différence entre les deux personas est que celui qui ne fonctionne pas a un utilisateur associé. L’autre persona n’en a pas et répond avec l’utilisateur claude-3-5-sonnet auto-créé.

Je suppose que je pourrais supprimer et recréer le persona défectueux ? Cependant, le persona défectueux utilise des documents téléchargés. Si je supprime le persona défectueux, les embeddings associés des documents téléchargés seront-ils supprimés de postgres ? Cela ne me dérange pas de régénérer les embeddings car c’est assez bon marché.

Je viens de mettre à jour vers Discourse 3.4.0.beta1 et Discourse AI 36ce88f3, mais cela ne fonctionne toujours pas. Je suppose que je vais supprimer et recréer le persona cassé.

Pour quiconque tomberait sur ceci, je peux confirmer que la suppression et la recréation de la persona ont résolu le problème. De plus, la suppression d’une personne supprime effectivement les éléments associés dans les tables rag_document_fragments et ai_document_fragment_embeddings.

4 « J'aime »

Ce sujet a été automatiquement fermé 7 jours après la dernière réponse. De nouvelles réponses ne sont plus autorisées.