Skip to content

Commit f0d12fd

Browse files
committed
Add tests for composite embedders and pooling
1 parent 0a4833c commit f0d12fd

File tree

5 files changed

+37
-0
lines changed

5 files changed

+37
-0
lines changed

.ruby-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.1.7

lib/meilisearch/index.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1043,6 +1043,8 @@ def reset_pagination
10431043
Models::Task.new(response, task_endpoint)
10441044
end
10451045

1046+
### SETTINGS - TYPO TOLERANCE
1047+
10461048
# Get the index's typo tolerance setting.
10471049
#
10481050
# This setting allows you to configure the minimum word size for typos and disable typo tolerance for specific words or attributes.
@@ -1079,6 +1081,8 @@ def reset_typo_tolerance
10791081
Models::Task.new(response, task_endpoint)
10801082
end
10811083

1084+
### SETTINGS - FACETING
1085+
10821086
# Get the index's faceting settings.
10831087
#
10841088
# With Meilisearch, you can create faceted search interfaces. This setting allows you to:

spec/meilisearch/index/settings_spec.rb

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -873,6 +873,33 @@
873873
expect(index.embedders).to have_key('custom')
874874
end
875875

876+
it '#update_embedders with pooling and composite' do
877+
enable_composite_embedders(true)
878+
879+
index.update_embedders(
880+
custom_embedder: {
881+
source: 'composite',
882+
searchEmbedder: {
883+
source: 'huggingFace',
884+
model: 'sentence-transformers/all-MiniLM-L6-v2',
885+
pooling: 'useModel'
886+
},
887+
indexingEmbedder: {
888+
source: 'huggingFace',
889+
model: 'sentence-transformers/all-MiniLM-L6-v2',
890+
documentTemplate: '{{doc.title}}',
891+
pooling: 'useModel',
892+
documentTemplateMaxBytes: 500
893+
}
894+
}
895+
).await
896+
897+
expect(index.embedders['customEmbedder']['source']).to eq('composite')
898+
expect(index.embedders['customEmbedder']['searchEmbedder']).to have_key('pooling')
899+
900+
enable_composite_embedders(false)
901+
end
902+
876903
it '#reset_embedders resets embedders to nil' do
877904
index.update_embedders(
878905
custom: {

spec/spec_helper.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878

7979
config.include IndexesHelpers
8080
config.include ExceptionsHelpers
81+
config.include ExperimentalFeatureHelpers
8182
config.include KeysHelpers
8283

8384
# New RSpec 4 defaults, remove when updated to RSpec 4

spec/support/experimental_feature_helpers.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ def enable_edit_documents_by_function(toggle)
88
configure_feature('editDocumentsByFunction', toggle)
99
end
1010

11+
def enable_composite_embedders(toggle)
12+
configure_feature('compositeEmbedders', toggle)
13+
end
14+
1115
private
1216

1317
# @param [String] attribute_to_toggle

0 commit comments

Comments
 (0)