Skip to main content

Release Notes

Maven Central Version

Should I update?

We highly recommend regularly updating to the latest SAP Cloud SDK for AI version. It will help you:

  • Ensure access to the latest SAP Cloud SDK for AI features
  • Keep up with the latest changes in SAP ecosystem
  • Protect yourself from bugs and breaking changes in the future

1.10.0 - August 08, 2025

All Release Changes

🔧 Compatibility Notes

  • The Spring AI version has been increased from 1.0.0-M6 to the GA release 1.0.0.
    • The OrchestrationChatOptions have been, replacing all references to FunctionCallback with ToolCallback.
    • Please follow the official Spring AI upgrade guide for further details.
    • The @Beta annotations on all classes related to Spring AI have been removed.
  • [Orchestration] The completion endpoint have been moved to the latest version /v2/completion
    • LLMModuleConfig is replaced by LLMModelDetails in withLLmConfig method of OrchestrationModuleConfig class.
    • PromptTemplatingModuleConfigPrompt replaces TemplatingModuleConfig in the withTemplateConfig method of OrchestrationModuleConfig class.
    • The generated model classes will reflect payload updates including restructuring of the module configurations and renaming of several fields.
  • [Document Grounding] Breaking: The message field in RetrievalPerFilterSearchResultWithError is replaced by error and filterId with more specific error details.
  • [Document Grounding] Extensive generated model class renaming for better specificity due to API spec changes.
    • SearchResultsVectorSearchResults
    • KeyValueListPair split into context-specific classes:
      • VectorKeyValueListPair for vector operations
      • RetrievalKeyValueListPair for retrieval operations
      • VectorDocumentKeyValueListPair for vector document operations
      • RetrievalDocumentKeyValueListPair for retrieval document operations
    • ChunkVectorChunk and RetrievalChunk for different contexts
    • SearchFilterVectorSearchFilter and RetrievalSearchFilter
    • SearchConfigurationVectorSearchConfiguration and RetrievalSearchConfiguration

✨ New Functionality

  • [Core] Added ClientExceptionFactory interface to provide custom exception mapping logic for different service clients.
  • Extend OpenAiClientException and OrchestrationClientException to retrieve error diagnostics information received from remote service using getErrorResponse.
  • [Orchestration] Introduced filtering related exceptions along with convenience methods to obtain additional contextual information.
    • OrchestrationInputFilterException for prompt filtering and OrchestrationOutputFilterException for response filtering.
      • getFilterDetails(): Returns a map of all filter details.
      • getAzureContentSafetyInput() and getAzureContentSafetyInput() : Returns Azure Content Safety filter scores
      • getLlamaGuard38b(): Returns LlamaGuard filter scores
  • [Document Grounding] Extend PipelineApi operations, notably:
    • Added new pipeline creation requests for SDM and WorkZone with SDMPipelineCreateRequest and WorkZonePipelineCreateRequest.
    • S3 and SFTP pipeline configurations extended with S3Configuration and SFTPConfiguration for including data sources.
    • Support /pipelines/trigger endpoint to trigger pipelines on-demand via PipelinesApi#manualTriggerPipeline().

📈 Improvements

  • Update AI Core client to 2.40.1
  • [Document Grounding] Enhanced pipeline status reporting with additional metadata such as createdAt, modifiedAt, lastCompletedAt.

🐛 Fixed Issues

  • OpenAi: Fix AssistantMessage Bug by now being able to send Assistant Messages using our API Client.

1.9.0 - July 22, 2025

All Release Changes

🔧 Compatibility Notes

  • The old OpenAI client (v1.0.0) is being deprecated in favor of the new OpenAI client (v1.4.0). See the documentation for more details

  • Generated classes for the following service specifications are subject to change:

    • core
    • openai
    • orchestration
    • document grounding
  • [Orchestration] Interfaces with only one implementation were reduced.

    • As a result, the accessors for fields OrchestrationModuleConfig.inputTranslationConfig and OrchestrationModuleConfig.outputTranslationConfig now handle the implementing class explicitly.
    • The same applies to helper methods DpiMasking#createConfig() and MaskingProvider#createConfig().
  • [Orchestration] OrchestrationTemplate.withTemplate() has been deprecated. Please use OrchestrationTemplate.withTemplateMessages() instead.

  • [Orchestration] The method createConfig() is removed from ContentFilter, AzureContentFilter and LlamaGuardFilter and is replaced by createInputFilterConfig() and createOutputFilterConfig().

  • [Orchestration] Deprecated : LLAMA3_1_70B_INSTRUCT, CLAUDE_3_SONNET, TITAN_TEXT_LITE, TITAN_TEXT_EXPRESS, GPT_4, GPT_4_0613, MIXTRAL_8X7B_INSTRUCT_V01.

    • GPT_4 and GPT_4_0613 are replaced by : GPT_40or GPT_41.
    • CLAUDE_3_SONNET is replaced by CLAUDE_4_SONNET.
    • MIXTRAL_8X7B_INSTRUCT_V01 is replaced by MISTRAL_SMALL_INSTRUCT.
  • [OpenAI] Deprecated : GPT_4.

    • GPT_4is replaced by : GPT_40or GPT_41.
  • [Prompt Registry] Resource group has been added as a optional parameter to all endpoints. Set it to "default" if it was not set before. Examples:

    • client.importPromptTemplate(File) --> client.importPromptTemplate("default", File).
    • client.parsePromptTemplateById(id, false, inputParams) --> client.parsePromptTemplateById(id, "default", false, inputParams).
  • [Document Grounding] All classes with Retrieval have been renamed to fix the typo

    • for example: RetievalSearchResults has been renamed to RetrievalSearchResults
  • [Document Grounding] PipelinesApi#getAllPipelines() and PipelinesApi#getPipelineById() now any of these 3 classes implementing the GetPipeline interface:

    • MSSharePointPipelineGetResponse, S3PipelineGetResponse and SFTPPipelineGetResponse

✨ New Functionality

  • [Orchestration] Added support for transforming a JSON output into an entity
  • [Orchestration] Added AzureContentFilter#promptShield() available for input filtering.
  • [Orchestration] Added new models for OrchestrationAiModel: GEMINI_2_5_FLASH, GEMINI_2_5_PRO, ALEPHALPHA_PHARIA_1_7B_CONTROL, OPENAI_O4_MINI, CLAUDE_4_OPUS, CLAUDE_4_SONNET, OPENAI_O3.

🐛 Fixed Issues

  • [Orchestration] Resolved duplicate JSON property issue, enabling Anthropic Claude chat completions.
  • Remove logging of any request/response payloads to avoid potential exposure of sensitive data.

1.8.0 - May 26, 2025

All Release Changes

🔧 Compatibility Notes

  • The constructor of the AssistantMessage class now takes List<MessageToolCall> as input instead of List<ResponseMessageToolCall> (the generated class got renamed).

✨ New Functionality

🐛 Fixed Issues

  • [Orchestration] Fixed OrchestrationAiModel.CLAUDE_3_7_SONNET.

1.7.0 - April 30, 2025

All Release Changes

🔧 Compatibility Notes

  • [Orchestration] Deprecated OrchestrationAiModel.GEMINI_1_0_PRO. The replacements are either:
    • OrchestrationAiModel.GEMINI_2_0_FLASH
    • OrchestrationAiModel.GEMINI_2_0_FLASH_LITE.

✨ New Functionality

1.6.0 - April 03, 2025

All Release Changes

✨ New Functionality

1.5.0 - March 13, 2025

All Release Changes

✨ New Functionality

1.4.0 - February 28, 2025

All Release Changes

🔧 Compatibility Notes

  • [Orchestration] The constructors UserMessage(MessageContent) and SystemMessage(MessageContent) are removed. Use Message.user(String), Message.user(ImageItem), or Message.system(String) instead.
  • Deprecate getCustomField(String) in favor of toMap() on generated model classes.
    • com.sap.ai.sdk.core.model.*
    • com.sap.ai.sdk.orchestration.model.*

✨ New Functionality

  • [Orchestration] Add Spring AI tool calling.
  • [Orchestration] Add new convenient methods to set the response format for Orchestration.
  • [Document Grounding] Add Document Grounding Client
    • com.sap.ai.sdk:document-grounding:1.4.0
  • [OpenAI] New generated model classes introduced for AzureOpenAI specification dated 2024-10-21.
  • [OpenAI] Introducing new user interface for chat completion wrapping the generated model classes.
    • OpenAiChatCompletionRequest and OpenAiChatCompletionResponse' for high level request and response handling.
    • OpenAiUserMessage, OpenAiSystemMessage, OpenAiAssistantMessage and OpenAiToolMessage for message creation for different content types.
    • OpenAiToolChoice for configuring chat completion requests with tool selection strategy.
  • [OpenAI] Introducing new user interface for embedding calls using OpenAiEmbeddingRequest and OpenAiEmbeddingResponse.

1.3.0 - February 13, 2025

All Release Changes

🔧 Compatibility Notes

  • Message.content() returns a ContentItem now instead of a String. Use ((TextItem) Message.content().items().get(0)).text() if the corresponding ContentItem is a TextItem and the string representation is needed.

✨ New Functionality

1.2.0 - January 30, 2025

All Release Changes

🔧 Compatibility Notes

  • SingleChatMessage, as well as new MultiChatMessage, are now subtypes of new interface ChatMessage. Most variables or methods previously typed as ChatMessage in model package are now typed as SingleChatMessage.
  • Add missing @Beta annotations to all com.sap.ai.sdk.core.client and com.sap.ai.sdk.core.model classes.

✨ New Functionality

  • New Orchestration features:
    • Spring AI integration
    • Add Grounding configuration convenience
    • Images are now supported as input in newly introduced MultiChatMessage.
    • MultiChatMessage also allows for multiple content items (text or image) in one object.
    • Grounding input can be masked with DPIConfig.
    • LLama Guard can now be used for content filtering.
    • Support for tool calling and response format
    • Updated the list for supported models (e.g., added amazon nova models).

📈 Improvements

  • Update Orchestration client to version 0.48.2 (2501a)

1.1.0 - January 07, 2025

All Release Changes

🔧 Compatibility Notes

  • Changed return type of List<Double> getEmbedding() from experimental API OpenAiEmbeddingData to float[] to match recent Spring AI change.

✨ New Functionality

  • Added streamChatCompletion() and streamChatCompletionDeltas() to the OrchestrationClient.

📈 Improvements

  • Update AI Core client to 2.37.0

1.0.0 - December 03, 2024

All Release Changes

✨ New Functionality

  • Introduce AI Core client to consume the AI Core Rest APIs. Here are a few features:
    • Artifact management: register and organize datasets and model artifacts.
    • Configuration management: set up configurations for various models and use cases.
    • Deployment management: deploy AI models and manage their lifecycle within SAP AI Core.
  • Introduce Orchestration client for consuming the following features of the orchestration service:
    • Harmonized LLM access via orchestration
    • Prompt templates
    • Content filtering
    • Masking
  • Introduce the OpenAI client to consume the following features:
    • Chat completion and streaming chat completion
      • Text
      • Images
      • Tools
    • Generate embeddings for input text.
warning

All classes under any of the ...model packages are generated from an OpenAPI specification. This means that these model classes are not guaranteed to be stable and may change with future releases. They are safe to use, but may require updates even in minor releases.