Задачи Rake в плагине AI не работают

Заранее приношу извинения, если это не то место, где стоит задавать вопрос о задачах rake для плагина AI.

Я могу запускать задачи rake (без bundle exec) в контейнере приложения Discourse без проблем, но задачи AI не работают. Без bundle exec заполнение пропущенных эмбеддингов AI завершается ошибкой из-за отсутствия библиотеки ruby-progressbar. С bundle exec оно завершается ошибкой из-за отсутствия подключения к базе данных.

Подскажите, пожалуйста, как это исправить?

Мне удалось заставить это работать, зайдя в контейнер и выполнив:

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, но она игнорируется, так как находится в группе migrations файла Gemfile.

2 лайка

@Roman / @Falco, стоит ли нам перестать использовать здесь индикатор прогресса?

2 лайка

Кстати, мой опыт работы с индикатором прогресса был настолько позитивным, что я с радостью снова выполнил бы bundle install, если бы мне когда-нибудь пришлось повторять обратную загрузку данных. Индикатор прогресса давал очень точную оценку (в моём случае — 49 минут для шести лет обсуждений). Я совершенно не знал, чего ожидать… Это было большим моральным и эмоциональным облегчением увидеть, что длительный процесс (который я никогда раньше не выполнял) идёт успешно.

4 лайка

Я удаляю задачи Rake, так как наша задача заполнения теперь может легко обрабатывать десятки тысяч вложений тем за несколько минут.

1 лайк