Class ElasticsearchEmbeddingStore
java.lang.Object
dev.langchain4j.store.embedding.elasticsearch.ElasticsearchEmbeddingStore
- All Implemented Interfaces:
dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
public class ElasticsearchEmbeddingStore
extends Object
implements dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
Represents an Elasticsearch index as an embedding store.
- See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, String serverUrl, String apiKey, String userName, String password, String indexName) Deprecated, for removal: This API element is subject to removal in a future version.ElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, String serverUrl, String apiKey, String userName, String password, String indexName, Integer dimension) Deprecated, for removal: This API element is subject to removal in a future version.ElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, org.elasticsearch.client.RestClient restClient, String indexName) Constructor using a RestClient -
Method Summary
Modifier and TypeMethodDescriptionadd(dev.langchain4j.data.embedding.Embedding embedding) add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment) voidvoidaddAll(List<String> ids, List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> embedded) builder()voidThe Elasticsearch implementation will simply drop the index instead of removing all documents one by one.voidremoveAll(dev.langchain4j.store.embedding.filter.Filter filter) voidremoveAll(Collection<String> ids) dev.langchain4j.store.embedding.EmbeddingSearchResult<dev.langchain4j.data.segment.TextSegment> search(dev.langchain4j.store.embedding.EmbeddingSearchRequest embeddingSearchRequest) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface dev.langchain4j.store.embedding.EmbeddingStore
addAll, generateIds, remove
-
Constructor Details
-
ElasticsearchEmbeddingStore
@Deprecated(forRemoval=true) public ElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, String serverUrl, String apiKey, String userName, String password, String indexName, Integer dimension) Deprecated, for removal: This API element is subject to removal in a future version.Creates an instance of ElasticsearchEmbeddingStore.- Parameters:
configuration- Elasticsearch configuration to use (Knn or Script)serverUrl- Elasticsearch Server URL (mandatory)apiKey- Elasticsearch API key (optional)userName- Elasticsearch userName (optional)password- Elasticsearch password (optional)indexName- Elasticsearch index name (optional). Default value: "default". Index will be created automatically if not exists.dimension- Embedding vector dimension (mandatory when index does not exist yet).
-
ElasticsearchEmbeddingStore
@Deprecated(forRemoval=true) public ElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, String serverUrl, String apiKey, String userName, String password, String indexName) Deprecated, for removal: This API element is subject to removal in a future version.Creates an instance of ElasticsearchEmbeddingStore.- Parameters:
configuration- Elasticsearch configuration to use (Knn or Script)serverUrl- Elasticsearch Server URL (mandatory)apiKey- Elasticsearch API key (optional)userName- Elasticsearch userName (optional)password- Elasticsearch password (optional)indexName- Elasticsearch index name (optional). Default value: "default". Index will be created automatically if not exists.
-
ElasticsearchEmbeddingStore
public ElasticsearchEmbeddingStore(ElasticsearchConfiguration configuration, org.elasticsearch.client.RestClient restClient, String indexName) Constructor using a RestClient- Parameters:
configuration- Elasticsearch configuration to use (Knn or Script)restClient- Elasticsearch Rest Client (mandatory)indexName- Elasticsearch index name (optional). Default value: "default". Index will be created automatically if not exists.
-
-
Method Details
-
builder
-
add
- Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
add
- Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
add
public String add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment) - Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
addAll
-
search
public dev.langchain4j.store.embedding.EmbeddingSearchResult<dev.langchain4j.data.segment.TextSegment> search(dev.langchain4j.store.embedding.EmbeddingSearchRequest embeddingSearchRequest) - Specified by:
searchin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
removeAll
- Specified by:
removeAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
removeAll
public void removeAll(dev.langchain4j.store.embedding.filter.Filter filter) - Specified by:
removeAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
removeAll
public void removeAll()The Elasticsearch implementation will simply drop the index instead of removing all documents one by one.- Specified by:
removeAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
addAll
-
ElasticsearchEmbeddingStore(ElasticsearchConfiguration, RestClient, String)