spring.ai.bedrock.converse.chat.options.model=amazon.nova-lite-v1:0 spring.ai.bedrock.converse.chat.enabled=true

hi - just noticed the properties above dont autocomplete in application.properties in intellij which makes me think that either we forgot to add the configuration processor to that jar or we're not using @ConfigurationProperties for those properties and the processor doesn't have anything to pick up and add to the index that intellij uses

Comment From: sunyuhan1998

Actually, the reason causing this issue is that the options property of BedrockConverseProxyChatProperties is defined as an interface rather than a concrete implementation class:

https://github.com/spring-projects/spring-ai/blob/81076126482aef6815482c08b5be4e4b0c083ded/auto-configurations/models/spring-ai-autoconfigure-model-bedrock-ai/src/main/java/org/springframework/ai/model/bedrock/converse/autoconfigure/BedrockConverseProxyChatProperties.java#L30-L51

ToolCallingChatOptions uses the DefaultToolCallingChatOptions implementation by default.

Can we directly change the type of the options property in BedrockConverseProxyChatProperties to DefaultToolCallingChatOptions? This might potentially cause some unexpected side effects.

Another approach is to truly create a dedicated BedrockChatOptions class for Bedrock, just like we've done for other models. So far, the content of this BedrockChatOptions class would be exactly the same as DefaultToolCallingChatOptions.

@ilayaperumalg @ThomasVitale What do you think? Please share your opinions and suggestions. If possible, I'd like to contribute a PR for this, thx!

Comment From: ilayaperumalg

@sunyuhan1998 Thanks for the analysis and suggestions. I would suggest to go with creating a dedicated BedrockChatOptions as this approach is similar to what we have in other models. Let us know if you would like to contribute a PR. Thanks!

Comment From: sunyuhan1998

@sunyuhan1998 Thanks for the analysis and suggestions. I would suggest to go with creating a dedicated BedrockChatOptions as this approach is similar to what we have in other models. Let us know if you would like to contribute a PR. Thanks!

No problem. I will submit a PR soon, aiming to create a BedrockChatOptions for Bedrock. Since it currently uses DefaultToolCallingChatOptions, I believe most of the behavior of BedrockChatOptions should be similar to DefaultToolCallingChatOptions. Once I submit the PR, I'll ask for your help to review it here!