diff --git a/app/services/discourse_ai/base_translator.rb b/app/services/discourse_ai/base_translator.rb index 64c292e5..f37a5c14 100644 --- a/app/services/discourse_ai/base_translator.rb +++ b/app/services/discourse_ai/base_translator.rb @@ -15,7 +15,7 @@ def translate ) structured_output = - DiscourseAi::Completions::Llm.proxy(SiteSetting.ai_helper_model).generate( + DiscourseAi::Completions::Llm.proxy(SiteSetting.ai_translation_model).generate( prompt, user: Discourse.system_user, feature_name: "translator-translate", diff --git a/app/services/discourse_ai/language_detector.rb b/app/services/discourse_ai/language_detector.rb index a16c23a2..3cd02412 100644 --- a/app/services/discourse_ai/language_detector.rb +++ b/app/services/discourse_ai/language_detector.rb @@ -50,7 +50,7 @@ def detect ) structured_output = - DiscourseAi::Completions::Llm.proxy(SiteSetting.ai_helper_model).generate( + DiscourseAi::Completions::Llm.proxy(SiteSetting.ai_translation_model).generate( prompt, user: Discourse.system_user, feature_name: "translator-language-detect", diff --git a/app/services/discourse_translator/provider/discourse_ai.rb b/app/services/discourse_translator/provider/discourse_ai.rb index 8db9248b..e97b3c19 100644 --- a/app/services/discourse_translator/provider/discourse_ai.rb +++ b/app/services/discourse_translator/provider/discourse_ai.rb @@ -55,7 +55,7 @@ def self.translate_text!(text, target_locale_sym = I18n.locale) def self.validate_required_settings! unless SiteSetting.translator_enabled && SiteSetting.translator_provider == "DiscourseAi" && - SiteSetting.discourse_ai_enabled && SiteSetting.ai_helper_enabled + SiteSetting.discourse_ai_enabled raise TranslatorError.new( I18n.t( "translator.discourse_ai.ai_helper_required", diff --git a/lib/discourse_translator/validators/translator_selection_validator.rb b/lib/discourse_translator/validators/translator_selection_validator.rb index 1e923bad..dcc659fb 100644 --- a/lib/discourse_translator/validators/translator_selection_validator.rb +++ b/lib/discourse_translator/validators/translator_selection_validator.rb @@ -12,18 +12,13 @@ def valid_value?(val) if val == "DiscourseAi" return false if !defined?(::DiscourseAi) - return false if !SiteSetting.ai_helper_enabled end true end def error_message - return I18n.t("translator.discourse_ai.not_installed") if !defined?(::DiscourseAi) - - if !SiteSetting.ai_helper_enabled - I18n.t("translator.discourse_ai.ai_helper_required", { base_url: Discourse.base_url }) - end + I18n.t("translator.discourse_ai.not_installed") if !defined?(::DiscourseAi) end end end diff --git a/spec/lib/translator_selection_validator_spec.rb b/spec/lib/translator_selection_validator_spec.rb index ac8ddc1d..338c7daf 100644 --- a/spec/lib/translator_selection_validator_spec.rb +++ b/spec/lib/translator_selection_validator_spec.rb @@ -21,18 +21,10 @@ end end - context "when DiscourseAi is defined but ai_helper_enabled is false" do - it "returns false" do - SiteSetting.ai_helper_enabled = false - expect(described_class.new.valid_value?("DiscourseAi")).to eq(false) - end - end - - context "when DiscourseAi is defined and ai_helper_enabled is true" do + context "when DiscourseAi is defined" do it "returns true" do DiscourseAi::Completions::Llm.with_prepared_responses(["OK"]) do - SiteSetting.ai_helper_model = "custom:#{llm_model.id}" - SiteSetting.ai_helper_enabled = true + SiteSetting.ai_translation_model = "custom:#{llm_model.id}" end expect(described_class.new.valid_value?("DiscourseAi")).to eq(true) end @@ -57,20 +49,10 @@ end end - context "when DiscourseAi is defined but ai_helper_enabled is false" do - it "returns the ai_helper_required error message" do - SiteSetting.ai_helper_enabled = false - expect(described_class.new.error_message).to eq( - I18n.t("translator.discourse_ai.ai_helper_required", { base_url: Discourse.base_url }), - ) - end - end - - context "when DiscourseAi is defined and ai_helper_enabled is true" do + context "when DiscourseAi is defined" do it "returns nil" do DiscourseAi::Completions::Llm.with_prepared_responses(["OK"]) do - SiteSetting.ai_helper_model = "custom:#{llm_model.id}" - SiteSetting.ai_helper_enabled = true + SiteSetting.ai_translation_model = "custom:#{llm_model.id}" end expect(described_class.new.error_message).to be_nil end diff --git a/spec/services/discourse_ai/base_translator_spec.rb b/spec/services/discourse_ai/base_translator_spec.rb index 086d5204..cbae367d 100644 --- a/spec/services/discourse_ai/base_translator_spec.rb +++ b/spec/services/discourse_ai/base_translator_spec.rb @@ -5,9 +5,8 @@ describe DiscourseAi::BaseTranslator do before do Fabricate(:fake_model).tap do |fake_llm| - SiteSetting.public_send("ai_helper_model=", "custom:#{fake_llm.id}") + SiteSetting.public_send("ai_translation_model=", "custom:#{fake_llm.id}") end - SiteSetting.ai_helper_enabled = true end describe ".translate" do @@ -38,7 +37,7 @@ allow(DiscourseAi::Completions::Prompt).to receive(:new).and_return(mock_prompt) allow(DiscourseAi::Completions::Llm).to receive(:proxy).with( - SiteSetting.ai_helper_model, + SiteSetting.ai_translation_model, ).and_return(mock_llm) allow(mock_llm).to receive(:generate).with( mock_prompt, diff --git a/spec/services/discourse_ai/language_detector_spec.rb b/spec/services/discourse_ai/language_detector_spec.rb index 6c5a8b01..3bd2c7e5 100644 --- a/spec/services/discourse_ai/language_detector_spec.rb +++ b/spec/services/discourse_ai/language_detector_spec.rb @@ -5,9 +5,8 @@ describe DiscourseAi::LanguageDetector do before do Fabricate(:fake_model).tap do |fake_llm| - SiteSetting.public_send("ai_helper_model=", "custom:#{fake_llm.id}") + SiteSetting.public_send("ai_translation_model=", "custom:#{fake_llm.id}") end - SiteSetting.ai_helper_enabled = true end describe ".detect" do @@ -35,7 +34,7 @@ allow(DiscourseAi::Completions::Prompt).to receive(:new).and_return(mock_prompt) allow(DiscourseAi::Completions::Llm).to receive(:proxy).with( - SiteSetting.ai_helper_model, + SiteSetting.ai_translation_model, ).and_return(mock_llm) allow(mock_llm).to receive(:generate).with( mock_prompt, diff --git a/spec/services/discourse_ai_spec.rb b/spec/services/discourse_ai_spec.rb index e93e1ece..fca79cbb 100644 --- a/spec/services/discourse_ai_spec.rb +++ b/spec/services/discourse_ai_spec.rb @@ -6,9 +6,8 @@ before do Fabricate(:fake_model).tap do |fake_llm| - SiteSetting.public_send("ai_helper_model=", "custom:#{fake_llm.id}") + SiteSetting.public_send("ai_translation_model=", "custom:#{fake_llm.id}") end - SiteSetting.ai_helper_enabled = true SiteSetting.translator_enabled = true SiteSetting.translator_provider = "DiscourseAi" end