diff --git a/server/src/main/java/org/elasticsearch/inference/InferenceServiceResults.java b/server/src/main/java/org/elasticsearch/inference/InferenceServiceResults.java index 9b55e9ce54a86..3746960ad8f78 100644 --- a/server/src/main/java/org/elasticsearch/inference/InferenceServiceResults.java +++ b/server/src/main/java/org/elasticsearch/inference/InferenceServiceResults.java @@ -24,25 +24,12 @@ public interface InferenceServiceResults extends NamedWriteable, ChunkedToXConte /** *

Transform the result to match the format required for the TransportCoordinatedInferenceAction. - * For the inference plugin TextEmbeddingResults, the {@link #transformToLegacyFormat()} transforms the - * results into an intermediate format only used by the plugin's return value. It doesn't align with what the - * TransportCoordinatedInferenceAction expects. TransportCoordinatedInferenceAction expects an ml plugin - * TextEmbeddingResults.

- * - *

For other results like SparseEmbeddingResults, this method can be a pass through to the transformToLegacyFormat.

+ * TransportCoordinatedInferenceAction expects an ml plugin TextEmbeddingResults or SparseEmbeddingResults.

*/ default List transformToCoordinationFormat() { throw new UnsupportedOperationException("transformToCoordinationFormat() is not implemented"); } - /** - * Transform the result to match the format required for versions prior to - * {@link org.elasticsearch.TransportVersions#V_8_12_0} - */ - default List transformToLegacyFormat() { - throw new UnsupportedOperationException("transformToLegacyFormat() is not implemented"); - } - /** * Convert the result to a map to aid with test assertions */ diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/action/InferenceAction.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/action/InferenceAction.java index e9ccb1baeb8bc..7a14185e7b5dc 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/action/InferenceAction.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/action/InferenceAction.java @@ -580,12 +580,8 @@ public Flow.Publisher publisher() { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getTransportVersion().onOrAfter(TransportVersions.V_8_12_0)) { - out.writeNamedWriteable(results); - } else { - out.writeNamedWriteable(results.transformToLegacyFormat().get(0)); - } // streaming isn't supported via Writeable yet + out.writeNamedWriteable(results); } @Override diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/ChatCompletionResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/ChatCompletionResults.java index 902c69cef558e..346d7416f9dc5 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/ChatCompletionResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/ChatCompletionResults.java @@ -68,11 +68,6 @@ public List transformToCoordinationFormat() { return results; } - @Override - public List transformToLegacyFormat() { - throw new UnsupportedOperationException(); - } - public List getResults() { return results; } diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/RankedDocsResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/RankedDocsResults.java index b71722d0b9678..37829816aa3aa 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/RankedDocsResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/RankedDocsResults.java @@ -196,11 +196,6 @@ public List transformToCoordinationFormat() { throw new UnsupportedOperationException("Coordination format not supported by " + NAME); } - @Override - public List transformToLegacyFormat() { - throw new UnsupportedOperationException("Legacy format not supported by " + NAME); - } - @Override public Map asMap() { Map map = new LinkedHashMap<>(); diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/SparseEmbeddingResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/SparseEmbeddingResults.java index 69665dad3d515..d57ff1dd9cb8d 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/SparseEmbeddingResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/SparseEmbeddingResults.java @@ -100,11 +100,6 @@ public Map asMap() { @Override public List transformToCoordinationFormat() { - return transformToLegacyFormat(); - } - - @Override - public List transformToLegacyFormat() { return embeddings.stream() .map( embedding -> new TextExpansionResults( diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingBitResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingBitResults.java index 15a2b8ce0f60a..37fca12f1697a 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingBitResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingBitResults.java @@ -83,16 +83,6 @@ public List transformToCoordinationFormat() { .toList(); } - @Override - @SuppressWarnings("deprecation") - public List transformToLegacyFormat() { - var legacyEmbedding = new LegacyTextEmbeddingResults( - embeddings.stream().map(embedding -> new LegacyTextEmbeddingResults.Embedding(embedding.toFloatArray())).toList() - ); - - return List.of(legacyEmbedding); - } - public Map asMap() { Map map = new LinkedHashMap<>(); map.put(TEXT_EMBEDDING_BITS, embeddings); diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingByteResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingByteResults.java index 75f2a0268c0da..54f858cb20ae0 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingByteResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingByteResults.java @@ -85,16 +85,6 @@ public List transformToCoordinationFormat() { .toList(); } - @Override - @SuppressWarnings("deprecation") - public List transformToLegacyFormat() { - var legacyEmbedding = new LegacyTextEmbeddingResults( - embeddings.stream().map(embedding -> new LegacyTextEmbeddingResults.Embedding(embedding.toFloatArray())).toList() - ); - - return List.of(legacyEmbedding); - } - public Map asMap() { Map map = new LinkedHashMap<>(); map.put(TEXT_EMBEDDING_BYTES, embeddings); diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingFloatResults.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingFloatResults.java index b13b82b7dd390..e68a5e4bd13b0 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingFloatResults.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/inference/results/TextEmbeddingFloatResults.java @@ -122,16 +122,6 @@ public List transformToCoordinationFormat() { return embeddings.stream().map(embedding -> new MlTextEmbeddingResults(TEXT_EMBEDDING, embedding.asDoubleArray(), false)).toList(); } - @Override - @SuppressWarnings("deprecation") - public List transformToLegacyFormat() { - var legacyEmbedding = new LegacyTextEmbeddingResults( - embeddings.stream().map(embedding -> new LegacyTextEmbeddingResults.Embedding(embedding.values)).toList() - ); - - return List.of(legacyEmbedding); - } - public Map asMap() { Map map = new LinkedHashMap<>(); map.put(TEXT_EMBEDDING, embeddings); diff --git a/x-pack/plugin/inference/src/internalClusterTest/java/org/elasticsearch/xpack/inference/rest/ServerSentEventsRestActionListenerTests.java b/x-pack/plugin/inference/src/internalClusterTest/java/org/elasticsearch/xpack/inference/rest/ServerSentEventsRestActionListenerTests.java index d9865e0d26337..5965a48428a6b 100644 --- a/x-pack/plugin/inference/src/internalClusterTest/java/org/elasticsearch/xpack/inference/rest/ServerSentEventsRestActionListenerTests.java +++ b/x-pack/plugin/inference/src/internalClusterTest/java/org/elasticsearch/xpack/inference/rest/ServerSentEventsRestActionListenerTests.java @@ -194,11 +194,6 @@ public List transformToCoordinationFormat() { return List.of(); } - @Override - public List transformToLegacyFormat() { - return List.of(); - } - @Override public Map asMap() { return Map.of(); @@ -283,11 +278,6 @@ public List transformToCoordinationFormat() { return List.of(); } - @Override - public List transformToLegacyFormat() { - return List.of(); - } - @Override public Map asMap() { return Map.of(); diff --git a/x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/external/response/elastic/ElasticInferenceServiceAuthorizationResponseEntity.java b/x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/external/response/elastic/ElasticInferenceServiceAuthorizationResponseEntity.java index 5912deb006440..30c460d5d1ede 100644 --- a/x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/external/response/elastic/ElasticInferenceServiceAuthorizationResponseEntity.java +++ b/x-pack/plugin/inference/src/main/java/org/elasticsearch/xpack/inference/external/response/elastic/ElasticInferenceServiceAuthorizationResponseEntity.java @@ -154,11 +154,6 @@ public List transformToCoordinationFormat() { throw new UnsupportedOperationException("Not implemented"); } - @Override - public List transformToLegacyFormat() { - throw new UnsupportedOperationException("not implemented"); - } - @Override public Map asMap() { throw new UnsupportedOperationException("Not implemented"); diff --git a/x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/action/InferenceActionResponseTests.java b/x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/action/InferenceActionResponseTests.java index c3f3482abb5bb..7625534f8c41d 100644 --- a/x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/action/InferenceActionResponseTests.java +++ b/x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/action/InferenceActionResponseTests.java @@ -22,9 +22,6 @@ import java.util.ArrayList; import java.util.List; -import static org.elasticsearch.TransportVersions.V_8_12_0; -import static org.elasticsearch.xpack.core.inference.action.InferenceAction.Response.transformToServiceResults; - public class InferenceActionResponseTests extends AbstractBWCWireSerializationTestCase { @Override @@ -58,61 +55,6 @@ protected InferenceAction.Response mutateInstance(InferenceAction.Response insta @Override protected InferenceAction.Response mutateInstanceForVersion(InferenceAction.Response instance, TransportVersion version) { - if (version.before(V_8_12_0)) { - var singleResultList = instance.getResults().transformToLegacyFormat().subList(0, 1); - return new InferenceAction.Response(transformToServiceResults(singleResultList)); - } - return instance; } - - public void testSerializesInferenceServiceResultsAddedVersion() throws IOException { - var instance = createTestInstance(); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - public void testSerializesOpenAiAddedVersion_UsingLegacyTextEmbeddingResult() throws IOException { - var embeddingResults = LegacyMlTextEmbeddingResultsTests.createRandomResults().transformToTextEmbeddingResults(); - var instance = new InferenceAction.Response(embeddingResults); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - public void testSerializesOpenAiAddedVersion_UsingSparseEmbeddingResult() throws IOException { - var embeddingResults = SparseEmbeddingResultsTests.createRandomResults(); - var instance = new InferenceAction.Response(embeddingResults); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - public void testSerializesMultipleInputsVersion_UsingLegacyTextEmbeddingResult() throws IOException { - var embeddingResults = TextEmbeddingFloatResultsTests.createRandomResults(); - var instance = new InferenceAction.Response(embeddingResults); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - public void testSerializesMultipleInputsVersion_UsingSparseEmbeddingResult() throws IOException { - var embeddingResults = SparseEmbeddingResultsTests.createRandomResults(); - var instance = new InferenceAction.Response(embeddingResults); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - // Technically we should never see a text embedding result in the transport version of this test because support - // for it wasn't added until openai - public void testSerializesSingleInputVersion_UsingLegacyTextEmbeddingResult() throws IOException { - var embeddingResults = TextEmbeddingFloatResultsTests.createRandomResults(); - var instance = new InferenceAction.Response(embeddingResults); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } - - public void testSerializesSingleVersion_UsingSparseEmbeddingResult() throws IOException { - var embeddingResults = SparseEmbeddingResultsTests.createRandomResults().transformToLegacyFormat().subList(0, 1); - var instance = new InferenceAction.Response(transformToServiceResults(embeddingResults)); - var copy = copyWriteable(instance, getNamedWriteableRegistry(), instanceReader(), V_8_12_0); - assertOnBWCObject(copy, instance, V_8_12_0); - } }