EasyChen
(Easy chen)
1
皆さん、こんにちは。Discourse を構築し、https://meta.discourse.org/t/content-localization-manual-and-automatic-with-discourse-ai/370969 のガイドに従って自動翻訳を設定しました。
バックエンドの翻訳進捗状況から、投稿コンテンツが翻訳されたことがわかります。

しかし、投稿の上部または右側に言語切り替えアイコンが表示されず、翻訳結果を閲覧できません。
画像にある中国語の投稿は、英語インターフェースでは翻訳されたコンテンツが表示されず、翻訳ボタンもありません。
インターフェース右上にある言語選択ボタンは表示されますが、インターフェース言語のみ調整できます。
設定の調整方法や問題の特定方法について、ご教示いただけますでしょうか。
nat
(Natalie T)
2
サイト設定の「コンテンツのローカライズ言語スイッチャー」で有効にできます。
「いいね!」 1
EasyChen
(Easy chen)
3
返信ありがとうございます。alllに設定しましたが、効果がないようです。

EasyChen
(Easy chen)
4
おそらく私がはっきりと説明していなかったのですが、サイトの右上にある言語切り替えボタンは表示できますが、投稿の右側と上部、およびメニューには言語ラベルがありません。

nat
(Natalie T)
5
これのことですか?

これは、投稿の言語がユーザーの選択した言語と異なる場合にのみ表示されます。
EasyChen
(Easy chen)
6
はい、上部と右側の両方に表示されません。私のインターフェースは英語(右側の日付からわかります)に設定されており、投稿は中国語です。
SiteSetting.ai_translation_verbose_logs = true をオンにしました。
関連するログは以下のとおりです。
Message (4 copies reported)
DiscourseAi::Translation: Detected 2 topic locales
Backtrace
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:218:in block in dispatch' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:217:in map’
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:217:in dispatch' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:129:in warn’
/var/www/discourse/plugins/discourse-ai/lib/translation/verbose_logger.rb:8:in log' /var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/topics_locale_detection_backfill.rb:45:in execute’
/var/www/discourse/app/jobs/base.rb:318:in block (2 levels) in perform' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-7.0.0/lib/rails_multisite/connection_management/null_instance.rb:49:in with_connection’
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-7.0.0/lib/rails_multisite/connection_management.rb:17:in with_connection' /var/www/discourse/app/jobs/base.rb:305:in block in perform’
/var/www/discourse/app/jobs/base.rb:301:in each' /var/www/discourse/app/jobs/base.rb:301:in perform’
/var/www/discourse/app/jobs/base.rb:381:in perform' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:137:in process_queue’
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:77:in worker_loop' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:63:in block (2 levels) in ensure_worker_threads’
これと関係があるかどうか分かりません。
nat
(Natalie T)
7
この投稿を編集して、投稿のロケールが検出されたかどうかを確認してもらえますか?

理想的には zh_CN と表示されるはずです。
投稿の自動ロケール検出には時間がかかり、投稿の言語を判断するために必要です。コンポーザーで自分で設定することもでき、その場合、値が設定されていれば自動検出はスキップされます。
EasyChen
(Easy chen)
8

言語が表示されておらず、言語の自動検出に問題があるようです。引き続き調査します。ありがとうございます。
「いいね!」 1
nat
(Natalie T)
9
それ自体に問題があるとは思いません。ジョブがすべての投稿を処理するには時間がかかります。設定でバックフィルレートを増やすと、物事がより速く進むはずです。
EasyChen
(Easy chen)
10
rate を調整した後、新しいブラウザでテストしたところ、正しく表示されました。元のブラウザでは、管理アカウントからログアウトし、Cookie をクリアすることで多言語表示が可能になりました。ありがとうございました。
「いいね!」 1