diff --git a/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/anthropic/api/AnthropicChatBedrockApi.java b/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/anthropic/api/AnthropicChatBedrockApi.java index 8c800a382..cd85fb7a5 100644 --- a/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/anthropic/api/AnthropicChatBedrockApi.java +++ b/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/anthropic/api/AnthropicChatBedrockApi.java @@ -217,6 +217,7 @@ public class AnthropicChatBedrockApi extends */ @JsonInclude(Include.NON_NULL) public record AnthropicChatResponse( + @JsonProperty("type") String type, @JsonProperty("completion") String completion, @JsonProperty("stop_reason") String stopReason, @JsonProperty("stop") String stop, diff --git a/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/api/AbstractBedrockApi.java b/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/api/AbstractBedrockApi.java index 17e0eed79..24a383ada 100644 --- a/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/api/AbstractBedrockApi.java +++ b/models/spring-ai-bedrock/src/main/java/org/springframework/ai/bedrock/api/AbstractBedrockApi.java @@ -239,7 +239,7 @@ public abstract class AbstractBedrockApi { SdkBytes body; try { - body = SdkBytes.fromUtf8String(new ObjectMapper().writeValueAsString(request)); + body = SdkBytes.fromUtf8String(this.objectMapper.writeValueAsString(request)); } catch (JsonProcessingException e) { throw new IllegalArgumentException("Invalid JSON format for the input request: " + request, e); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaModelCallerIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatModelIT.java similarity index 100% rename from models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaModelCallerIT.java rename to models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatModelIT.java diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatCreateRequestTests.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelCreateRequestTests.java similarity index 91% rename from models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatCreateRequestTests.java rename to models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelCreateRequestTests.java index a921bb35a..af0522de6 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatCreateRequestTests.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelCreateRequestTests.java @@ -32,7 +32,7 @@ import static org.assertj.core.api.Assertions.assertThat; /** * @author Christian Tzolov */ -public class BedrockTitanChatCreateRequestTests { +public class BedrockTitanChatModelCreateRequestTests { private TitanChatBedrockApi api = new TitanChatBedrockApi(TitanChatModel.TITAN_TEXT_EXPRESS_V1.id(), EnvironmentVariableCredentialsProvider.create(), Region.US_EAST_1.id(), new ObjectMapper(), @@ -41,7 +41,7 @@ public class BedrockTitanChatCreateRequestTests { @Test public void createRequestWithChatOptions() { - var client = new BedrockTitanChatModel(api, + var model = new BedrockTitanChatModel(api, BedrockTitanChatOptions.builder() .withTemperature(66.6f) .withTopP(0.66f) @@ -49,7 +49,7 @@ public class BedrockTitanChatCreateRequestTests { .withStopSequences(List.of("stop1", "stop2")) .build()); - var request = client.createRequest(new Prompt("Test message content")); + var request = model.createRequest(new Prompt("Test message content")); assertThat(request.inputText()).isNotEmpty(); assertThat(request.textGenerationConfig().temperature()).isEqualTo(66.6f); @@ -57,7 +57,7 @@ public class BedrockTitanChatCreateRequestTests { assertThat(request.textGenerationConfig().maxTokenCount()).isEqualTo(666); assertThat(request.textGenerationConfig().stopSequences()).containsExactly("stop1", "stop2"); - request = client.createRequest(new Prompt("Test message content", + request = model.createRequest(new Prompt("Test message content", BedrockTitanChatOptions.builder() .withTemperature(99.9f) .withTopP(0.99f) diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanModelCalerlIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelIT.java similarity index 97% rename from models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanModelCalerlIT.java rename to models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelIT.java index 0ff7c936e..97085c2c2 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanModelCalerlIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatModelIT.java @@ -55,7 +55,7 @@ import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest @EnabledIfEnvironmentVariable(named = "AWS_ACCESS_KEY_ID", matches = ".*") @EnabledIfEnvironmentVariable(named = "AWS_SECRET_ACCESS_KEY", matches = ".*") -class BedrockTitanModelCalerlIT { +class BedrockTitanChatModelIT { @Autowired private BedrockTitanChatModel chatModel; @@ -103,7 +103,7 @@ class BedrockTitanModelCalerlIT { assertThat(response.getResult().getOutput().getContent()).contains("Blackbeard"); } - @Disabled("TODO: Fix the parser instructions to return the correct format") + // @Disabled("TODO: Fix the parser instructions to return the correct format") @Test void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); @@ -123,7 +123,7 @@ class BedrockTitanModelCalerlIT { assertThat(list).hasSize(5); } - @Disabled("TODO: Fix the parser instructions to return the correct format") + // @Disabled("TODO: Fix the parser instructions to return the correct format") @Test void mapOutputConverter() { MapOutputConverter outputConverter = new MapOutputConverter(); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/api/TitanEmbeddingBedrockApiIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/api/TitanEmbeddingBedrockApiIT.java index cffc00569..4f7813b2d 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/api/TitanEmbeddingBedrockApiIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/api/TitanEmbeddingBedrockApiIT.java @@ -63,7 +63,7 @@ public class TitanEmbeddingBedrockApiIT { TitanEmbeddingBedrockApi titanEmbedApi = new TitanEmbeddingBedrockApi( TitanEmbeddingModel.TITAN_EMBED_TEXT_V2.id(), EnvironmentVariableCredentialsProvider.create(), - Region.US_WEST_2.id(), new ObjectMapper(), Duration.ofMinutes(2)); + Region.US_EAST_1.id(), new ObjectMapper(), Duration.ofMinutes(2)); TitanEmbeddingRequest request = TitanEmbeddingRequest.builder().withInputText("I like to eat apples.").build();