Releases: SAP/ai-sdk-java
Release 1.13.0
1.13.0 - October 30, 2025
✨ New Functionality
- [Orchestration] Introduced Spring AI integration for embeddings generation with the new
OrchestrationSpringAiEmbeddingModelclass.
📈 Improvements
- [Core] If the AI Core credentials used are missing an explicit
credential-typebutclientidandclientsecretare present then"credential-type": "binding-secret"is inferred automatically. - [Core] Log message about "service key in environment variable" to
INFOlevel only once.
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.13.0
Release 1.12.0
What's Changed
🔧 Compatibility Notes
- Breaking change:
CompletionPostRequestis now an interface instead of a class.
For all previous use-cases, it should be substitutable with the new classCompletionRequestConfiguration.OrchestrationClient.toCompletionPostRequest()now returnsCompletionRequestConfiguration.OrchestrationClient.streamChatCompletionDeltas()takesCompletionRequestConfigurationas an input now.
- Two fields in
OrchestrationModuleConfigchanged:inputTranslationConfigis now of typeSAPDocumentTranslationInputoutputTranslationConfigis now of typeSAPDocumentTranslationOutput
- When using
OrchestrationModuleConfig.withInputTranslationConfig()andOrchestrationModuleConfig.withOutputTranslationConfig()consider the following diff (note, especially, that setting.applyTo()to eithernullor to an actual value is necessary):var config = new OrchestrationModuleConfig("some prompt"); config .withInputTranslationConfig( - SAPDocumentTranslation.create() - .type(SAP_DOCUMENT_TRANSLATION) - .config(SAPDocumentTranslationConfig.create().targetLanguage("en-US"))) + SAPDocumentTranslationInput.create() + .type(SAPDocumentTranslationInput.TypeEnum.SAP_DOCUMENT_TRANSLATION) + .config( + SAPDocumentTranslationInputConfig.create() + .targetLanguage("en-US") + .applyTo(null))) .withOutputTranslationConfig( - SAPDocumentTranslation.create() - .type(SAP_DOCUMENT_TRANSLATION) + SAPDocumentTranslationOutput.create() + .type(SAPDocumentTranslationOutput.TypeEnum.SAP_DOCUMENT_TRANSLATION) .config( - SAPDocumentTranslationConfig.create() - .targetLanguage("de-DE") + SAPDocumentTranslationOutputConfig.create() + .targetLanguage( + SAPDocumentTranslationOutputTargetLanguage.create("de-DE")) .sourceLanguage("en-US")));
- [Orchestration] Deprecated models
OrchestrationAiModel.CLAUDE_3_OPUSandOrchestrationAiModel.CLAUDE_3_5_SONNET.- Replacement are respectively
OrchestrationAiModel.CLAUDE_4_OPUSandOrchestrationAiModel.CLAUDE_4_SONNET.
- Replacement are respectively
- Inner record classes and their creator methods in model interfaces are renamed to be more descriptive and type-specific.
- eg:
InnerString->ListOfStrings,create()->createListOfStrings()
- eg:
✨ New Functionality
- [Orchestration] For streaming, add convenience configuration for output-filter-overlap, chunk-size, and delimiters via
OrchestrationModuleConfig#withStreamConfig. - [Orchestration] Added embedding generation support with new
OrchestrationClient#embed()methods.- Added
OrchestrationEmbeddingModelwithTEXT_EMBEDDING_3_SMALL,TEXT_EMBEDDING_3_LARGE,AMAZON_TITAN_EMBED_TEXTandNVIDIA_LLAMA_32_NV_EMBEDQA_1Bembedding models. - Introduced
OrchestrationEmbeddingRequestfor building requests fluently andOrchestrationEmbeddingResponse#getEmbeddingVectors()to retrieve embeddings.
- Added
- [Orchestration] Added new model
OrchestrationAiModel.MISTRAL_MEDIUM_INSTRUCT.
📈 Improvements
- [Orchestration] Added new API
DpiMasking#withRegexto apply custom masking patterns.
🐛 Fixed Issues
- [Orchestration] Tool calling works on all models
All Commits
click to expand
@Beta to OrchestrationModuleConfig#withStreamConfig by @newtork in #607bug report to problem report by @CharlesDuboisSAP in #618Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.12.0
Release 1.11.0
What's Changed
🔧 Compatibility Notes
-
[Prompt Registry] breaking changes:
Templatehas been renamed toPromptTemplate.- Some endpoints have a new parameter
String aiResourceGroupScopewhich can be set tonull.
For more details please refer to the sample code.
✨ New Functionality
- Extend
OpenAiClientExceptionandOrchestrationClientExceptionto retrieve error diagnostics information received
from remote service.
New available accessors for troubleshooting:getErrorResponse(),getHttpResponse()and,getHttpRequest().
Please note: depending on the error response, these methods may returnnullif the information is not available. - [OpenAI] Added new models for
OpenAiModel:GPT_5,GPT_5_MINIandGPT_5_NANO. - [Orchestration] Added new models for
OrchestrationAiModel:GPT_5,GPT_5_MINIand
GPT_5_NANO. - [Orchestration] Deprecated models for
OrchestrationAiModel:GEMINI_1_5_PROand
OrchestrationAiModel.GEMINI_1_5_FLASH- Replacement are
GEMINI_2_5_PROandGEMINI_2_5_FLASH.
- Replacement are
- [Orchestration] Deprecated
OrchestrationAiModel.IBM_GRANITE_13B_CHATwith no replacement. - [OpenAI] Introduced SpringAI integration with our OpenAI client.
- Added
OpenAiChatModel
- Added
- [Prompt Registry] Using Prompt Registry Templates in SpringAI.
- Added
SpringAiConverter
- Added
- [Orchestration] Added convenience to add custom headers to individual orchestration calls.
- [OpenAI] Added convenience to add custom headers to individual LLM calls.
🐛 Fixed Issues
- [Orchestration] Fixed getting
OrchestrationFilterException.Inputfor bad requests with input filter.
All Commits
click to expand
@Beta reduction and advertising new api by @n-o-u-r-h-a-n in #552OrchestrationFilterException.Input for bad requests with input filter. by @CharlesDuboisSAP in #577Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.11.0
Release 1.10.0
What's Changed
🔧 Compatibility Notes
- The Spring AI version has been increased from
1.0.0-M6to the GA release1.0.0.- The
OrchestrationChatOptionshave been, replacing all references toFunctionCallbackwithToolCallback. - Please follow the official Spring AI upgrade guide for further details.
- The
@Betaannotations on all classes related to Spring AI have been removed.
- The
- [Orchestration] The
completionendpoint have been moved to the latest version/v2/completionLLMModuleConfigis replaced byLLMModelDetailsinwithLLmConfigmethod ofOrchestrationModuleConfigclass.PromptTemplatingModuleConfigPromptreplacesTemplatingModuleConfigin thewithTemplateConfigmethod ofOrchestrationModuleConfigclass.- The generated model classes will reflect payload updates including restructuring of the module configurations and renaming of several fields.
- [Document Grounding] Breaking: The
messagefield inRetrievalPerFilterSearchResultWithErroris replaced byerrorandfilterIdwith more specific error details. - [Document Grounding] Extensive generated model class renaming for better specificity due to API spec changes.
SearchResults→VectorSearchResultsKeyValueListPairsplit into context-specific classes:VectorKeyValueListPairfor vector operationsRetrievalKeyValueListPairfor retrieval operationsVectorDocumentKeyValueListPairfor vector document operationsRetrievalDocumentKeyValueListPairfor retrieval document operations
Chunk→VectorChunkandRetrievalChunkfor different contextsSearchFilter→VectorSearchFilterandRetrievalSearchFilterSearchConfiguration→VectorSearchConfigurationandRetrievalSearchConfiguration
✨ New Functionality
- [Core] Added
ClientExceptionFactoryinterface to provide custom exception mapping logic for different service clients. - Extend
OpenAiClientExceptionandOrchestrationClientExceptionto retrieve error diagnostics information received from remote service usinggetErrorResponse. - [Orchestration] Introduced filtering related exceptions along with convenience methods to obtain additional contextual information.
OrchestrationInputFilterExceptionfor prompt filtering andOrchestrationOutputFilterExceptionfor response filtering.getFilterDetails(): Returns a map of all filter details.getAzureContentSafetyInput()andgetAzureContentSafetyInput(): Returns Azure Content Safety filter scoresgetLlamaGuard38b(): Returns LlamaGuard filter scores
- [Document Grounding] Extend
PipelineApioperations, notably:- Added new pipeline creation requests for SDM and WorkZone with
SDMPipelineCreateRequestandWorkZonePipelineCreateRequest. - S3 and SFTP pipeline configurations extended with
S3ConfigurationandSFTPConfigurationfor including data sources. - Support
/pipelines/triggerendpoint to trigger pipelines on-demand viaPipelinesApi#manualTriggerPipeline().
- Added new pipeline creation requests for SDM and WorkZone with
📈 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.
All Commits
click to expand
- fix: Grounding
getAllPipelinesnow does not throw anymore by @Jonas-Isr in #509 - chore: Align Document Grounding Pipeline Identifier with JS by @MatKuhr in #512
- feat: Upgrade to Spring AI 1.0.0 (GA Version) by @MatKuhr in #503
- fix: Fix
dependency treefield in bug-report.yml by @Jonas-Isr in #510 - chore: [DevOps] bump the plugins group with 5 updates by @dependabot[bot] in #517
- chore: [DevOps] bump the production-minor-patch group with 14 updates by @dependabot[bot] in #516
- fix: Bug OpenAI AssistantMessage by @n-o-u-r-h-a-n in #511
- chore: [OpenAI] Temporarily disable failing OpenAi model integration test by @newtork in #521
- chore: [DevOps] bump slackapi/slack-github-action from 2.1.0 to 2.1.1 in the github-actions group by @dependabot[bot] in #522
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot[bot] in #524
- chore: [DevOps] bump the plugins group with 2 updates by @dependabot[bot] in #525
- feat: Sample Code for MCP Support by @MatKuhr in #513
- feat: [DevOps] Update core specification by @bot-sdk-js in #446
- feat: [Orchestration] Filtering details and additional convenience on exception by @rpanackal in #497
- fix: [Orchestration] V2 spec update by @rpanackal in #482
- feat: [OpenAI] Sample code for Agentic Workflow tutorial by @Jonas-Isr in #466
- chore: [DevOps] Latest Grounding spec update check by @rpanackal in #518
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.10.0
Release 1.9.0
What's Changed
🔧 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.inputTranslationConfigandOrchestrationModuleConfig.outputTranslationConfignow handle the implementing class explicitly. - The same applies to helper methods
DpiMasking#createConfig()andMaskingProvider#createConfig().
- As a result, the accessors for fields
-
[Orchestration]
OrchestrationTemplate.withTemplate()has been deprecated. Please useOrchestrationTemplate.withTemplateMessages()instead. -
[Orchestration] The method
createConfig()is removed fromContentFilter,AzureContentFilterandLlamaGuardFilterand is replaced bycreateInputFilterConfig()andcreateOutputFilterConfig(). -
[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_4andGPT_4_0613are replaced by :GPT_40orGPT_41.CLAUDE_3_SONNETis replaced byCLAUDE_4_SONNET.MIXTRAL_8X7B_INSTRUCT_V01is replaced byMISTRAL_SMALL_INSTRUCT.
-
[OpenAI] Deprecated :
GPT_4.GPT_4is replaced by :GPT_40orGPT_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
Retrievalhave been renamed to fix the typo- for example:
RetievalSearchResultshas been renamed toRetrievalSearchResults
- for example:
-
[Document Grounding]
PipelinesApi#getAllPipelines()andPipelinesApi#getPipelineById()now any of these 3 classes implementing theGetPipelineinterface:MSSharePointPipelineGetResponse,S3PipelineGetResponseandSFTPPipelineGetResponse
✨ 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.
All Commits
click to expand
- chore: [OpenAI] Deprecate manually written client and remove
@Betaon generated client by @CharlesDuboisSAP in #414 - chore: [DevOps] bump slackapi/slack-github-action from 2.0.0 to 2.1.0 in the github-actions group by @dependabot[bot] in #453
- chore: [DevOps] bump the production-minor-patch group with 5 updates by @dependabot[bot] in #454
- chore: [DevOps] bump the plugins group with 4 updates by @dependabot[bot] in #455
- chore: [Orchestration] Add E2E test for grounding via Sharepoint by @Jonas-Isr in #458
- feat: [DevOps] Update SAP Cloud SDK dependency to
5.19.0by @newtork in #456 - feat: [Orchestration] Added support for transforming a JSON output in to an entity by @CharlesDuboisSAP in #450
- chore: [Orchestration] update demo app
formathandling by @newtork in #462 - fix: [Orchestration] Template Chat Message Type by @CharlesDuboisSAP in #449
- chore: [DevOps] bump the production-minor-patch group with 2 updates by @dependabot[bot] in #463
- chore: [DevOps] bump the production-minor-patch group with 5 updates by @dependabot[bot] in #465
- fix: [DevOps] Upgrading spring springframework and spring boot versions to remove vulnerabilities by @rpanackal in #467
- chore: [DevOps] bump the plugins group with 4 updates by @dependabot[bot] in #473
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot[bot] in #471
- chore: [DevOps] bump org.apache.tomcat.embed:tomcat-embed-core from 10.1.42 to 11.0.8 in the production-major group by @dependabot[bot] in #472
- chore: Fix e2e tests because of new filter messages by @Jonas-Isr in #476
- feat: [DevOps] Slack notification by @CharlesDuboisSAP in #477
- chore: [DevOps] bump the plugins group with 3 updates by @dependabot[bot] in #480
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot[bot] in #479
- chore: Update apache tomcat version because of CVE-2025-48988 by @Jonas-Isr in #478
- fix: [Orchestration] duplicated properties by @CharlesDuboisSAP in #481
- ci: Update Orchestration Spec Path by @MatKuhr in #483
- feat: [DevOps] Update prompt-registry specification by @bot-sdk-js in #470
- ci: Update spec-update.yaml by @MatKuhr in #484
- chore: [DevOps] bump the plugins group with 2 updates by @dependabot[bot] in #488
- chore: [DevOps] bump the production-minor-patch group with 4 updates by @dependabot[bot] in #487
- fix: [Orchestration] spec update by @CharlesDuboisSAP in #460
- feat: [DevOps] Update prompt-registry specification by @bot-sdk-js in #492
- chore: [DevOps] fix e2e test by @CharlesDuboisSAP in #495
- chore: [DevOps] bump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.45.0 in the plugins group by @dependabot[bot] in #496
- feat: [DevOps] Update grounding specification by @bot-sdk-js in #489
- feat: [Orchestration] Adding New Models by @n-o-u-r-h-a-n in #485
- chore: [DevOps] bump the plugins group with 2 updates by @dependabot[bot] in #501
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot[bot] in #500
- fix: [Core] Remove any logging of response request body by @rpanackal in #504
- fix: [Orchestration] Slap beta on new toDto methods in
ContentFilterby @rpanackal in #505 - fix: Add scm information (now required by maven central) by @Jonas-Isr in #507
New Contributors
- @n-o-u-r-h-a-n made their first contribution in #485
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.9.0
Release 1.8.0
What's Changed
- feat: [DevOps] Update core specification by @bot-sdk-js in #431
- feat: [DevOps] Document Grounding spec update script by @CharlesDuboisSAP in #432
- feat: [Orchestration] Tool Execution by @bot-sdk-js in #415
- feat: [DevOps] Update grounding specification by @bot-sdk-js in #433
- feat: [Orchestration] Added DeepSeek-R1 model by @CharlesDuboisSAP in #434
- chore: [Orchestration] Add tool execution to release notes by @Jonas-Isr in #435
- fix: [Orchestration] Fix claude 3.7 sonnet model by @CharlesDuboisSAP in #436
- feat: [DevOps] Update spring-boot to 3.4.5 by @CharlesDuboisSAP in #438
- chore: [Orchestration] Test streaming error handling by @Jonas-Isr in #437
- feat: [OpenAI] Tool Definition and Call Parsing V2 (Incl Execution) by @rpanackal in #418
- feat: [DevOps] Weekly Spec Update by @CharlesDuboisSAP in #439
- chore: [DevOps] bump com.sap.hcp.cf.logging:cf-java-logging-support-logback from 3.8.4 to 3.8.5 in the production-minor-patch group by @dependabot in #441
- fix: [OpenAI] Update models list of OpenAI models. by @Jonas-Isr in #444
- feat: [Orchestration] Translation by @CharlesDuboisSAP in #440
- chore: [DevOps] bump org.json:json from 20250107 to 20250517 in the production-major group by @dependabot in #442
- chore: [DevOps] bump the production-minor-patch group with 2 updates by @dependabot in #447
- docs: [OpenAI] Minor fix - version of latest tool features in javadoc by @rpanackal in #443
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.8.0
Release 1.7.0
What's Changed
🔧 Compatibility Notes
- [Orchestration] Deprecated
OrchestrationAiModel.GEMINI_1_0_PRO. The replacements are either:OrchestrationAiModel.GEMINI_2_0_FLASHOrchestrationAiModel.GEMINI_2_0_FLASH_LITE.
✨ New Functionality
- [Orchestration] Added support to locally test prompt template files
- [Orchestration] Added new models:
OrchestrationAiModel.CLAUDE_3_7_SONNETOrchestrationAiModel.GEMINI_2_0_FLASHOrchestrationAiModel.GEMINI_2_0_FLASH_LITE
All Commits
click to expand
- chore: enable Reproducible Builds by @hboutemy in #406
- chore: [DevOps] bump org.jacoco:jacoco-maven-plugin from 0.8.12 to 0.8.13 in the plugins group by @dependabot in #410
- chore: [DevOps] bump the production-minor-patch group with 4 updates by @dependabot in #409
- chore: Improve Prompt Registry History test by @Jonas-Isr in #411
- chore: Fix checkstyle plugin by @Jonas-Isr in #408
- chore: [Orchestration] Minor syntax / code style fixes by @newtork in #394
- feat: Remove
@Betaon generated code by @CharlesDuboisSAP in #413 - chore: [DevOps] bump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in the plugins group by @dependabot in #417
- chore: [DevOps] bump the production-minor-patch group with 2 updates by @dependabot in #416
- test: SpringAI Filtering by @TillK17 in #403
- chore: Fix the prompt registry history test by @Jonas-Isr in #420
- chore: Update SAP Cloud SDK to
5.18.0by @newtork in #421 - chore: [OpenAI] use code generation by @newtork in #370
- feat: [Orchestration] Add Test and Sample Code for Response Format with Spring AI by @MatKuhr in #422
- chore: [DevOps] bump org.openapitools:openapi-generator-maven-plugin from 7.12.0 to 7.13.0 in the plugins group by @dependabot in #426
- chore: [DevOps] bump the production-minor-patch group with 4 updates by @dependabot in #425
- feat: [Orchestration] Enable local prompt templates by @Jonas-Isr in #423
- feat: [Orchestration] Added Gemini 2.0 models by @CharlesDuboisSAP in #429
New Contributors
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.7.0
Release 1.6.0
What's Changed
✨ New Functionality
- [Prompt Registry] Add Prompt Registry client
com.sap.ai.sdk:prompt-registry:1.6.0
- [OpenAI] Add convenience for tool call execution
All Commits
click to expand
- chore: [DevOps] bump com.github.spotbugs:spotbugs-maven-plugin from 4.9.2.0 to 4.9.3.0 in the plugins group by @dependabot in #388
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot in #387
- feat: [DevOps] Release notes automation by @CharlesDuboisSAP in #390
- fix: [DevOps] Update spring boot version by @rpanackal in #392
- chore: [DevOps] bump ch.qos.logback:logback-classic from 1.5.17 to 1.5.18 in the production-minor-patch group by @dependabot in #393
- fix: [Orchestration] default values for template messages by @newtork in #391
- fix: HTML homepage collapse by @CharlesDuboisSAP in #395
- chore: (Grounding) Disable failing E2E test by @newtork in #397
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot in #398
- feat: [PromptRegistry] Release module by @CharlesDuboisSAP in #400
- feat: [DevOps] Update prompt-registry specification by @bot-sdk-js in #402
- feat: [OpenAI] Full Tool call Convenience by @rpanackal in #396
- test: [OpenAI] E2E Tool Call Execution by @rpanackal in #386
- docs: [OpenAI] Tool call release notes by @rpanackal in #405
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.6.0
Release 1.5.0
What's Changed
✨ New Functionality
- [Orchestration] Add Spring AI Chat Memory support
- [Orchestration] Prompt templates can be consumed from registry.
- [Orchestration] Masking is now available on grounding.
- [Orchestration] Grounding via help.sap.com is enabled.
- [OpenAI] Spring AI integration for embedding calls.
All Commits
click to expand
- chore: [DevOps] bump org.slf4j:slf4j-simple from 2.0.16 to 2.0.17 in the test group by @dependabot in #364
- chore: [DevOps] bump the production-minor-patch group with 2 updates by @dependabot in #362
- chore: [DevOps] bump the plugins group with 3 updates by @dependabot in #363
- feat: [DevOps] Update orchestration specification by @bot-sdk-js in #366
- fix: [Orchestration] Added location to server errors by @CharlesDuboisSAP in #365
- feat: Use prompt templates via Orchestration by @Jonas-Isr in #368
- feat: [Orchestration] Chat Memory by @CharlesDuboisSAP in #367
- docs: Small fixes to sample code and docs by @Jonas-Isr in #369
- feat: [Orchestration] Enable grounding via help.sap.com by @Jonas-Isr in #372
- feat: [DevOps] Update prompt-registry specification by @bot-sdk-js in #374
- feat: [Orchestration] Mask grounding by @CharlesDuboisSAP in #371
- chore: [DevOps] bump com.github.spotbugs:spotbugs-maven-plugin from 4.9.1.0 to 4.9.2.0 in the plugins group by @dependabot in #379
- chore: [DevOps] bump the production-minor-patch group with 3 updates by @dependabot in #378
- feat: [OpenAI] SpringAI integration for embedding calls by @rpanackal in #375
- fix: Fix Grounding e2e test by @Jonas-Isr in #376
- chore: Improve Generator Script by @MatKuhr in #381
- chore: Update deprecated models by @Jonas-Isr in #380
- docs: Update docs on setting response-format by @Jonas-Isr in #382
- feat: Moved documentation to portal by @CharlesDuboisSAP in #383
- chore: Update available modellist by @TillK17 in #384
New Contributors
- @bot-sdk-js made their first contribution in #14
- @jjtang1985 made their first contribution in #54
- @Jonas-Isr made their first contribution in #153
- @Terry-Huang-00 made their first contribution in #159
- @TillK17 made their first contribution in #242
- @skateball made their first contribution in #286
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.5.0
Release 1.4.0
What's Changed
🔧 Compatibility Notes
- [Orchestration] The constructors
UserMessage(MessageContent)andSystemMessage(MessageContent)are removed. UseMessage.user(String),Message.user(ImageItem), orMessage.system(String)instead. - Deprecate
getCustomField(String)in favor oftoMap()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.
OpenAiChatCompletionRequestandOpenAiChatCompletionResponse' for high level request and response handling.OpenAiUserMessage,OpenAiSystemMessage,OpenAiAssistantMessageandOpenAiToolMessagefor message creation for different content types.OpenAiToolChoicefor configuring chat completion requests with tool selection strategy.
- [OpenAI] Introducing new user interface for embedding calls using
OpenAiEmbeddingRequestandOpenAiEmbeddingResponse.
All Commits
click to expand
- chore: Improve Connecitivtiy Docs by @MatKuhr in #332
- fix: [Orchestration] Hide constructors for System- and UserMessage by @Jonas-Isr in #334
- feat: [OpenAI] Generated model classes for OpenAI client by @rpanackal in #322
- chore: [DevOps] bump com.github.spotbugs:spotbugs-maven-plugin from 4.8.6.6 to 4.9.1.0 in the plugins group by @dependabot in #337
- chore: [DevOps] bump org.wiremock:wiremock from 3.11.0 to 3.12.0 in the production-minor-patch group by @dependabot in #336
- fix: [DevOps] Dependency vulnerability scan to 12.1.0 by @CharlesDuboisSAP in #338
- feat: [OpenAI] Stable convenience - Latest by @rpanackal in #323
- chore: [DevOps] enforce Spring AI optional by @CharlesDuboisSAP in #339
- chore: better header documentation by @CharlesDuboisSAP in #344
- feat: Spring AI🍃Tool Calling by @CharlesDuboisSAP in #320
- chore: [DevOps] Update Cloud SDK to 5.17.0 by @CharlesDuboisSAP in #342
- chore: [DevOps] bump the plugins group with 2 updates by @dependabot in #346
- chore: [DevOps] bump the production-minor-patch group with 4 updates by @dependabot in #345
- feat: (Grounding) Initial client classes with generated API and model by @newtork in #317
- feat: [OpenAI] Integrate Messaging Convenience by @rpanackal in #326
- fix: Disable test regarding model availability by @Jonas-Isr in #349
- feat: [OpenAI] Tool Choice Convenience by @rpanackal in #330
- fix: Update docs by @CharlesDuboisSAP in #347
- chore: Enable E2E test for OpenAI models by @newtork in #350
- chore: Rename
groundingtodocument-groundingby @newtork in #352 - feat: [OpenAI] Embedding Request Convenience by @rpanackal in #331
- chore: Consolidate OpenAI convenience methods to set tool-choice by @newtork in #351
- feat: PoC 📚 Prompt Registry client by @rpanackal in #343
- fix: prompt-registry parent pom declaration - release "no" by @newtork in #355
- chore: [OpenAI] Embedding type change to
float[]by @rpanackal in #353 - docs: [OpenAI] Update documentation and release notes for new api by @rpanackal in #354
- chore: [OpenAI] Beta tag on toolChoice conv with equals and hashcode by @rpanackal in #358
- fix: Update model lists and model availability test by @TillK17 in #348
- feat: [Orchestration] Convenience for response format by @Jonas-Isr in #341
- fix: Align release notes with JS SDK by @Jonas-Isr in #360
Full Changelog: https://github.com/SAP/ai-sdk-java/commits/rel/1.4.0