Package com.google.adk.models.springai
Class SpringAiToolset
java.lang.Object
com.google.adk.models.springai.SpringAiToolset
- All Implemented Interfaces:
BaseToolset,AutoCloseable
Exposes every Spring AI tool from a
ToolCallbackProvider as an ADK BaseToolset,
so a dependency-injected provider (for example a Spring bean) contributes its tools to an ADK
agent. Each callback is wrapped with SpringAiTool, and the provider is queried on every
getTools(com.google.adk.agents.ReadonlyContext) call so tools it adds later are picked up.-
Constructor Summary
ConstructorsConstructorDescriptionSpringAiToolset(org.springframework.ai.tool.ToolCallbackProvider toolCallbackProvider) Creates a toolset backed bytoolCallbackProvider. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Performs cleanup and releases resources held by the toolset.io.reactivex.rxjava3.core.Flowable<BaseTool>getTools(@Nullable ReadonlyContext readonlyContext) Return all tools in the toolset based on the provided context.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.google.adk.tools.BaseToolset
isToolSelected, processLlmRequest
-
Constructor Details
-
SpringAiToolset
public SpringAiToolset(org.springframework.ai.tool.ToolCallbackProvider toolCallbackProvider) Creates a toolset backed bytoolCallbackProvider.- Parameters:
toolCallbackProvider- The Spring AI provider whose tools to expose
-
-
Method Details
-
getTools
public io.reactivex.rxjava3.core.Flowable<BaseTool> getTools(@Nullable ReadonlyContext readonlyContext) Description copied from interface:BaseToolsetReturn all tools in the toolset based on the provided context.- Specified by:
getToolsin interfaceBaseToolset- Parameters:
readonlyContext- Context used to filter tools available to the agent.- Returns:
- A Flowable emitting tools available under the specified context.
-
close
public void close()Description copied from interface:BaseToolsetPerforms cleanup and releases resources held by the toolset.NOTE: This method is invoked, for example, at the end of an agent server's lifecycle or when the toolset is no longer needed. Implementations should ensure that any open connections, files, or other managed resources are properly released to prevent leaks.
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceBaseToolset
-