Skip to content

Releases: spring-projects/spring-ai

Spring AI 1.1.0-M3

15 Oct 14:07
Compare
Choose a tag to compare
Spring AI 1.1.0-M3 Pre-release
Pre-release

Spring AI 1.1.0-M3 Release Notes

🎯 Highlights

Model Context Protocol (MCP) Java SDK 0.14.0 Upgrade

This release primarily focuses on upgrading to the Model Context Protocol (MCP) Java SDK version 0.14.0, bringing significant improvements to Spring AI's MCP integration capabilities. Key enhancements include:

  • Enhanced Resource Template Management: Improved resource template API consistency and management capabilities
  • Robust Error Handling: Better resilience for MCP server interactions with proper handling of non-compliant responses and edge cases
  • Spec Compliance Improvements: Proper resource not found handling and fixes for Content-Length: 0 responses
  • Client-Side Validation: New tool output schema validation and caching for improved client reliability
  • API Refinements: Better JSON type handling, consistent naming conventions, and optional lastModified field support in Annotations

These foundational improvements strengthen Spring AI's MCP implementation, providing a more reliable and feature-rich Model Context Protocol experience.

Additional Updates

This release also includes 7 new features, 11 bug fixes, 9 documentation improvements, and 16 other improvements across the Spring AI ecosystem.

⭐ New Features

  • MarkdownDocumentReader now supports processing multiple documents in a single operation 499ab3e
  • Added Azure Cosmos DB integration for chat memory persistence 1a35e8a
  • Improved error handling with fallback messages when tool execution encounters blank errors f2d57cc
  • Added support for the latest Claude models with improved naming conventions in the Anthropic integration #4516
  • Added metadata filtering capabilities to GemFireVectorStore for more precise vector search queries 78c5e00
  • Added MCP resource template support to server auto-configurations, enabling enhanced Model Context Protocol capabilities 97ac810
  • Introduced builder pattern support across the Mistral module for improved API usability b8dfc09

🪲 Bug Fixes

  • Improved tool/function calling reliability by adding a special warning when LLMs change tool names during execution #4349
  • Resolved issues with JsonSchemaGenerator when processing method input parameters, particularly for Mistral AI integration #4524
  • Corrected property access syntax in StTemplateRender for proper template rendering 0cea262
  • Corrected test configuration issues for MistralAI integration 4408c46
  • Fixed inconsistency where parameterized render(Map) failed to handle Resource in variables compared to no-arg render 0fd9fd5
  • Resolved issues with Jackson module loading by not using the Thread Context ClassLoader #4515 via #2921
  • Enhanced robustness of mergeToolUseEvents in StreamHelper and fixed handling of thinkingBlock.signature in event-to-response conversion 9907b2c
  • Removed unused member variables to improve code maintainability #4489
  • Fixed Ollama auto-configuration issues to ensure proper initialization b915413
  • Resolved an issue in the OllamaApiHelper component 5d8907f
  • Cleaned up the initializeContainer method by removing redundant parameters and assignments 84efb6a

📓 Documentation

  • Added comprehensive security reference documentation for Model Context Protocol integration #4532
  • Updated documentation to include Z.ai international site information and GLM-4.6 model support #4539
  • Updated documentation to reflect Spring Boot 3.5 release availability #4530
  • Improved documentation formatting by using inline literals 54f5127
  • Added documentation for metadata filtering capabilities in GemFireVectorStore d83c826
  • Corrected typo in ollama-embeddings.adoc documentation 9555a61
  • Corrected example code error in ChatMemory documentation for CassandraChatMemoryRepository #4476
  • Fixed example code errors in multimodality documentation #4475
  • Fixed incorrect class reference in MCP-related documentation #4466

🔨 Dependency Upgrades

Model Context Protocol (MCP) Java SDK 0.14.0

Primary motivation for this release - Upgraded to MCP Java SDK 0.14.0 and mcp-annotations to 0.5.1 #4531

This major upgrade brings critical improvements to Spring AI's MCP integration:

  • Resource Template Management: Refactored resource template API for better consistency and usability
  • Error Resilience: Enhanced server error handling with proper management of non-compliant notification responses and Content-Length: 0 scenarios
  • Spec Compliance: Proper resource not found handling according to MCP specification
  • Client Validation: Added tool output schema validation and caching capabilities
  • JSON Handling: Fixed JsonTypeInfo.DEDUCTION to avoid unnecessary includes
  • API Consistency: Corrected MCP_SESSION_ID naming convention for consistent identifier style
  • Annotations Enhancement: Added optional lastModified field to Annotations record

For complete details, see the MCP Java SDK 0.14.0 release notes.

Other Dependency Updates

  • Upgraded Apache Tika to 3.2.3 from 3.2.1 and jsoup to 1.21.2 from 1.21.1, resolving CVE-2025-54988 #4504
  • Upgraded the Couchbase client SDK to a newer version 351fbbb

🔩 Build Updates

  • Improved test coverage for KnuddelsRuntimeHints d0c9e86
  • Migrated to AssertJ's assertThatExceptionOfType for better test readability #4544
  • Fixed indentation for environment variables and added tracing to git checkout operations 0f436b4
  • Improved logging consistency with type-assured parameter binding 17c8e9e
  • Expanded test coverage for Milvus vector database integration d016b10
  • Improved test coverage for MCP tool callback builder functionality 46b9170
  • Improved test coverage for Mistral AI bindings properties processor #4483
  • Added autoconfigure-mcp-server-common to Bill of Materials for improved dependency management f907196
  • Refactored McpToolUtils to use builder pattern instead of deprecated constructors 8a2d86b
  • Improved test coverage for MultiQueryExpander, StreamHelper, and Query classes #4473
  • Added missing operator and edge case tests for AzureAiSearchFilterExpressionConverter #4467
  • Added comprehensive null safety and configuration tests for Azure OpenAI embeddings and Google GenAI runtime hints #4456

🔐 Security

  • Resolved security vulnerability CVE-2025-54988 through dependency upgrades of Tika and jsoup #4504

🙏 Contributors

Thanks to all contributors who made this release possible:

Read more

Spring AI 1.0.3

01 Oct 18:20
Compare
Choose a tag to compare

Spring AI 1.0.3 Release Notes

🎯 Highlights

This release includes 4 new features, 14 bug fixes, 6 documentation improvements, 3 other improvements.

⭐ New Features

  • GemFireVectorStore now supports metadata filtering queries, enabling more precise vector search operations. 833a856
  • Enhanced AWS Bedrock integration with new BedrockChatOptions for improved configuration management and chat model options 8660473
  • Initial implementation of ahead-of-time compilation improvements for better GraalVM native image support a964887
  • OpenAiApi can now be injected as a Spring bean, enabling easier customization and testing ee51d44

🪲 Bug Fixes

  • Resolved issues with JSON schema generation for method input parameters in Mistral integration. #4524
  • Improved error handling by providing fallback messages when tool execution errors are blank. a0a38de
  • Enhanced robustness of mergeToolUseEvents method and fixed handling of thinkingBlock.signature() in eventToChatCompletionResponse, improving streaming event reliability. 6ced885
  • Resolved inconsistency in PromptTemplate.render(Map) where Resource variables were not handled correctly compared to no-arg render. 36516e0
  • Corrected class loading mechanism for Jackson modules to avoid using Thread Context ClassLoader, improving reliability in certain deployment scenarios. 9d9d539
  • Improved type safety and consistency in logger parameter binding. d075519
  • Code quality improvement for document handling. 5bac155
  • Corrected usage of BedrockChatOptions in the Bedrock proxy chat model implementation 06079b2
  • Fixed toolAnnotationWeatherForecastStreaming integration test for Bedrock Nova chat client a110c8b
  • Resolved issue GH-4414 in OllamaApiHelper implementation 71dee41
  • Enhanced configuration metadata generation for better IDE auto-completion support 76ca66d
  • Resolved index out-of-range exceptions that occurred during tool call merging in OpenAI integration a12f0ca
  • Updated test annotations to use the current @MockitoSpyBean annotation instead of the expired @SpyBean 65b4ead
  • Enhanced code clarity by improving method parameter names in the ChatClient builder API #3856

📓 Documentation

  • Corrected documentation typo in ollama-embeddings.adoc. cdf5643
  • Added documentation for metadata filtering capabilities in GemFireVectorStore. bc5411a
  • Corrected example code in ChatMemory documentation for CassandraChatMemoryRepository #4476
  • Fixed example code errors in multimodality documentation #4475
  • Corrected documentation showing the proper property prefix as spring.ai.oci.genai.cohere.chat #4437
  • Updated DeepSeekChatModel initialization examples to demonstrate proper builder pattern usage #4421

⚡ Performance

  • Improved performance of float list to primitive array conversion in embedding utilities 8e16f9d

🔩 Build Updates

  • Simplified initializeContainer method by removing redundant parameters and meaningless reassignments f4a2aa9
  • Refactored code to use Optional chaining for cleaner assistant message extraction 4a4808d

🙏 Contributors

Thanks to all contributors who made this release possible:

Spring AI 1.1.0-M2

22 Sep 21:28
Compare
Choose a tag to compare
Spring AI 1.1.0-M2 Pre-release
Pre-release

Spring AI 1.1.0-M2 Release Notes

🎯 Highlights

This release includes 16 new features, 12 bug fixes, 6 documentation improvements, 22 other improvements.

⭐ New Features

  • Added support for response schema validation in VertexAI Gemini Chat Model for structured output generation 31423e9
  • New integration with Mistral AI's OCR (Optical Character Recognition) API for document and image text extraction 0c1a089
  • Added comprehensive hardware, memory, performance and execution options for Ollama embedding models eba2cec
  • Added Testcontainers service connection support for docker/mcp-gateway to improve testing capabilities 4d0206b
  • Added Google GenAI artifact entries to Spring AI Bill of Materials for improved dependency management ae59953
  • Added support for thinking and response_format parameters to the ZhipuAI chat model integration, enhancing the model's capabilities and output formatting options cae6364
  • Added Docker Compose service connection support for MCP Gateway, improving containerized deployment capabilities 60a27a8
  • Added support for new ZhiPu models GLM-4.5 and GLM-Z1 5f984fb
  • Added 'enable' property for Bedrock Cohere chat configuration 9442c35
  • Added requestMetadata support to Bedrock converse requests for enhanced request tracking 45baa39
  • Aligned EmbeddingOptions builder pattern with ChatOptions for consistent API experience 14d6f58
  • Added builder pattern support for AssistantMessage creation f4a1c96
  • Added support for the new glm-4.1v-thinking-flash model in the ZhipuAI integration 49506de
  • Made OpenAI API available as a bean for injection, enabling easier integration and customization f41c27d
  • Implemented cache management for Anthropic API with eligibility tracking for improved performance and resource optimization 1d5ab9b
  • Added extended token usage metadata and Cached Content API support to Google GenAI (Gemini) for enhanced performance monitoring and content caching capabilities 6cf3b4b

🪲 Bug Fixes

  • Fixed issues with stateless Model Context Protocol (MCP) server registration to ensure proper connection handling 1b3705f
  • Replaced expired @SpyBean annotation with @MockitoSpyBean for improved testing compatibility #3446
  • Prevented out-of-range errors when merging tool calls in the OpenAI integration 6697589
  • Optimized EmbeddingUtils.toPrimitive(List) method for better performance d1133dc
  • Improved method parameter naming in ChatClient.Builder.defaultAdvisors() for better developer experience #3856
  • Fixed handling of default implementation for ToolCallback#call(String,ToolContext) method to improve tool integration reliability 3e17e16
  • Fixed Ollama to properly use system role for system messages instead of user role #4364
  • Corrected wrong checkstyle automated changes that were improperly applied f3aab2f
  • Refactored OllamaChatModel to support custom AbstractMessage implementations and align with other ChatModel implementations 8968df7
  • Fixed DeepSeekChatModel initialization to use builder pattern for consistent API design cb4f356
  • Improved configuration metadata generation for IDE auto-completion support b5a37b6
  • Fixed VertexAI Gemini chat model tool calling integration test for inferred OpenAPI schema streaming 3c57027

📓 Documentation

  • Fixed documentation for ChatClient responseEntity() method to provide accurate usage examples and guidance #4386
  • Fixed and improved ZhipuAI chat model documentation in zhipuai-chat.adoc #4387
  • Updated tests and documentation to use DockerModelRunnerContainer for improved container-based testing guidance c7b7d69
  • Improved MCP (Model Context Protocol) documentation and added comprehensive getting started guide 07688d5
  • Updated MCP reference documentation with minor improvements and clarifications e776129
  • Fixed OCI Cohere documentation property prefix to spring.ai.oci.genai.cohere.chat ce09cb5

🔨 Dependency Upgrades

  • Updated Model Context Protocol (MCP) related dependencies to latest versions #4415
  • Upgraded Spring Boot framework dependency to version 3.5.6 for latest features and security updates 820cc79
  • Updated to Spring Boot 3.5.5 for latest features and security improvements #4408
  • Updated Google GenAI dependencies to their latest versions for improved functionality #4398
  • Updated MCP from version 0.12.1 to 0.13.0-SNAPSHOT #4403
  • Changed HSQLDB dependency scope from runtime to test for chat memory JDBC autoconfiguration #4366
  • Updated MCP SDK to version 0.13.1 and mcp-annotations to 0.4.1 for latest features and improvements 0c8b6dc

⚡ Performance

  • Optimized performance by using AssistantMessage#builder() pattern instead of direct instantiation, reducing object creation overhead 1decd34
  • Refactored request creation logic for Mistral AI chat model to improve efficiency and maintainability f9d87fd
  • Simplified assistant message extraction using Optional chaining for cleaner code 356fced
  • Optimized ZhiPu Embedding to support batch embedding operations for improved performance b7f231a

🔩 Build Updates

  • Separated OllamaOptions into distinct Chat and Embedding Options classes for better modularity f908aa1
  • Added comprehensive edge case and boundary testing for Google Generative AI components to improve reliability 63ba02a
  • Enhanced MCP tool name prefix generation with automatic duplicate handling for better tool management 31db86d
  • Defined explicit version for maven-gpg-plugin to improve build reproducibility #4320
  • Added comprehensive test coverage for runtime hints and bindings processors #4402
  • Added comprehensive edge case tests for ChatModel, ListOutputConverter, and ToolExecutionResult components to improve code reliability...
Read more

Spring AI 1.0.2

17 Sep 14:03
Compare
Choose a tag to compare

Spring AI 1.0.2 Release Notes

🎯 Highlights

This release includes 9 new features, 31 bug fixes, 13 documentation improvements, 4 dependency upgrades, 4 performance improvements, and 15 build updates.

📢 Noteworthy

  • Removed deprecated Mistral AI Codestral Mamba model support as part of code cleanup efforts #4225
  • Changed UserMessage to use metadata property instead of properties for better consistency across the API #3980

⭐ New Features

  • Added 'enable' configuration properties for Amazon Bedrock Cohere chat functionality 779b304
  • Improved Unicode property union support for better Chinese character handling in text processing 35df129
  • Added mutual exclusivity validation between maxTokens and maxCompletionTokens parameters to prevent configuration conflicts 5496a8c
  • Added support for GPT-5 models from OpenAI, expanding the available model options for Spring AI applications 977dbf2
  • Added comprehensive debugging capabilities to maintenance workflow to improve troubleshooting and monitoring 51086f8
  • Added GPT-5 model enum support with updated documentation to enable integration with OpenAI's latest model 9908073
  • Implemented fast CI build support for maintenance branch cherry-picks to improve development workflow efficiency 22efc03
  • Enables proper JSON schema generation for Kotlin data classes and objects in BeanOutputConverter #3900
  • MariaDB Vector Store similarity searches now provide scores for better result ranking 3d72e93

🪲 Bug Fixes

  • Fixed tokenizer to properly use Base64 encoding for binary data token estimation c60d942
  • Corrected function name in VertexAI Gemini streaming test to resolve test failures 407e4cb
  • Resolved issues with default implementation of ToolCallback#call(String,ToolContext) method 76708a1
  • Properly handle null or empty tool call arguments during streaming operations 8d0caf4
  • Cleaned up incorrect BedrockChatOptions configuration that was causing issues 5ecbfab
  • Fixed issue with merging tool calling chat options in AWS Bedrock converse chat model #4314
  • Resolved message reordering issues in Azure OpenAI chat model implementation 618c451
  • Fixed various integration test failures for Anthropic function calling functionality 3f97d9e
  • Corrected stream function call usage test failures in Azure OpenAI integration ec84f2a
  • Fixed chat completion stream error handling in Anthropic API integration tests 38afc12
  • Replaced SimpleDateFormat with thread-safe DateTimeFormatter to prevent potential concurrency issues 370efa7
  • Removed duplicate lines in AzureOpenAiChatOptions configuration class 5477f47
  • Resolved a StackOverflowError that was introduced by the MongoDbAtlasLocalContainerConnectionDetails.getSslBundle() method 03d475e
  • Corrected NPE that occurred when metadata is null in MilvusVectorStore operations 7437192
  • Fixed incorrect handling of merge operations when the 'current' value is null 4daffa3
  • Fixed metadata handling in Azure Vector Store to allow proper mutation of metadata objects 2a7321f
  • Resolved flaky test that was causing intermittent failures in streaming response aggregation f71f9de
  • Corrected handling of empty string values in OpenAI streaming finish_reason field 90a88ec
  • Resolved git state detection problems that were triggering full project builds when they weren't needed 779e2f9
  • Updated logging output to accurately reflect the actual git strategy being used e8c75e4
  • Fixed branch detection to prioritize maintenance branch identification over explicit base_ref 7ad9a16
  • Fixed retry mechanism for ResourceAccessException when encountering network connectivity errors to improve application resilience #4094
  • Enhanced null safety by using Optional to check null values and prevent NPE occurrences across multiple components #4063 and #4064
  • Implemented fail-fast fallback and single-commit git diff strategy to improve error handling and performance 118c0ab
  • Maintains consistent pass check behavior for FactCheckingEvaluator and RelevancyEvaluator while preventing null pointer exceptions #3975
  • Fixes Azure chat completions by adding support for the strict option in JSON schema response format #3931
  • Eliminates unnecessary deserialization step when parsing model responses that are already JSON strings #4003
  • Properly rethrows ToolExecutionException for non-RuntimeException cases to maintain correct error propagation #3915
  • Tool function exceptions are now wrapped in ToolExecutionException and properly rethrown for better error handling and debugging cc11b01
  • Corrected bug in example code that was causing confusion for developers following the documentation #3993
  • Fixed issues preventing proper publication of artifacts to Maven Central repository 808f7da

📓 Documentation

  • Enhanced Mistral AI javadoc and updated documentation links for better developer experience #4327
  • Updated tools.adoc documentation with improved examples and clarifications #4278
  • Enhanced docker services documentation with better setup instructions and examples 0649db5
  • Added more detailed explanations and examples in observability documentation for better understanding of metrics configuration 6f61562
  • Added thorough validation and functionality tests for the Document class to improve code reliability 5c2ab36
  • Synchronized documentation improvements for deploy docs dispatcher naming to the 1.0.x branch f11a516
  • Added new Anthropic model names to documentation to reflect latest available models and improve developer guidance #4077
  • Improved documentation for chat memory functionality with updated examples and usage patterns #3917
  • Corrected and updated various outdated information a...
Read more

Spring AI 1.1.0-M1

09 Sep 00:03
Compare
Choose a tag to compare
Spring AI 1.1.0-M1 Pre-release
Pre-release

Spring AI Next Release Release Notes

🎯 Highlights

This release includes 47 new features, 106 bug fixes, 70 documentation improvements, 120 other improvements.

⏪ Breaking Changes

  • Auto-configuration classes for Model Context Protocol (MCP) have been renamed with 'Mcp' prefix for consistency 21c4283
  • maxTokens and maxCompletionTokens parameters are now mutually exclusive in OpenAI ChatOptions, requiring users to choose one option 13c39f1
  • Changed UserMessage to use metadata instead of properties for better API consistency #3980
  • Extracted VectorStoreRetriever interface from VectorStore which may require code updates for custom implementations #3827 via #1290

⚠️ Upgrading Notes

  • Update imports for MCP auto-configuration classes that have been renamed with 'Mcp' prefix 21c4283
  • When configuring OpenAI ChatOptions, ensure you use either maxTokens or maxCompletionTokens, but not both simultaneously 13c39f1
  • Update code to use metadata instead of properties when working with UserMessage objects #3980
  • Custom VectorStore implementations may need to be updated to implement the new VectorStoreRetriever interface #3827

📢 Noteworthy

  • Removed support for the deprecated Mistral AI Codestral Mamba model as part of code cleanup #4225
  • Significantly improved test coverage for MistralAiBindingsPropertiesProcessor to ensure robust MistralAI integration #4165
  • Improved test coverage for EmbeddingModelObservationContext and SyncMcpToolCallback edge cases to ensure better reliability #4157
  • Significantly improved test coverage for QdrantObjectFactory.toObjectMap, SimpleVectorStore filter conditions, and various other components #4095
  • Removed hardcoded topK value in BedrockConverseProxyChatProperties for better configuration flexibility #3621
  • Refactored MessageAggregator to properly handle and include tool calls in message aggregation df90b9c
  • Cleaned up QdrantVectorStoreIT by removing unnecessary environment variable validation #3615
  • Temporarily reverted a fix for OpenAI function callback integration test 3bce15a
  • Temporarily reverted a parameter order fix in validateToolContextSupport method f0c128c
  • Temporarily reverted changes to resolve OpenAI API key for every request due to compatibility issues 313aae0

⭐ New Features

  • Tool callbacks now expose the original tool name in both synchronous and asynchronous operations, providing better visibility into tool execution 6678035
  • Added support for sending labels with chat requests in Google Generative AI integration 1dd686b
  • Added comprehensive annotation-based configuration support for Model Context Protocol (MCP) clients and servers 534c6af
  • Added support for OpenAI service_tier parameter in OpenAiChatOptions to enable control over service quality levels ad2e1bc
  • Refactored MCP (Model Control Protocol) server auto-configuration to use consolidated modules with protocol-based configuration approach e71da4e
  • Added missing Spring Boot starters for Google GenAI integration, enabling easier autoconfiguration 528155a
  • Improved Unicode property union handling for robust Chinese character processing 35486e9
  • Use latest CI scripts when testing old commits for improved testing reliability a9f93b0
  • Restructured MCP server auto-configurations and added streamable-http support for improved streaming capabilities 0b96f4c
  • Added support for new GPT-5 models with verbosity parameter configuration #4086
  • Added comprehensive debugging capabilities to improve maintenance branch workflow reliability and troubleshooting 3ce6d38
  • Added support for fast CI builds when cherry-picking changes to maintenance branches 29ac7d9
  • Added autoconfiguration for MCP client with support for async HTTP request customization 7ad7150
  • Configured McpSyncServer to use immediate execution when running in a servlet context 568ca96
  • Added support for GPT-5 model enum with updated documentation 1a3ed95
  • Added KotlinModule support and tests for schema generation in BeanOutputConverter to improve Kotlin integration #3900
  • ChatClient now supports adding metadata to both PromptUserSpec and PromptSystemSpec, enabling richer message context and processing capabilities #3989
  • Added Google GenAI embedding module with unified SDK support for enhanced integration capabilities 085446c
  • Added ability to use custom templates with KeywordMetadataEnricher for enhanced metadata enrichment capabilities c122fe1
  • Added new spring-ai-google-genai module using Google's latest GenAI SDK for improved Google AI model integration daf1274
  • Added log probabilities support for Vertex AI Gemini models e557081
  • Added streamable HTTP transport support for Model Context Protocol (MCP) client 656395e
  • Added BedrockChatOptions to Bedrock integration for improved configuration 99e59a2
  • Introduces a standardized interface for audio transcription across different model providers 4cf2377
  • Enhances ZhiPu AI integration with fluent builder pattern for easier configuration d865c9e
  • ZhiPuAI embedding model now supports configurable custom dimensions #3668 via #1857
  • Added configuration option for meta field prefix in Weaviate vector store properties #3585
  • Improved function capabilities through @tool annotation improvements for better function calling integration 22fc730
  • Enhanced MistralChatOptions with updated configuration capabilities a2a92bb
  • Added selective exception rethrowing capability to DefaultToolExecutionExceptionProcessor for better error handling control beb1d05
  • ChatClient#mutate now creates copies of advisors and advisorParams instead of referencing the originals f391ff2
  • Made the content field configurable in Weaviate vector store properties to provide more flexibility in vector store configurat...
Read more

Spring AI 1.0.1

08 Aug 19:32
Compare
Choose a tag to compare

Spring AI 1.0.1 Release Notes

🎯 Highlights

This release includes 24 new features, 50 bug fixes, 45 documentation improvements, 32 other improvements.

📢 Noteworthy

  • Official release of Spring AI version 1.0.1 with consolidated bug fixes and documentation improvements 53ec007
  • Multiple commits were reverted related to tool context validation fixes and OpenAI chat client method invoking function callback integration tests 80ffb4c
  • Temporarily reverted the change that resolved OpenAI ApiKey for every request, indicating potential issues that required investigation 8a2706d

⭐ New Features

  • Enhanced KeywordMetadataEnricher with custom template functionality to provide more flexible metadata enrichment capabilities 2082a59
  • Added validation to check documents for text/media content when adding to vector stores #3687
  • Improved @tool annotation functionality to enhance function calling capabilities 62160d3
  • Added support for streaming tool calls without parameters in the Anthropic chat model 2099278
  • Updated and improved configuration options for Mistral chat model integration c18a241
  • Added capability to selectively rethrow exceptions in the default tool execution exception processor d1baefb
  • Refactored MessageAggregator to include support for tool calls functionality 1805ca0
  • The ChatClient#mutate method now creates copies of advisors and advisorParams instead of sharing references, improving isolation between chat client instances ccfaaf1
  • Added equals, hashCode, deep copy functionality and comprehensive tests to MiniMaxChatOptions for better object handling and comparison dc9ea17
  • Added support for new Mistral AI chat models to expand the available model providers #3523
  • Enhanced OllamaChatModel with retry template integration for improved reliability f89530c
  • Added streaming thinking events support for Anthropic model provider to enhance real-time interaction capabilities 379901b
  • Enhanced OpenAI integration with updated supported voice enumerations for text-to-speech and chat completion audio features #3411
  • Added support for dynamic API key configuration for Anthropic model provider on a per-request basis ae9284c
  • Neo4j vector store now automatically determines default embedding dimensions based on the configured model 96c45c7
  • Added Spring Framework 7.x compatibility to RetryUtils#ResponseErrorHandler to support upcoming Spring Framework versions 5ecfcce
  • Enhanced OpenAI client to resolve API key for every request, improving key rotation and configuration flexibility dd6c0a9
  • Introduced support for Anthropic's latest Claude models including claude-opus-4 and claude-sonnet-4 #3351
  • Extended OpenAI integration to support PDF files as media input a330458
  • Provided MySQL database schema for SPRING_AI_CHAT_MEMORY table to support chat memory functionality 148bf33
  • Improved handling and testing of complex metadata values in Chroma vector store integration aba837a
  • Added metadata support for vector store types to enhance data management capabilities #3325
  • Added support for configurable exception handling when executing tools, providing better error management and recovery options 3068c04
  • Added comprehensive integration tests for Chat Memory functionality with SQL Server support a6858cf

🪲 Bug Fixes

  • Resolved issue where method tool calls would throw errors when methods had the same name #2774
  • Fixed typo in frequencyPenalty property name for Google model builders 2e579b1
  • Corrected spelling of PromptTemplate in structured output API documentation image #3304
  • Resolved null pointer exception in Anthropic API streaming functionality #3755
  • Fixed issue where SystemPromptTemplate.builder() incorrectly returned PromptTemplate builder 2f91adb
  • Corrected parameter sequence in JSON schema generation functionality f20eeea
  • Resolved annotation packaging issues #3716
  • Resolved issue where audio filenames were lost when requesting OpenAI /transcriptions and /translations interfaces c0c7f3a
  • Enhanced schema initialization logic and updated deprecated code for Milvus vector store #3705
  • Added null checks, optimized string joining, and improved JavaDocs #3663
  • Corrected assertion message in SimpleApiKey implementation for better debugging #3656
  • Prevented streaming tool calling responses when internal execution is enabled for Anthropic models 5d8a930
  • Cleaned up unused configuration options from ZhiPu AI model implementation #3669
  • Added support for custom dimensions in ZhiPu AI embedding models #3668
  • Removed incorrect @nullable annotation from VectorStore similaritySearch methods #3613
  • Added validation for invalid page numbers in outline items for getTextBetweenParagraphs method 50e8615
  • Corrected issues with Ollama autoconfiguration that were preventing proper setup #3645
  • Fixed naming inconsistencies throughout the Mistral integration package #3652
  • Resolved issue where streaming tool calls without input arguments would fail in Bedrock integration d1dac6c
  • Fixed hardcoded configuration parameter to allow proper customization of topK values in Bedrock Converse Proxy #3621
  • Prevents incorrect ToolCall merging in DeepSeek model provider when tool calls have empty id and name strings ff5855d
  • Resolves test failure in ChromaVectorStoreAutoConfigurationIT due to updated exception message handling 7200580
  • Resolved exception occurring in OpenAiAudioTranscriptionResponseMetadata.toString method #3575
  • Corrected infinite recursion issue in getMimeType(Path) method b6b069c
  • Improved root exception handling in McpToolCallback to prevent unhandled errors fb1746b
  • Corrected logging behavior when creating ChromaDB collections [e0d3703](https://github.com/spring-projects/spring-...
Read more