AI模块突然停止工作

我安装了 Discourse AI 插件,设置了 Gemini 并启用了几个模块:摘要、情感分析、相关话题、AI 搜索和毒性检测。

起初一切都很好,摘要按钮出现了并生成了内容。

当我启用情感分析和毒性检测选项后,摘要功能停止工作了,摘要按钮从所有话题中消失了。仪表板上的情感分析选项卡显示“无数据可显示”。

当我查看 discourse 日志时,我看到了这些错误:

消息

作业异常:ERROR: 必须是数据库 discourse 的所有者


回溯
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:110:in `exec'
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:110:in `async_exec'
mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:202:in `run'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `block in run'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `block in with_lock'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `with_lock'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `run'
mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:181:in `exec'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:154:in `create_index!'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:71:in `block in consider_indexing'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:49:in `each'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:49:in `consider_indexing'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:38:in `execute'
/var/www/discourse/app/jobs/base.rb:297:in `block (2 levels) in perform'
rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in `with_connection'
/var/www/discourse/app/jobs/base.rb:284:in `block in perform'
/var/www/discourse/app/jobs/base.rb:280:in `each'
/var/www/discourse/app/jobs/base.rb:280:in `perform'
/var/www/discourse/app/jobs/base.rb:351:in `perform'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:122:in `process_queue'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:70:in `worker_loop'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:59:in `block (2 levels) in ensure_worker_threads'

4 篇帖子已拆分为新主题:Discourse AI 无法在自托管安装上设置 ivfflat.probes

这意味着您的数据库用户无法在 Discourse 数据库上运行

https://github.com/discourse/discourse-ai/blob/main/lib/embeddings/vector_representations/base.rb#L154

我建议您检查您的权限。

抱歉,我对此无能为力。我只是按照此主题(以及其他 AI 模块主题)上的说明进行操作,安装插件,重建 discourse 并在管理员页面上进行配置。

我没有看到任何关于配置用户权限的步骤。是我错过了某个步骤,还是这可能是安装/构建脚本未处理的某种异常情况?

  • 我该如何操作?
  • 安装插件并重建时,这不应该自动设置吗?

@Falco 对此有什么看法?

看起来自托管安装中的数据库用户缺少设置此权限。设置此权限的更好方法正在上游跟踪,让我们等待那里的修复,然后再尝试处理它

1 个赞

感谢你的更新,Falco。你能告诉我这次更新包含哪些功能或影响,或者这是否与日志错误或某些无法正常工作的 AI 功能有关?这样我就知道该期待什么,或者哪些功能将无法使用,以及是否需要暂时禁用这些功能以避免由此错误引起的其他问题。

编辑:看起来探针的数量是根据数据库中的项目数量计算的。我想知道这是否可以在重建期间设置(这样,虽然数据库可能会随着时间的推移而增长,但每次 Discourse 升级时都会对其进行优化,直到有运行时修复)。暂时,在运行时检查是否具有超级用户权限,然后再尝试修改它。

1 个赞

此问题已在新的 AI 快速搜索功能中得到修复

2 个赞

太棒了。现在就升级。我需要做什么来启动之前的进程吗?

1 个赞

此主题在 38 小时后自动关闭。不再允许回复。