Oracle Module for ChatMemory#6115
Closed
psilberk wants to merge 33 commits into
Closed
Conversation
Replace scattered tool-registration methods with a single ToolSpec consumer: - tools(Consumer<ToolSpec>) / defaultTools(Consumer<ToolSpec>) as the primary entry points; old toolCallbacks/toolNames/toolContext overloads are deprecated in favour of ToolSpec - ToolSpec exposes: instances(Object...|List), callbacks(ToolCallback...|List, ToolCallbackProvider...), context(Map|key+value), advisor(ToolAdvisor) - advisor(ToolAdvisor) co-locates a custom ToolAdvisor with its tools; suppresses auto-registration of ToolCallAdvisor, consistent with the existing .advisors() path - toolNames() are deprecated. For java.util.function tools with ToolSpec use explicit ToolCallback instances and FunctionToolCallback. - Update tests and docs accordingly Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
- Include spring-boot-starter-jdbc as test scope Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Adding upgrade docs about CosmosDB components removal Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: psilberk <psilberkasten@gmail.com>
* Alphabetic sorting of third party dependencies and plugins Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
The ChatClientAutoConfiguration is now applied after ToolCallingAutoConfiguration, ensuring the auto-configured ToolCallingManager is used correctly when building a ToolCallAdvisor instance. Signed-off-by: Thomas Vitale <ThomasVitale@users.noreply.github.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Include explicit dependency on spring-ai-client-chat in all model starters after it was removed as a transitive dependendency on spring-ai-autoconfigure-model-chat-client. Fixes spring-projectsgh-6094 Signed-off-by: Thomas Vitale <ThomasVitale@users.noreply.github.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
…olCallMessages - Add ToolCallAdvisor with suppressToolCallStreaming Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
- spring-ai-mcp is needed as the test scoped dependency for DockerMcpGatewayContainerConnectionDetailsFactoryIT Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Eric Bottard <eric.bottard@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Follow-up to spring-projects#6036, completing the documentation corrections started in 192eb5c. Signed-off-by: jewoodev <jewoos15@naver.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
- include apache commons-lang3 in test scope Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Also, add some more enforcer rules to the build, to make sure modularity is correctly taken care of. Signed-off-by: Eric Bottard <eric.bottard@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
…jects#6035) Add hoistDefsToRoot into JsonSchemaUtils so both JsonSchemaGenerator and McpJsonSchemaGenerator share the implementation. Handles equal-definition reuse, name collisions with suffix renaming, peer-ref rewriting, and correct $defs-before-properties ordering. Add tests for both generators. Signed-off-by: jewoodev <jewoos15@naver.com> Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> Co-authored-by: Christian Tzolov <christian.tzolov@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Dariusz Jędrzejczyk <2554306+chemicL@users.noreply.github.com> Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf> Signed-off-by: psilberk <psilberkasten@gmail.com>
- Fix ConditionalOnClass for the autoconfiguration as it uses google-cloud-aiplatform instead of google-cloud-vertexai Signed-off-by: Ilayaperumal Gopinathan <ilayaperumal.gopinathan@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
- Add validateSingleToolAdvisor() to throw IllegalStateException when more than one ToolAdvisor is present in the advisor chain after auto-registration. - Delegate legacy toolCallbacks/toolContext methods to tools(ToolSpec) to consolidate validation. - Remove the streaming boolean from buildAdvisorChain since streamToolCallResponses is now pre-configured on the builder. Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: ddobrin <ddobrin@google.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Closes spring-projects#6107 Signed-off-by: Sébastien Deleuze <sdeleuze@users.noreply.github.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Eric Bottard <eric.bottard@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
MCP SDK 2.0.0-M3 makes `model` on `CreateMessageResult` and `maxTokens` on `CreateMessageRequest` mandatory, throwing `IllegalArgumentException` at construction time if omitted. All other builders now require their mandatory arguments upfront in the factory method. - Fix affected test files to use M3 builder APIs - Update MCP documentation code samples to match - Add MCP SDK 2.0.0-M3 section to upgrade-notes.adoc Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Reactive switchMap operator eagerly subscribes to the source requesting unlimited data from the upstream. When the downstream is busy processing items on another thread, the next incoming item will cause a previous one to be discarded. That can force the streaming variant of ChatModel to silently drop parts of the streamed response and is highly undesired. This is a port of spring-projects#6106 and spring-projects#6123 Signed-off-by: Dariusz Jędrzejczyk <2554306+chemicL@users.noreply.github.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
See spring-projectsgh-5695 Signed-off-by: Sébastien Deleuze <sdeleuze@users.noreply.github.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
The filename comes back from the Anthropic API, which means it's ultimately influenced by the model. We were handing it straight to targetDir.resolve(...), so an absolute path would just throw the target dir away and land wherever the model said. ., .. segments and NUL bytes had their own problems. Run the name through a small validator first and do one last startsWith check on the resolved path as a backstop. Adding unit tests to verify these scenarios. Signed-off-by: Soby Chacko <soby.chacko@broadcom.com> Signed-off-by: psilberk <psilberkasten@gmail.com>
Contributor
|
The PR looks broken (too many unrelated commits) and we in the process of moving from memory in session in 2.1, so I will decline it, feel free to submit a PR to https://github.com/spring-ai-community/spring-ai-session. |
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Thank you for taking time to contribute this pull request!
You might have already read the contributor guide, but as a reminder, please make sure to:
git commit -s) per the DCOmainbranch and squash your commitsFor more details, please check the contributor guide.
Thank you upfront!