Je trouve un petit bug dans la version récente qui entraîne l’échec de rake ai:embeddings:backfill :
root@nbg-webxj:/var/www/discourse# rake ai:embeddings:backfill
rake aborted!
NameError: uninitialized constant Parallel (NameError)
Parallel.each(topics.all, in_processes: args[:concurrency].to_i, progress: "Topics") do |t|
^^^^^^
/var/www/discourse/plugins/discourse-ai/lib/tasks/modules/embeddings/database.rake:27:in `block in <main>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => ai:embeddings:backfill
(See full trace by running task with --trace)
Je soupçonne que le coupable est que le gem parallel n’est ni installé dans ce plugin, ni dans le core de Discourse (je n’en trouve qu’un dans le bloc if ENV[\"IMPORT\"] == \"1\" : gem "parallel", require: false).
Je trouve que le gem ruby-progressbar est également requis pour effectuer rake ai:embeddings:backfill.
J’ai fait une simple PR sur Github :