Yenwod
(Chris)
2025 年 2 月 15 日午後 4:32
1
AIプラグインのrakeタスクに関する質問で、もし場違いでしたら、あらかじめお詫び申し上げます。
Discourseアプリコンテナでは、rakeタスク(bundle execなし)は問題なく実行できますが、AIタスクは機能しません。bundle execなしでは、ruby-progressbarが見つからないため、AI埋め込みバックフィルが失敗します。bundle execありでは、データベース接続がないため失敗します。
これを修正する方法について、何かヒントはありますでしょうか?
Yenwod
(Chris)
2025 年 2 月 15 日午後 11:25
2
コンテナに入って以下を実行することで、動作するようになりました。
bundle install --with migrations
問題は、Rakeタスク rake ai:embeddings:backfill が以下を実行することです。
Parallel.each(topics.all, in_processes: args[:concurrency].to_i, progress: "Topics") do |t|
ActiveRecord::Base.connection_pool.with_connection do
vector_rep.generate_representation_from(t)
end
end
これには ruby-progressbar をロードする必要がありますが、Gemfileのmigrationsグループにあるため無視されます。
「いいね!」 2
sam
(Sam Saffron)
2025 年 2 月 16 日午後 10:31
3
@Roman / @Falco ここでプログレスバーの使用をやめるべきでしょうか?
「いいね!」 2
Yenwod
(Chris)
2025 年 2 月 16 日午後 11:11
4
参考までに、プログレスバーの経験は非常に良好だったので、バックフィルを繰り返す必要がある場合は、喜んで bundle install を再度実行します。プログレスバーは非常に正確な推定値(私の場合は、6年間の議論で49分)を提供しました。何が起こるか全く分からなかったのですが、長引くプロセス(以前にやったことがなかった)が機能しているのを見るのは、精神的・感情的な安堵でした。
「いいね!」 3