Skip to content

Commit 67e33f4

Browse files
author
Max Hniebergall
committed
delete elser service package now that elasticsearch service supports it and has aliased it
1 parent c1af12a commit 67e33f4

27 files changed

+52
-1669
lines changed

server/src/main/java/org/elasticsearch/inference/InferenceServiceRegistry.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ public Optional<InferenceService> getService(String serviceName) {
5151
// here we are aliasing the elser service to use the elasticsearch service instead
5252
return Optional.ofNullable(services.get("elasticsearch")); // ElasticsearchInternalService.NAME
5353
} else {
54-
return Optional.ofNullable(services.get(serviceName));
55-
}
54+
return Optional.ofNullable(services.get(serviceName));
55+
}
5656
}
5757

5858
public List<NamedWriteableRegistry.Entry> getNamedWriteables() {

x-pack/plugin/inference/src/internalClusterTest/java/org/elasticsearch/xpack/inference/integration/ModelRegistryIT.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,10 @@
2727
import org.elasticsearch.xcontent.XContentBuilder;
2828
import org.elasticsearch.xpack.inference.InferencePlugin;
2929
import org.elasticsearch.xpack.inference.registry.ModelRegistry;
30+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElasticsearchInternalService;
31+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserInternalModel;
3032
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserInternalServiceSettingsTests;
31-
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserInternalServiceTests;
3233
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserMlNodeTaskSettingsTests;
33-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalModel;
34-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalService;
3534
import org.junit.Before;
3635

3736
import java.io.IOException;
@@ -117,8 +116,10 @@ public void testGetModel() throws Exception {
117116

118117
assertEquals(model.getConfigurations().getService(), modelHolder.get().service());
119118

120-
var elserService = new ElserInternalService(new InferenceServiceExtension.InferenceServiceFactoryContext(mock(Client.class)));
121-
ElserInternalModel roundTripModel = elserService.parsePersistedConfigWithSecrets(
119+
var elserService = new ElasticsearchInternalService(
120+
new InferenceServiceExtension.InferenceServiceFactoryContext(mock(Client.class))
121+
);
122+
ElserInternalModel roundTripModel = (ElserInternalModel) elserService.parsePersistedConfigWithSecrets(
122123
modelHolder.get().inferenceEntityId(),
123124
modelHolder.get().taskType(),
124125
modelHolder.get().settings(),
@@ -274,7 +275,17 @@ public void testGetModelWithSecrets() throws InterruptedException {
274275
}
275276

276277
private Model buildElserModelConfig(String inferenceEntityId, TaskType taskType) {
277-
return ElserInternalServiceTests.randomModelConfig(inferenceEntityId, taskType);
278+
return switch (taskType) {
279+
case SPARSE_EMBEDDING -> new org.elasticsearch.xpack.inference.services.elasticsearch.ElserInternalModel(
280+
inferenceEntityId,
281+
taskType,
282+
ElasticsearchInternalService.NAME,
283+
ElserInternalServiceSettingsTests.createRandom(),
284+
ElserMlNodeTaskSettingsTests.createRandom()
285+
);
286+
default -> throw new IllegalArgumentException("task type " + taskType + " is not supported");
287+
};
288+
278289
}
279290

280291
protected <T> void blockingCall(Consumer<ActionListener<T>> function, AtomicReference<T> response, AtomicReference<Exception> error)
@@ -297,7 +308,7 @@ private static Model buildModelWithUnknownField(String inferenceEntityId) {
297308
new ModelWithUnknownField(
298309
inferenceEntityId,
299310
TaskType.SPARSE_EMBEDDING,
300-
ElserInternalService.NAME,
311+
ElasticsearchInternalService.NAME,
301312
ElserInternalServiceSettingsTests.createRandom(),
302313
ElserMlNodeTaskSettingsTests.createRandom()
303314
)

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/InferenceNamedWriteablesProvider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@
6161
import org.elasticsearch.xpack.inference.services.elasticsearch.CustomElandInternalTextEmbeddingServiceSettings;
6262
import org.elasticsearch.xpack.inference.services.elasticsearch.CustomElandRerankTaskSettings;
6363
import org.elasticsearch.xpack.inference.services.elasticsearch.ElasticsearchInternalServiceSettings;
64+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserInternalServiceSettings;
65+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserMlNodeTaskSettings;
6466
import org.elasticsearch.xpack.inference.services.elasticsearch.MultilingualE5SmallInternalServiceSettings;
65-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalServiceSettings;
66-
import org.elasticsearch.xpack.inference.services.elser.ElserMlNodeTaskSettings;
6767
import org.elasticsearch.xpack.inference.services.googleaistudio.completion.GoogleAiStudioCompletionServiceSettings;
6868
import org.elasticsearch.xpack.inference.services.googleaistudio.embeddings.GoogleAiStudioEmbeddingsServiceSettings;
6969
import org.elasticsearch.xpack.inference.services.googlevertexai.GoogleVertexAiSecretSettings;

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/InferencePlugin.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@
8585
import org.elasticsearch.xpack.inference.services.elastic.ElasticInferenceServiceFeature;
8686
import org.elasticsearch.xpack.inference.services.elastic.ElasticInferenceServiceSettings;
8787
import org.elasticsearch.xpack.inference.services.elasticsearch.ElasticsearchInternalService;
88-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalService;
8988
import org.elasticsearch.xpack.inference.services.googleaistudio.GoogleAiStudioService;
9089
import org.elasticsearch.xpack.inference.services.googlevertexai.GoogleVertexAiService;
9190
import org.elasticsearch.xpack.inference.services.huggingface.HuggingFaceService;
@@ -227,7 +226,6 @@ public void loadExtensions(ExtensionLoader loader) {
227226

228227
public List<InferenceServiceExtension.Factory> getInferenceServiceFactories() {
229228
return List.of(
230-
ElserInternalService::new,
231229
context -> new HuggingFaceElserService(httpFactory.get(), serviceComponents.get()),
232230
context -> new HuggingFaceService(httpFactory.get(), serviceComponents.get()),
233231
context -> new OpenAiService(httpFactory.get(), serviceComponents.get()),

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/action/TransportPutInferenceModelAction.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,15 @@
4747
import org.elasticsearch.xpack.inference.InferencePlugin;
4848
import org.elasticsearch.xpack.inference.registry.ModelRegistry;
4949
import org.elasticsearch.xpack.inference.services.elasticsearch.ElasticsearchInternalService;
50-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalService;
5150

5251
import java.io.IOException;
5352
import java.util.Map;
5453
import java.util.Set;
5554

5655
import static org.elasticsearch.core.Strings.format;
5756
import static org.elasticsearch.xpack.inference.services.elasticsearch.BaseElasticsearchInternalService.selectDefaultModelVariantBasedOnClusterArchitecture;
58-
import static org.elasticsearch.xpack.inference.services.elser.ElserModels.ELSER_V2_MODEL;
59-
import static org.elasticsearch.xpack.inference.services.elser.ElserModels.ELSER_V2_MODEL_LINUX_X86;
57+
import static org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels.ELSER_V2_MODEL;
58+
import static org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels.ELSER_V2_MODEL_LINUX_X86;
6059

6160
public class TransportPutInferenceModelAction extends TransportMasterNodeAction<
6261
PutInferenceModelAction.Request,
@@ -167,20 +166,20 @@ protected void masterOperation(
167166
// Find the cluster platform as the service may need that
168167
// information when creating the model
169168
MlPlatformArchitecturesUtil.getMlNodesArchitecturesSet(listener.delegateFailureAndWrap((delegate, architectures) -> {
170-
171-
if (serviceName.equals(ElserInternalService.NAME)) { // TODO remove this block once the elser service is removed
169+
String ELSER_SERVICE_NAME = "elser";
170+
if (serviceName.equals(ELSER_SERVICE_NAME)) {
172171
String modelId = selectDefaultModelVariantBasedOnClusterArchitecture(
173172
architectures,
174173
ELSER_V2_MODEL_LINUX_X86,
175174
ELSER_V2_MODEL
176175
);
177176

178-
DEPRECATION_LOGGER.critical(
177+
DEPRECATION_LOGGER.warn(
179178
DeprecationCategory.API,
180179
"inference_api_elser_service",
181180
"The [{}] service is deprecated and will be removed in a future release. Use the [{}] service instead, with"
182181
+ " [model_id] set to [{}] in the [service_settings]",
183-
ElserInternalService.NAME,
182+
ELSER_SERVICE_NAME,
184183
ElasticsearchInternalService.NAME,
185184
modelId
186185
);

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/services/elastic/ElasticInferenceServiceSparseEmbeddingsModel.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import org.elasticsearch.xpack.inference.external.action.ExecutableAction;
1919
import org.elasticsearch.xpack.inference.external.action.elastic.ElasticInferenceServiceActionVisitor;
2020
import org.elasticsearch.xpack.inference.services.ConfigurationParseContext;
21-
import org.elasticsearch.xpack.inference.services.elser.ElserModels;
21+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels;
2222

2323
import java.net.URI;
2424
import java.net.URISyntaxException;

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/services/elastic/ElasticInferenceServiceSparseEmbeddingsServiceSettings.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import org.elasticsearch.inference.ServiceSettings;
1818
import org.elasticsearch.xcontent.XContentBuilder;
1919
import org.elasticsearch.xpack.inference.services.ConfigurationParseContext;
20-
import org.elasticsearch.xpack.inference.services.elser.ElserModels;
20+
import org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels;
2121
import org.elasticsearch.xpack.inference.services.settings.FilteredXContentObject;
2222
import org.elasticsearch.xpack.inference.services.settings.RateLimitSettings;
2323

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/services/elasticsearch/BaseElasticsearchInternalService.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import org.elasticsearch.xpack.core.ml.inference.TrainedModelInput;
2929
import org.elasticsearch.xpack.core.ml.inference.TrainedModelPrefixStrings;
3030
import org.elasticsearch.xpack.core.ml.inference.trainedmodel.InferenceConfigUpdate;
31-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalModel;
3231

3332
import java.io.IOException;
3433
import java.util.EnumSet;

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/services/elasticsearch/ElasticsearchInternalService.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@
5656
import static org.elasticsearch.xpack.inference.services.ServiceUtils.removeFromMap;
5757
import static org.elasticsearch.xpack.inference.services.ServiceUtils.removeFromMapOrThrowIfNull;
5858
import static org.elasticsearch.xpack.inference.services.ServiceUtils.throwIfNotEmptyMap;
59+
import static org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels.ELSER_V2_MODEL;
60+
import static org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels.ELSER_V2_MODEL_LINUX_X86;
5961
import static org.elasticsearch.xpack.inference.services.elasticsearch.ElserModels.VALID_ELSER_MODEL_IDS;
60-
import static org.elasticsearch.xpack.inference.services.elser.ElserModels.ELSER_V2_MODEL;
61-
import static org.elasticsearch.xpack.inference.services.elser.ElserModels.ELSER_V2_MODEL_LINUX_X86;
6262

6363
public class ElasticsearchInternalService extends BaseElasticsearchInternalService {
6464

@@ -263,7 +263,13 @@ private void elserCase(
263263
throwIfNotEmptyMap(serviceSettingsMap, name());
264264

265265
modelListener.onResponse(
266-
new ElserInternalModel(inferenceEntityId, taskType, NAME, new ElserInternalServiceSettings(esServiceSettingsBuilder.build()))
266+
new ElserInternalModel(
267+
inferenceEntityId,
268+
taskType,
269+
NAME,
270+
new ElserInternalServiceSettings(esServiceSettingsBuilder.build()),
271+
ElserMlNodeTaskSettings.DEFAULT
272+
)
267273
);
268274
}
269275

x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/services/elasticsearch/ElserInternalModel.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
import org.elasticsearch.inference.TaskType;
1414
import org.elasticsearch.xpack.core.ml.action.CreateTrainedModelAssignmentAction;
1515
import org.elasticsearch.xpack.core.ml.utils.ExceptionsHelper;
16-
import org.elasticsearch.xpack.inference.services.elser.ElserInternalServiceSettings;
17-
import org.elasticsearch.xpack.inference.services.elser.ElserMlNodeTaskSettings;
1816

1917
public class ElserInternalModel extends ElasticsearchInternalModel {
2018

0 commit comments

Comments
 (0)