Discourse AI - 임베딩

최근 버전에서 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)

원인은 parallel 게멀이 이 플러그인에도, Discourse 코어에도 설치되어 있지 않기 때문이라고 추정됩니다(단, if ENV["IMPORT"] == "1" 블록 내에서만 gem "parallel", require: false를 발견했습니다).

rake ai:embeddings:backfill를 수행하려면 ruby-progressbar 게멀도 필요하다는 것을 발견했습니다.

Github에서 간단한 PR을 만들었습니다:

2개의 좋아요