diff --git a/models/spring-ai-vertex-ai-gemini/src/main/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatModel.java b/models/spring-ai-vertex-ai-gemini/src/main/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatModel.java index 8ad6a0aa39d..1bf0567fc32 100644 --- a/models/spring-ai-vertex-ai-gemini/src/main/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatModel.java +++ b/models/spring-ai-vertex-ai-gemini/src/main/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatModel.java @@ -23,6 +23,7 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; import com.google.cloud.vertexai.VertexAI; import com.google.cloud.vertexai.api.Candidate; @@ -371,8 +372,11 @@ else if (rootNode.isArray()) { return structBuilder.build(); } - catch (Exception e) { - throw new RuntimeException(e); + catch (JsonProcessingException ex) { + return Struct.newBuilder().putFields("result", Value.newBuilder().setStringValue(json).build()).build(); + } + catch (Exception ex) { + throw new RuntimeException(ex); } }