diff --git a/docs/release_notes.md b/docs/release_notes.md
index 80e2325c3..0eeaf2aef 100644
--- a/docs/release_notes.md
+++ b/docs/release_notes.md
@@ -16,7 +16,7 @@
### 📈 Improvements
--
+- [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..12cc0f858 100644
--- a/foundation-models/sap-rpt/pom.xml
+++ b/foundation-models/sap-rpt/pom.xml
@@ -56,6 +56,10 @@
com.sap.cloud.sdk.cloudplatform
cloudplatform-connectivity
+
+ com.sap.cloud.sdk.datamodel
+ openapi-core-apache
+
com.sap.cloud.sdk.datamodel
openapi-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..dde008f4b 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
@@ -3,6 +3,7 @@
import static com.sap.ai.sdk.core.JacksonConfiguration.getDefaultObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.type.TypeReference;
import com.google.common.annotations.Beta;
import com.sap.ai.sdk.core.AiCoreService;
import com.sap.ai.sdk.core.DeploymentResolutionException;
@@ -12,8 +13,15 @@
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 com.sap.cloud.sdk.services.openapi.apache.apiclient.Pair;
+import com.sap.cloud.sdk.services.openapi.core.OpenApiRequestException;
import java.io.File;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.StringJoiner;
import javax.annotation.Nonnull;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
@@ -26,6 +34,7 @@
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
public class RptClient {
@Nonnull private final DefaultApi api;
+ @Nonnull private final ApiClient apiClient;
/**
* Creates a new RptClient for the specified foundation model.
@@ -49,7 +58,7 @@ 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));
+ return new RptClient(new DefaultApi(apiClient), apiClient);
}
/**
@@ -73,8 +82,37 @@ static RptClient forDestination(@Nonnull final Destination destination) {
*/
@Beta
@Nonnull
- public PredictResponsePayload tableCompletion(@Nonnull final PredictRequestPayload requestBody) {
- return api.predict(requestBody);
+ public PredictResponsePayload tableCompletion(@Nonnull final PredictRequestPayload requestBody)
+ throws OpenApiRequestException {
+
+ // create path and map variables
+ final String localVarPath = "/predict";
+
+ final StringJoiner localVarQueryStringJoiner = new StringJoiner("&");
+ final List localVarQueryParams = new ArrayList<>();
+ final List localVarCollectionQueryParams = new ArrayList<>();
+ final Map localVarHeaderParams = Map.of("Content-Encoding", "gzip");
+ final Map localVarFormParams = new HashMap<>();
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = ApiClient.selectHeaderAccept(localVarAccepts);
+ final String[] localVarContentTypes = {"application/json"};
+ final String localVarContentType = ApiClient.selectHeaderContentType(localVarContentTypes);
+
+ final TypeReference localVarReturnType = new TypeReference<>() {};
+
+ return apiClient.invokeAPI(
+ localVarPath,
+ "POST",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarQueryStringJoiner.toString(),
+ requestBody,
+ localVarHeaderParams,
+ localVarFormParams,
+ localVarAccept,
+ localVarContentType,
+ localVarReturnType);
}
/**
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..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
@@ -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;
diff --git a/pom.xml b/pom.xml
index 10abeb36f..d5f2154bb 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