diff --git a/docs/release_notes.md b/docs/release_notes.md index 9181ad711..ac13a8faa 100644 --- a/docs/release_notes.md +++ b/docs/release_notes.md @@ -17,6 +17,7 @@ ### 📈 Improvements - [Orchestration] Added new API `TranslationConfig#applyToPlaceholders` and `TranslationConfig#applyToTemplateRoles` to support partial translation for a message. +- [RPT] `RptClient.tableCompletion()` GZIP compresses the request payload. ### 🐛 Fixed Issues diff --git a/foundation-models/sap-rpt/pom.xml b/foundation-models/sap-rpt/pom.xml index 51632e973..916205078 100644 --- a/foundation-models/sap-rpt/pom.xml +++ b/foundation-models/sap-rpt/pom.xml @@ -58,17 +58,7 @@ com.sap.cloud.sdk.datamodel - openapi-core - - - org.springframework - spring-core - - - org.springframework - spring-web - - + openapi-core-apache com.fasterxml.jackson.core 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 154ce0535..9bbfdb86b 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 @@ -12,7 +12,7 @@ import com.sap.ai.sdk.foundationmodels.rpt.generated.model.PredictResponsePayload; import com.sap.ai.sdk.foundationmodels.rpt.generated.model.PredictionConfig; import com.sap.cloud.sdk.cloudplatform.connectivity.Destination; -import com.sap.cloud.sdk.services.openapi.apache.ApiClient; +import com.sap.cloud.sdk.services.openapi.apache.apiclient.ApiClient; import java.io.File; import javax.annotation.Nonnull; import lombok.AccessLevel; @@ -74,7 +74,7 @@ static RptClient forDestination(@Nonnull final Destination destination) { @Beta @Nonnull public PredictResponsePayload tableCompletion(@Nonnull final PredictRequestPayload requestBody) { - return api.predict(requestBody); + return api.predict(requestBody, "gzip"); } /** 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 99fa86dd4..48297d502 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 @@ -4,10 +4,10 @@ import com.sap.ai.sdk.foundationmodels.rpt.generated.model.PredictRequestPayload; import com.sap.ai.sdk.foundationmodels.rpt.generated.model.PredictResponsePayload; import com.sap.cloud.sdk.cloudplatform.connectivity.Destination; -import com.sap.cloud.sdk.services.openapi.apache.ApiClient; -import com.sap.cloud.sdk.services.openapi.apache.BaseApi; -import com.sap.cloud.sdk.services.openapi.apache.Pair; -import com.sap.cloud.sdk.services.openapi.core.OpenApiRequestException; +import com.sap.cloud.sdk.services.openapi.apache.apiclient.ApiClient; +import com.sap.cloud.sdk.services.openapi.apache.apiclient.BaseApi; +import com.sap.cloud.sdk.services.openapi.apache.apiclient.Pair; +import com.sap.cloud.sdk.services.openapi.apache.core.OpenApiRequestException; import java.io.File; import java.util.ArrayList; import java.util.HashMap; @@ -65,12 +65,16 @@ public DefaultApi(@Nonnull final ApiClient apiClient) { * *

500 - Internal Server Error * - * @param predictRequestPayload The value for the parameter predictRequestPayload + * @param predictRequestPayload (required) The value for the parameter predictRequestPayload + * @param contentEncoding (optional) Content encoding of the request body. Use 'gzip' for + * gzip-compressed payloads. * @return PredictResponsePayload * @throws OpenApiRequestException if an error occurs while attempting to invoke the API */ @Nonnull - public PredictResponsePayload predict(@Nonnull final PredictRequestPayload predictRequestPayload) + public PredictResponsePayload predict( + @Nonnull final PredictRequestPayload predictRequestPayload, + @Nullable final String contentEncoding) throws OpenApiRequestException { // verify the required parameter 'predictRequestPayload' is set @@ -89,6 +93,9 @@ public PredictResponsePayload predict(@Nonnull final PredictRequestPayload predi 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"}; @@ -111,6 +118,35 @@ public PredictResponsePayload predict(@Nonnull final PredictRequestPayload predi 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 a047fb708..38c725e3b 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,6 +19,18 @@ "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": { diff --git a/pom.xml b/pom.xml index b81c4629a..2910eca99 100644 --- a/pom.xml +++ b/pom.xml @@ -56,7 +56,7 @@ full UTF-8 2025-04-03T13:23:00Z - 5.26.0 + 5.27.0-SNAPSHOT 6.0.3 3.13.2 3.27.7