From e2626bc49718a0aba84bf333e16cf38c23f855e7 Mon Sep 17 00:00:00 2001 From: SAP Cloud SDK Bot Date: Sun, 22 Mar 2026 00:13:02 +0000 Subject: [PATCH 1/3] Update sap-rpt based on main --- .../rpt/generated/client/DefaultApi.java | 40 +------------------ .../resources/spec/sap-rpt-1_openapi.json | 12 ------ 2 files changed, 2 insertions(+), 50 deletions(-) diff --git a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/generated/client/DefaultApi.java b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/generated/client/DefaultApi.java index 48297d502..be7bbdfe2 100644 --- a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/generated/client/DefaultApi.java +++ b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/generated/client/DefaultApi.java @@ -65,16 +65,12 @@ public DefaultApi(@Nonnull final ApiClient apiClient) { * *

500 - Internal Server Error * - * @param predictRequestPayload (required) The value for the parameter predictRequestPayload - * @param contentEncoding (optional) Content encoding of the request body. Use 'gzip' for - * gzip-compressed payloads. + * @param predictRequestPayload The value for the parameter predictRequestPayload * @return PredictResponsePayload * @throws OpenApiRequestException if an error occurs while attempting to invoke the API */ @Nonnull - public PredictResponsePayload predict( - @Nonnull final PredictRequestPayload predictRequestPayload, - @Nullable final String contentEncoding) + public PredictResponsePayload predict(@Nonnull final PredictRequestPayload predictRequestPayload) throws OpenApiRequestException { // verify the required parameter 'predictRequestPayload' is set @@ -93,9 +89,6 @@ public PredictResponsePayload predict( final Map localVarHeaderParams = new HashMap(); final Map localVarFormParams = new HashMap(); - if (contentEncoding != null) - localVarHeaderParams.put("Content-Encoding", ApiClient.parameterToString(contentEncoding)); - final String[] localVarAccepts = {"application/json"}; final String localVarAccept = ApiClient.selectHeaderAccept(localVarAccepts); final String[] localVarContentTypes = {"application/json"}; @@ -118,35 +111,6 @@ public PredictResponsePayload predict( localVarReturnType); } - /** - * Make in-context predictions for specified target columns based on provided table data JSON - * (optionally gzip-compressed). - * - *

Make in-context predictions for specified target columns. Either \"rows\" or - * \"columns\" must be provided and must contain both context and query rows. You can - * optionally send gzip-compressed JSON payloads and set a \"Content-Encoding: gzip\" - * header. - * - *

200 - Successful Prediction - * - *

400 - Bad Request - Invalid input data - * - *

413 - Payload Too Large - * - *

422 - Validation Error - * - *

500 - Internal Server Error - * - * @param predictRequestPayload The value for the parameter predictRequestPayload - * @return PredictResponsePayload - * @throws OpenApiRequestException if an error occurs while attempting to invoke the API - */ - @Nonnull - public PredictResponsePayload predict(@Nonnull final PredictRequestPayload predictRequestPayload) - throws OpenApiRequestException { - return predict(predictRequestPayload, null); - } - /** * Make in-context predictions for specified target columns based on provided table data Parquet * file. diff --git a/foundation-models/sap-rpt/src/main/resources/spec/sap-rpt-1_openapi.json b/foundation-models/sap-rpt/src/main/resources/spec/sap-rpt-1_openapi.json index 38c725e3b..a047fb708 100644 --- a/foundation-models/sap-rpt/src/main/resources/spec/sap-rpt-1_openapi.json +++ b/foundation-models/sap-rpt/src/main/resources/spec/sap-rpt-1_openapi.json @@ -19,18 +19,6 @@ "summary": "Make in-context predictions for specified target columns based on provided table data JSON (optionally gzip-compressed).", "description": "Make in-context predictions for specified target columns.\nEither \"rows\" or \"columns\" must be provided and must contain both context and query rows.\nYou can optionally send gzip-compressed JSON payloads and set a \"Content-Encoding: gzip\" header.", "operationId": "predict", - "parameters": [ - { - "name": "Content-Encoding", - "in": "header", - "description": "Content encoding of the request body. Use 'gzip' for gzip-compressed payloads.", - "required": false, - "schema": { - "type": "string", - "enum": ["gzip"] - } - } - ], "requestBody": { "content": { "application/json": { From ddd63cf18cc1388632422dfb601bf642670a085b Mon Sep 17 00:00:00 2001 From: Roshin Rajan Panackal Date: Tue, 14 Apr 2026 17:18:02 +0200 Subject: [PATCH 2/3] Regenerate and use withDefaultHeaders() --- .../java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java | 3 ++- .../src/test/resources/mappings/predictColumnWise.json | 5 +++++ .../sap-rpt/src/test/resources/mappings/predictRowWise.json | 5 +++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java index 9bbfdb86b..f9ba8bd60 100644 --- a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java +++ b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java @@ -14,6 +14,7 @@ import com.sap.cloud.sdk.cloudplatform.connectivity.Destination; import com.sap.cloud.sdk.services.openapi.apache.apiclient.ApiClient; import java.io.File; +import java.util.Map; import javax.annotation.Nonnull; import lombok.AccessLevel; import lombok.RequiredArgsConstructor; @@ -74,7 +75,7 @@ static RptClient forDestination(@Nonnull final Destination destination) { @Beta @Nonnull public PredictResponsePayload tableCompletion(@Nonnull final PredictRequestPayload requestBody) { - return api.predict(requestBody, "gzip"); + return api.withDefaultHeaders(Map.of("Content-Encoding", "gzip")).predict(requestBody); } /** diff --git a/foundation-models/sap-rpt/src/test/resources/mappings/predictColumnWise.json b/foundation-models/sap-rpt/src/test/resources/mappings/predictColumnWise.json index b04f39fb9..5e6b63aa0 100644 --- a/foundation-models/sap-rpt/src/test/resources/mappings/predictColumnWise.json +++ b/foundation-models/sap-rpt/src/test/resources/mappings/predictColumnWise.json @@ -2,6 +2,11 @@ "request": { "method": "POST", "url": "/predict", + "headers": { + "Content-Encoding": { + "equalTo": "gzip" + } + }, "bodyPatterns": [ { "equalToJson": { diff --git a/foundation-models/sap-rpt/src/test/resources/mappings/predictRowWise.json b/foundation-models/sap-rpt/src/test/resources/mappings/predictRowWise.json index 9d97f1f84..a829a5c22 100644 --- a/foundation-models/sap-rpt/src/test/resources/mappings/predictRowWise.json +++ b/foundation-models/sap-rpt/src/test/resources/mappings/predictRowWise.json @@ -2,6 +2,11 @@ "request": { "method": "POST", "url": "/predict", + "headers": { + "Content-Encoding": { + "equalTo": "gzip" + } + }, "bodyPatterns": [ { "equalToJson": { From 80211af5aa2b503c0b1e4e50d916e3436b1b3466 Mon Sep 17 00:00:00 2001 From: Roshin Rajan Panackal Date: Wed, 15 Apr 2026 10:29:10 +0200 Subject: [PATCH 3/3] Hold an api with default gzip encoding --- .../java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java index f9ba8bd60..e968aff49 100644 --- a/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java +++ b/foundation-models/sap-rpt/src/main/java/com/sap/ai/sdk/foundationmodels/rpt/RptClient.java @@ -27,6 +27,7 @@ @RequiredArgsConstructor(access = AccessLevel.PRIVATE) public class RptClient { @Nonnull private final DefaultApi api; + @Nonnull private final DefaultApi apiWithGzipEncoding; /** * Creates a new RptClient for the specified foundation model. @@ -50,7 +51,8 @@ public static RptClient forModel(@Nonnull final RptModel foundationModel) */ static RptClient forDestination(@Nonnull final Destination destination) { final var apiClient = ApiClient.create(destination).withObjectMapper(getDefaultObjectMapper()); - return new RptClient(new DefaultApi(apiClient)); + final var api = new DefaultApi(apiClient); + return new RptClient(api, api.withDefaultHeaders(Map.of("Content-Encoding", "gzip"))); } /** @@ -75,7 +77,7 @@ static RptClient forDestination(@Nonnull final Destination destination) { @Beta @Nonnull public PredictResponsePayload tableCompletion(@Nonnull final PredictRequestPayload requestBody) { - return api.withDefaultHeaders(Map.of("Content-Encoding", "gzip")).predict(requestBody); + return apiWithGzipEncoding.predict(requestBody); } /**