-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Open
Description
Bug description
Exception in thread "pool-18-thread-1" java.lang.NoSuchMethodError: 'software.amazon.awssdk.services.bedrockruntime.model.ConverseRequest$Builder software.amazon.awssdk.services.bedrockruntime.model.ConverseRequest$Builder.requestMetadata(java.util.Map)'
at org.springframework.ai.bedrock.converse.BedrockProxyChatModel.createRequest(BedrockProxyChatModel.java:536)
at org.springframework.ai.bedrock.converse.BedrockProxyChatModel.internalCall(BedrockProxyChatModel.java:226)
at org.springframework.ai.bedrock.converse.BedrockProxyChatModel.call(BedrockProxyChatModel.java:221)
at org.springframework.ai.chat.client.advisor.ChatModelCallAdvisor.adviseCall(ChatModelCallAdvisor.java:56)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.lambda$nextCall$1(DefaultAroundAdvisorChain.java:114)
at io.micrometer.observation.Observation.observe(Observation.java:564)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.nextCall(DefaultAroundAdvisorChain.java:113)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.lambda$doGetObservableChatClientResponse$1(DefaultChatClient.java:539)
at io.micrometer.observation.Observation.observe(Observation.java:564)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.doGetObservableChatClientResponse(DefaultChatClient.java:537)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.content(DefaultChatClient.java:517)
at org.springframework.ai.rag.preretrieval.query.transformation.CompressionQueryTransformer.transform(CompressionQueryTransformer.java:87)
at org.springframework.ai.rag.preretrieval.query.transformation.QueryTransformer.apply(QueryTransformer.java:41)
at org.springframework.ai.rag.advisor.RetrievalAugmentationAdvisor.before(RetrievalAugmentationAdvisor.java:120)
at org.springframework.ai.chat.client.advisor.api.BaseAdvisor.adviseCall(BaseAdvisor.java:51)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.lambda$nextCall$1(DefaultAroundAdvisorChain.java:114)
at io.micrometer.observation.Observation.observe(Observation.java:564)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.nextCall(DefaultAroundAdvisorChain.java:113)
at org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor.adviseCall(SimpleLoggerAdvisor.java:74)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.lambda$nextCall$1(DefaultAroundAdvisorChain.java:114)
at io.micrometer.observation.Observation.observe(Observation.java:564)
at org.springframework.ai.chat.client.advisor.DefaultAroundAdvisorChain.nextCall(DefaultAroundAdvisorChain.java:113)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.lambda$doGetObservableChatClientResponse$1(DefaultChatClient.java:539)
at io.micrometer.observation.Observation.observe(Observation.java:564)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.doGetObservableChatClientResponse(DefaultChatClient.java:537)
at org.springframework.ai.chat.client.DefaultChatClient$DefaultCallResponseSpec.chatResponse(DefaultChatClient.java:511)
Environment
Spring AI version: 1.1.1
Java version: 21
Vector Store: PGVector
Model: Amazon Bedrock Converse API, with Anthropic Sonnet 4
Steps to reproduce
Bumping up the version of spring-ai-bom, from 1.0.1 to 1.1.1, the error above is get from the code below.
advisor = RetrievalAugmentationAdvisor.builder()
.queryTransformers(
CompressionQueryTransformer.builder()
.chatClientBuilder(chatClient.mutate())
.build())
.documentRetriever(VectorStoreDocumentRetriever.builder()
.vectorStore(vectorStore)
.similarityThreshold(0.50)
.topK(8)
.build())
.documentJoiner(RagJoinerProvider.createJoinerWithFormatter())
.queryAugmenter(ContextualQueryAugmenter.builder()
.allowEmptyContext(false)
.build())
.build();
var promptBuilder = chatClient.prompt()
.advisors(advisor, new SimpleLoggerAdvisor())
.messages(messages);
if (StringUtils.hasText(filterExpression)) {
promptBuilder.advisors(a -> a.param(VectorStoreDocumentRetriever.FILTER_EXPRESSION, filterExpression));
}
ChatResponse chatResponse = promptBuilder.call().chatResponse(); // <- error occurs hereExpected behavior
A clear and concise description of what you expected to happen.
Minimal Complete Reproducible example
Please provide a failing test or a minimal complete verifiable example that reproduces the issue.
Bug reports that are reproducible will take priority in resolution over reports that are not reproducible.