Nous avons configuré avec succès le plugin Discourse AI en utilisant :
Modèle LLM : gpt-3.5-turbo
Modèle d’intégration : text-embedding-3-small
Nous avons également lancé les tâches en arrière-plan depuis /sidekiq/scheduler :
Jobs::EmbeddingsBackfill
Jobs::SummariesBackfill
Les deux ont été terminés avec un statut de succès. De plus, le test du modèle d’intégration a renvoyé une réponse réussie.
Cependant, nous rencontrons deux problèmes non résolus :
Recherche sémantique par IA :
Le basculeur de recherche IA dans l’interface de recherche reste désactivé et ne peut pas être activé.
Le message “Désolé, notre recherche IA n’a trouvé aucun sujet correspondant” s’affiche toujours, malgré la présence de contenus correspondants.
Résumé par IA :
Le bouton ou la sortie “Résumé IA” n’est visible sur aucune page de sujet, même si tous les paramètres de résumé et le persona sont correctement activés.
L’assistant AI (assistant de rédacteur) fonctionne comme prévu, mais les fonctionnalités de recherche IA et de résumé IA (bouton Résumer non visible) restent inactives, probablement en raison du non-application des embeddings aux sujets existants, malgré la réussite des tâches de backfill.
sam
(Sam Saffron)
Avril 9, 2025, 4:40
3
Avez-vous activé ai_summarization_enabled et ai_embeddings_semantic_search_enabled ? Y a-t-il des problèmes affichés dans /logs ?
Salut Sam,
Nous avons réussi à résoudre le problème de résumé — il s’est avéré lié aux paramètres de niveau de confiance. Cependant, nous rencontrons toujours des difficultés avec la fonctionnalité de recherche IA. Plus précisément, nous ne parvenons pas à activer le bouton pour activer l’IA.
Nous avons tenté de l’activer manuellement via le backend en utilisant la commande suivante :
DiscourseAi::Embeddings::CreateEmbeddings.new(model: "text-embedding-3-small").embed("This is a test")
Ensuite, nous avons vérifié le nombre d’embeddings avec :
DiscourseAi::Embeddings::TopicEmbedding.count
Malheureusement, le décompte reste à zéro, ce qui indique que les embeddings ne sont pas créés, même lorsqu’ils sont déclenchés manuellement. Nous avons également essayé de reconstruire le plugin IA, suspectant que certains fichiers n’avaient peut-être pas été correctement mis à jour — mais le problème persiste.
Steve_John:
Le bouton bascule de recherche IA dans l’interface de recherche reste désactivé et ne peut pas être activé.
Le message « Désolé, notre recherche IA n’a trouvé aucun sujet correspondant » s’affiche toujours, malgré l’existence de contenu correspondant.
Je rencontre ce problème mais la résumé fonctionne. J’ai activé les options citées et vérifié que mon instance intègre déjà.
NoMethodError (undefined method `-' for nil) app/controllers/application_controller.rb:428:in `block in with_resolved_locale' app/controllers/application_controller.rb:428:in `with_resolved_locale' li
NoMethodError (undefined method `-' for nil)
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'
plugins/discourse-ai/lib/completions/dialects/chat_gpt.rb:40:in `max_prompt_tokens'
plugins/discourse-ai/lib/completions/dialects/dialect.rb:134:in `trim_messages'
plugins/discourse-ai/lib/completions/dialects/dialect.rb:83:in `translate'
plugins/discourse-ai/lib/completions/endpoints/base.rb:113:in `perform_completion!'
plugins/discourse-ai/lib/completions/endpoints/open_ai.rb:53:in `perform_completion!'
plugins/discourse-ai/lib/completions/llm.rb:374:in `generate'
plugins/discourse-ai/lib/configuration/llm_validator.rb:36:in `run_test'
plugins/discourse-ai/app/controllers/discourse_ai/admin/ai_llms_controller.rb:128:in `test'
actionpack (7.2.2.1) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (7.2.2.1) lib/abstract_controller/base.rb:226:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (7.2.2.1) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:130:in `block in run_callbacks'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:141:in `run_callbacks'
actionpack (7.2.2.1) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/instrumentation.rb:77:in `block in process_action'
activesupport (7.2.2.1) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (7.2.2.1) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (7.2.2.1) lib/active_support/notifications.rb:210:in `instrument'
actionpack (7.2.2.1) lib/action_controller/metal/instrumentation.rb:76:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.2.2.1) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (7.2.2.1) lib/abstract_controller/base.rb:163:in `process'
actionview (7.2.2.1) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method'
actionpack (7.2.2.1) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (7.2.2.1) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (7.2.2.1) lib/action_dispatch/routing/mapper.rb:32:in `block in <class:Constraints>'
actionpack (7.2.2.1) lib/action_dispatch/routing/mapper.rb:62:in `serve'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:896:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
rack (2.2.13) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.13) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.13) lib/rack/head.rb:12:in `call'
actionpack (7.2.2.1) lib/action_dispatch/http/permissions_policy.rb:38:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.13) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.13) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (7.2.2.1) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
railties (7.2.2.1) lib/rails/rack/logger.rb:41:in `call_app'
railties (7.2.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/request_id.rb:33:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.13) lib/rack/method_override.rb:24:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/executor.rb:16:in `call'
rack (2.2.13) lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
lib/middleware/processing_request.rb:12:in `call'
message_bus (4.4.1) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:385:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/remote_ip.rb:96:in `call'
railties (7.2.2.1) lib/rails/engine.rb:535:in `call'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `public_send'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.13) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.13) lib/rack/urlmap.rb:58:in `each'
rack (2.2.13) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'
La recherche sémantique a également cessé de fonctionner pour moi sur Meta, peut-être à cause de mon niveau de confiance ?
Eh bien, la recherche sémantique a besoin de quelques mots pour fonctionner et classe les recherches par pertinence.
@Steve_John avez-vous pu résoudre votre problème ? Si oui, pouvez-vous partager la solution ici ? Sinon, nous pourrions aussi bien clore ce sujet.
On dirait que Falco a offert de bons conseils de dépannage :
Falco:
Est-ce que DiscourseAi::Embeddings.enabled? est vrai ?
Si oui, il devrait y avoir une erreur sur la page /logs.
tobiaseigen
(Tobias Eigen)
A fermé ce sujet ()
Septembre 24, 2025, 1:27
8
Ce sujet a été automatiquement fermé 7 jours après la dernière réponse. De nouvelles réponses ne sont plus autorisées.