github spring-projects/spring-ai v2.0.0-M7
Spring AI 2.0.0-M7

pre-release9 hours ago

⭐ New Features

  • Updated Gemini Models and Google Client Library BOM #6112
  • Sanitize Spring Boot related dependencies #6088
  • Introduce ToolSpec fluent API #6085
  • Remove CosmosDB related components from Spring AI #6080
  • Remove spring-ai-spring-cloud-bindings #6079
  • Ollama doesnt work in a graalvm native image #6043
  • Remove ChatOptions setters #6025
  • Replace usage of GEMINI_2_0_FLASH by GEMINI_2_5_FLASH #6003
  • Deprecate SSE transports, set Streamable HTTP as default server protocol #5969
  • Introduce SSE message endpoint validator in WebFluxSseClientTransport #5967
  • Reuse JsonSchemaGenerator in BeanOutputConverter #5897
  • Make ToolCallAdvisor the default tool call management option #5459
  • Add validation of vector's dimensions for PGVector #4868

🐞 Bug Fixes

  • Update tests and docs for MCP SDK 2.0.0-M3 breaking API changes #6121
  • Enforce single ToolAdvisor invariant in DefaultChatClient #6111
  • Fix ToolCallAdvisor ignoring auto-configured ToolCallingManager #6096
  • Per-call customHeaders not propagated in OpenAiImageOptions #6082
  • ChatClient#prompt ignores chat options from prompt #6072
  • Fix OpenAiChatOptions.AbstractBuilder#combineWith #6045
  • Fix OpenAI generic options merging for image, audio, embedding and moderation #6042
  • Error in Spring AI 2.0.0-M6 while using Docker Model runner #6036
  • Preserve ChatResponseMetadata during OpenAI streaming aggregation #6014
  • Google GenAI support is not available with Spring Boot 4 on start.spring.io #6005
  • RedisVectorStore#doDelete only deletes the 10 first messages #5998
  • Fix Kotlin nullable fields in MCP tool input schema #5997
  • Tool input schema marks Kotlin nullable fields as required in JsonSchemaGenerator #5978
  • Preserve OpenAI response metadata #5929
  • Tool inputSchema with recursive parameter types emits unresolvable $ref (nested $defs, root-relative $ref) #5888
  • Advisor executed after ToolCallAdvisor lacks custom observation #5882
  • OpenAiChatModel streaming drops chunks due to internal switchMap when using buffered concatMap #5120

📔 Documentation

  • Complete documentation update for OpenAI SDK base URL new behavior #6093
  • Reference document still refer to removed OpenAiApi #6075

🔨 Dependency Upgrades

  • Add spring-boot-autoconfigure-processor to the compiler #6100

❤️ Contributors

Thank you to all the contributors who worked on this release:

@ChoMinGi, @Kehrlann, @ThomasVitale, @chemicL, @ddobrin, @ericbottard, @jewoodev, @qixiangme, @quaff, @sobychacko, @stohirov, @tzolov, and @yaner-here

Don't miss a new spring-ai release

NewReleases is sending notifications on new releases.