From ceac6e5efb8d5bcecbe37045981acc381851e9b4 Mon Sep 17 00:00:00 2001 From: Roman Rizzi Date: Mon, 23 Dec 2024 14:19:22 -0300 Subject: [PATCH] FIX: Embeddings validator test needs to use the new Vector class. (#1041) --- lib/configuration/embeddings_model_validator.rb | 7 ++----- .../embeddings_model_validator_spec.rb | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 spec/configuration/embeddings_model_validator_spec.rb diff --git a/lib/configuration/embeddings_model_validator.rb b/lib/configuration/embeddings_model_validator.rb index 099e6168..489f2656 100644 --- a/lib/configuration/embeddings_model_validator.rb +++ b/lib/configuration/embeddings_model_validator.rb @@ -35,11 +35,8 @@ module DiscourseAi end def can_generate_embeddings?(val) - DiscourseAi::Embeddings::VectorRepresentations::Base - .find_representation(val) - .new(DiscourseAi::Embeddings::Strategies::Truncation.new) - .vector_from("this is a test") - .present? + vdef = DiscourseAi::Embeddings::VectorRepresentations::Base.find_representation(val).new + DiscourseAi::Embeddings::Vector.new(vdef).vector_from("this is a test").present? end end end diff --git a/spec/configuration/embeddings_model_validator_spec.rb b/spec/configuration/embeddings_model_validator_spec.rb new file mode 100644 index 00000000..f28ea56c --- /dev/null +++ b/spec/configuration/embeddings_model_validator_spec.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +require_relative "../support/embeddings_generation_stubs" + +RSpec.describe DiscourseAi::Configuration::EmbeddingsModelValidator do + before { SiteSetting.ai_embeddings_discourse_service_api_endpoint = "http://test.com" } + + describe "#can_generate_embeddings?" do + it "works" do + discourse_model = "all-mpnet-base-v2" + + EmbeddingsGenerationStubs.discourse_service(discourse_model, "this is a test", [1] * 1024) + + expect(subject.can_generate_embeddings?(discourse_model)).to eq(true) + end + end +end