diff --git a/src/main/java/com/google/genai/Models.java b/src/main/java/com/google/genai/Models.java index ed195e735fc..c39fd5d6bb8 100644 --- a/src/main/java/com/google/genai/Models.java +++ b/src/main/java/com/google/genai/Models.java @@ -4487,6 +4487,7 @@ ObjectNode candidateFromMldev(ApiClient apiClient, JsonNode fromObject, ObjectNo ObjectNode generateContentResponseFromMldev( ApiClient apiClient, JsonNode fromObject, ObjectNode parentObject) { ObjectNode toObject = JsonSerializable.objectMapper.createObjectNode(); + if (Common.getValueByPath(fromObject, new String[] {"candidates"}) != null) { ArrayNode keyArray = (ArrayNode) Common.getValueByPath(fromObject, new String[] {"candidates"}); @@ -5337,6 +5338,7 @@ ObjectNode candidateFromVertex( ObjectNode generateContentResponseFromVertex( ApiClient apiClient, JsonNode fromObject, ObjectNode parentObject) { ObjectNode toObject = JsonSerializable.objectMapper.createObjectNode(); + if (Common.getValueByPath(fromObject, new String[] {"candidates"}) != null) { ArrayNode keyArray = (ArrayNode) Common.getValueByPath(fromObject, new String[] {"candidates"}); diff --git a/src/main/java/com/google/genai/types/GenerateContentConfig.java b/src/main/java/com/google/genai/types/GenerateContentConfig.java index 6e5574a647d..9b955d021f9 100644 --- a/src/main/java/com/google/genai/types/GenerateContentConfig.java +++ b/src/main/java/com/google/genai/types/GenerateContentConfig.java @@ -44,6 +44,10 @@ public abstract class GenerateContentConfig extends JsonSerializable { @JsonProperty("httpOptions") public abstract Optional httpOptions(); + /** If true, the raw HTTP response will be returned in the 'sdk_http_response' field. */ + @JsonProperty("shouldReturnHttpResponse") + public abstract Optional shouldReturnHttpResponse(); + /** * Instructions for the model to steer it toward better performance. For example, "Answer as * concisely as possible" or "Don't use technical terms in your response". @@ -233,6 +237,15 @@ public Builder httpOptions(HttpOptions.Builder httpOptionsBuilder) { return httpOptions(httpOptionsBuilder.build()); } + /** + * Setter for shouldReturnHttpResponse. + * + *

shouldReturnHttpResponse: If true, the raw HTTP response will be returned in the + * 'sdk_http_response' field. + */ + @JsonProperty("shouldReturnHttpResponse") + public abstract Builder shouldReturnHttpResponse(boolean shouldReturnHttpResponse); + /** * Setter for systemInstruction. * diff --git a/src/main/java/com/google/genai/types/GenerateContentResponse.java b/src/main/java/com/google/genai/types/GenerateContentResponse.java index 4cf2b44b377..c00a72a4b02 100644 --- a/src/main/java/com/google/genai/types/GenerateContentResponse.java +++ b/src/main/java/com/google/genai/types/GenerateContentResponse.java @@ -41,6 +41,10 @@ @AutoValue @JsonDeserialize(builder = GenerateContentResponse.Builder.class) public abstract class GenerateContentResponse extends JsonSerializable { + /** Used to retain the full HTTP response. */ + @JsonProperty("sdkHttpResponse") + public abstract Optional sdkHttpResponse(); + /** Response variations returned by the model. */ @JsonProperty("candidates") public abstract Optional> candidates(); @@ -89,6 +93,23 @@ private static Builder create() { return new AutoValue_GenerateContentResponse.Builder(); } + /** + * Setter for sdkHttpResponse. + * + *

sdkHttpResponse: Used to retain the full HTTP response. + */ + @JsonProperty("sdkHttpResponse") + public abstract Builder sdkHttpResponse(HttpResponse sdkHttpResponse); + + /** + * Setter for sdkHttpResponse builder. + * + *

sdkHttpResponse: Used to retain the full HTTP response. + */ + public Builder sdkHttpResponse(HttpResponse.Builder sdkHttpResponseBuilder) { + return sdkHttpResponse(sdkHttpResponseBuilder.build()); + } + /** * Setter for candidates. *