All Classes and Interfaces

Class
Description
Abstract StructuredOutputConverter implementation that uses a pre-configured DefaultConversionService to convert the LLM output into the desired type format.
Abstract implementation of the EmbeddingModel interface that provides dimensions calculation caching.
The AbstractMessage class is an abstract implementation of the Message interface.
Abstract StructuredOutputConverter implementation that uses a pre-configured MessageConverter to convert the LLM output into the desired type format.
 
Utility methods for creating native runtime hints.
Some model providers API leverage short-lived api keys which must be renewed at regular intervals using another credential.
Lets the generative know the content was generated as a response to the user.
 
 
Represents a response returned by the AI.
Metadata associated with an audio transcription result.
Options for audio transcription.
Represents an audio transcription prompt for an AI model.
A response containing an audio transcription result.
Metadata associated with an audio transcription response.
An implementation of StructuredOutputConverter that transforms the LLM output to a specific object type using JSON schema.
The Categories class represents a set of categories used to classify content.
 
This class represents the scores for different categories of content.
 
Represents the metadata associated with the generation of a chat response.
 
The contract for storing and managing the memory of chat conversations.
A repository for storing and retrieving chat messages.
 
Handler for emitting the chat completion content to logs.
Marker interface, to be used to store info on the model such as the current context length.
Handler for generating metrics from chat model observations.
Context used to store metadata for chat model exchanges.
 
Interface for an ObservationConvention for chat model exchanges.
Documented conventions for chat model observations.
High-cardinality observation key names for chat model operations.
Low-cardinality observation key names for chat model operations.
Handler for emitting the chat prompt content to logs.
ModelOptions representing the common options that are portable across different chat models.
Builder for creating ChatOptions instance.
A PromptTemplate that lets you specify the role as a string should the current implementations and their roles not suffice for your needs.
The chat completion (e.g.
 
Models common AI provider metadata returned in an AI response.
 
Default implementation of ChatGenerationMetadata.
 
Default conventions to populate observations for chat model operations.
Default implementation for the ChatOptions.
Implementation of ChatOptions.Builder to create DefaultChatOptions.
Default conventions to populate observations for embedding model operations.
Default conventions to populate observations for image model operations.
Default implementation of ToolCallingChatOptions.
Default implementation of ToolCallingChatOptions.Builder.
Default implementation of ToolCallingManager.
 
Default conventions to populate observations for tool calling operations.
A default implementation of ToolCallResultConverter.
Default implementation of ToolDefinition.
 
Default implementation of ToolExecutionEligibilityPredicate that checks whether tool execution is enabled in the prompt options and if the chat response contains tool calls.
Default implementation of ToolExecutionExceptionProcessor.
 
Default implementation of ToolExecutionResult.
 
Default implementation of ToolMetadata.
 
Default implementation of the Usage interface.
A ToolCallbackResolver that delegates to a list of ToolCallbackResolver instances.
EmbeddingModel is a generic interface for embedding models.
Represents a request to embed a list of documents.
Represents a single embedding vector.
EmbeddingModel is a generic interface for embedding models.
Description of an embedding model.
Handler for generating metrics from embedding model observations.
Context used to store metadata for embedding model exchanges.
 
Interface for an ObservationConvention for embedding model exchanges.
Documented conventions for embedding model observations.
High-cardinality observation key names for embedding model operations.
Low-cardinality observation key names for embedding model operations.
Options for embedding models.
Builder for EmbeddingOptions.
Request to embed a list of input instructions.
Embedding response object.
Common AI provider metadata returned in an embedding response.
Metadata associated with the embedding result.
 
 
Utility methods for embedding related operations.
A RateLimit implementation that returns zero for all property getters
A EmptyUsage implementation that returns zero for all property getters
An ObservationHandler that logs errors using a Tracer.
Implementations of this interface provides instructions for how the output of a language generative should be formatted.
 
A ToolCallback implementation to invoke functions as tools.
 
Represents a response returned by the AI.
The Generation class represents a response from a moderation process.
 
 
 
 
 
Context used to store metadata for image model exchanges.
 
Interface for an ObservationConvention for image model exchanges.
Documented conventions for image model observations.
High-cardinality observation key names for image model operations.
Low-cardinality observation key names for image model operations.
Handler for emitting image prompt content to logs.
ImageOptions represent the common options, portable across different image generation models.
 
 
The image completion (e.g.
Represents metadata associated with an image response.
An in-memory implementation of ChatMemoryRepository.
Utilities to perform parsing operations between JSON and Java.
Utilities to generate JSON Schemas from Java types and method signatures.
Options for generating JSON Schemas.
Keyword extractor that uses generative to extract 'excerpt_keywords' metadata field.
 
 
 
StructuredOutputConverter implementation that uses a DefaultConversionService to convert the LLM output into a List instance.
StructuredOutputConverter implementation that uses a pre-configured MappingJackson2MessageConverter to convert the LLM output into a java.util.Map<String, Object> instance.
The Message interface represents a message that can be sent or received in a chat application.
Helper that for streaming chat responses, aggregate the chat response messages into a single AssistantMessage.
 
Enumeration representing types of Messages in a chat application.
A chat memory implementation that maintains a message window of a specified size, ensuring that the total number of messages does not exceed the specified limit.
 
A ToolCallback implementation to invoke methods as tools.
 
A ToolCallbackProvider that builds ToolCallback instances from Tool-annotated methods.
 
Model<TReq extends ModelRequest<?>,TRes extends ModelResponse<?>>
The Model interface provides a generic API for invoking AI models.
Describes an AI model's basic characteristics.
Context used when sending a request to a machine learning model and waiting for a response from the model provider.
Interface representing the customizable options for AI model interactions.
Utility class for manipulating ModelOptions objects.
Interface representing a request to an AI model.
Interface representing the response received from an AI model.
This interface provides methods to access the main output of the AI model and the metadata associated with this result.
Generate metrics about the model usage in the context of an AI operation.
The Moderation class represents the result of a moderation process.
 
An interface that represents metadata associated with the results of a moderation generation process.
Represents a single message intended for moderation, encapsulating the text content.
The ModerationModel interface defines a generic AI model for moderation.
Represents the options for moderation.
A builder class for creating instances of ModerationOptions.
Represents a prompt for moderation containing a single message and the options for the moderation model.
Represents a response from a moderation process, encapsulating the moderation metadata and the generated content.
Defines the metadata associated with a moderation response, extending a base response interface.
Represents the result of a moderation process, indicating whether content was flagged, the categories of moderation, and detailed scores for each category.
 
 
This implementation of ApiKey indicates that no API key should be used, e.g.
The Prompt class represents a prompt used in AI model requests.
 
Abstract Data Type (ADT) modeling metadata gathered by the AI during request processing.
Abstract Data Type (ADT) modeling filter metadata for all prompts sent during an AI request.
A template for creating prompts.
 
 
 
 
 
Abstract Data Type (ADT) encapsulating metadata from an AI provider's API rate limits granted to the API key in use and the API key's current balance.
Interface representing metadata associated with an AI model's response.
Interface representing metadata associated with the results of an AI model.
The type of schema to generate for a given Java type.
A simple implementation of ApiKey that holds an immutable API key value.
 
 
 
JSON Schema Generator Module for Spring AI.
Options for customizing the behavior of the module.
A Spring ApplicationContext-based implementation that provides a way to retrieve a bean from the Spring context and wrap it into a ToolCallback.
 
A simple implementation of ToolCallbackProvider that maintains a static array of ToolCallback objects.
A ToolCallbackResolver that resolves tool callbacks from a static registry.
 
The StreamingModel interface provides a generic API for invoking an AI models with streaming response.
Converts the (raw) LLM output into a structured responses of type.
Title extractor with adjacent sharing that uses generative to extract 'section_summary', 'prev_section_summary', 'next_section_summary' metadata fields.
 
A message of the type 'system' passed as input.
 
 
 
Marks a method as a tool in Spring AI.
Represents a tool whose execution can be triggered by an AI model.
Provides ToolCallback instances for tools defined in different sources.
A resolver for ToolCallback instances.
Provides ToolCallback instances for tools defined in different sources.
A set of options that can be used to configure the interaction with a chat model, including tool calling.
A builder to create a ToolCallingChatOptions instance.
An ObservationFilter to include the tool call content (input/output) in the observation.
Service responsible for managing the tool calling process for a chat model.
Context used to store data for tool calling observations.
 
Interface for an ObservationConvention for tool calling observations.
Tool calling observation documentation.
High cardinality key names.
Low cardinality key names.
A functional interface to convert tool call results to a String that can be sent back to the AI model.
Represents the context for tool execution in a function calling scenario.
Definition used by the AI model to determine when and how to call the tool.
Utility class for creating ToolDefinition builders and instances from Java Method objects.
Interface for determining when tool execution should be performed based on model responses.
Interface for determining when tool execution should be performed based on model responses.
An exception thrown when a tool execution fails.
A functional interface to process a ToolExecutionException by either converting the error message to a String that can be sent back to the AI model or throwing an exception to be handled by the caller.
The result of a tool execution.
Metadata about a tool specification and execution.
Marks a tool argument.
The ToolResponseMessage class represents a message with a function content in a chat application.
 
Registers runtime hints for the tool calling APIs.
Miscellaneous tool utility methods.
A utility class that provides methods for resolving types and classes related to functions.
Abstract Data Type (ADT) encapsulating metadata on the usage of an AI provider's API per AI request.
An utility class to provide support methods handling Usage.
A message of the type 'user' passed as input Messages with the user role are from the end-user or developer.