Skip to content

Commit 25662fc

Browse files
sobychackospring-builds
authored andcommitted
Add test for embeddingFieldName config in ES VectorStore
Adding test for commit in main 1f5dc3f Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> (cherry picked from commit 6451fef)
1 parent 518ba27 commit 25662fc

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

auto-configurations/vector-stores/spring-ai-autoconfigure-vector-store-elasticsearch/src/test/java/org/springframework/ai/vectorstore/elasticsearch/autoconfigure/ElasticsearchVectorStoreAutoConfigurationIT.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.ai.vectorstore.elasticsearch.autoconfigure;
1818

1919
import java.io.IOException;
20+
import java.lang.reflect.Field;
2021
import java.nio.charset.StandardCharsets;
2122
import java.util.List;
2223
import java.util.Map;
@@ -37,6 +38,7 @@
3738
import org.springframework.ai.vectorstore.SearchRequest;
3839
import org.springframework.ai.vectorstore.VectorStore;
3940
import org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore;
41+
import org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStoreOptions;
4042
import org.springframework.ai.vectorstore.elasticsearch.SimilarityFunction;
4143
import org.springframework.ai.vectorstore.observation.VectorStoreObservationContext;
4244
import org.springframework.boot.autoconfigure.AutoConfigurations;
@@ -136,7 +138,8 @@ public void propertiesTest() {
136138
"spring.ai.vectorstore.elasticsearch.index-name=example",
137139
"spring.ai.vectorstore.elasticsearch.dimensions=1024",
138140
"spring.ai.vectorstore.elasticsearch.dense-vector-indexing=true",
139-
"spring.ai.vectorstore.elasticsearch.similarity=cosine")
141+
"spring.ai.vectorstore.elasticsearch.similarity=cosine",
142+
"spring.ai.vectorstore.elasticsearch.embedding-field-name=custom_embedding_field")
140143
.run(context -> {
141144
var properties = context.getBean(ElasticsearchVectorStoreProperties.class);
142145
var elasticsearchVectorStore = context.getBean(ElasticsearchVectorStore.class);
@@ -146,7 +149,16 @@ public void propertiesTest() {
146149
assertThat(properties.getDimensions()).isEqualTo(1024);
147150
assertThat(properties.getSimilarity()).isEqualTo(SimilarityFunction.cosine);
148151

152+
assertThat(properties.getEmbeddingFieldName()).isEqualTo("custom_embedding_field");
153+
149154
assertThat(elasticsearchVectorStore).isNotNull();
155+
156+
Field optionsField = ElasticsearchVectorStore.class.getDeclaredField("options");
157+
optionsField.setAccessible(true);
158+
var options = (ElasticsearchVectorStoreOptions) optionsField.get(elasticsearchVectorStore);
159+
160+
assertThat(options).isNotNull();
161+
assertThat(options.getEmbeddingFieldName()).isEqualTo("custom_embedding_field");
150162
});
151163
}
152164

vector-stores/spring-ai-elasticsearch-store/src/main/java/org/springframework/ai/vectorstore/elasticsearch/ElasticsearchVectorStore.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,8 +147,6 @@
147147
*/
148148
public class ElasticsearchVectorStore extends AbstractObservationVectorStore implements InitializingBean {
149149

150-
private static final Logger logger = LoggerFactory.getLogger(ElasticsearchVectorStore.class);
151-
152150
private static final Map<SimilarityFunction, VectorStoreSimilarityMetric> SIMILARITY_TYPE_MAPPING = Map.of(
153151
SimilarityFunction.cosine, VectorStoreSimilarityMetric.COSINE, SimilarityFunction.l2_norm,
154152
VectorStoreSimilarityMetric.EUCLIDEAN, SimilarityFunction.dot_product, VectorStoreSimilarityMetric.DOT);

0 commit comments

Comments
 (0)