All Classes and Interfaces
Class
Description
Deprecated, for removal: This API element is subject to removal in a future version.
CDI bean willing to manipulate the response of the AI model needs to implement this interface.
Provides the basic building blocks that the generated Interface methods call into
This annotation is useful when an AiService is meant to describe an audio as the value of the method parameter annotated
with @AudioUrl
will be used as an
AudioContent
.Contains information about the source of an audit event
Base class for chat-related events that occur during AI service interactions.
Event emitted when partial responses have been accumulated into a larget message.
Event emitted when a chat conversation has been completed.
Enumeration of possible chat event types.
Event emitted when content has been fetched from a retrieval-augmented
generation (RAG) source.
Event emitted when a partial response chunk is received during streaming.
Event emitted when a tool has been executed during a chat conversation.
Interface implemented by each AiService that allows the removal of chat memories from an AiService
Allows the application to manually control when a
ChatMemory
should be removed from the underlying
ChatMemoryStore
.Provides a way for an AiService to get its chat memory seeded.
Contributes custom attributes, events or other data to the spans created by
SpanChatModelListener
.Adds the prompt as a span attribute if so configured by the user
Allows for user code to provide a custom strategy for estimating the cost of API calls
Meant to be injected where
ChatModelListener
is used in order to determine the cost of the API requestUsed to make Quarkus aware of classes being used in
AiServices.create(java.lang.Class<T>, dev.langchain4j.model.chat.ChatModel)
Often LLMs return a date as a JSON object containing the date's constituents
Often LLMs return a datetime as a JSON object containing the datetime's constituents
Often LLMs return a time as a JSON object containing the time's constituents
Deprecated, for removal: This API element is subject to removal in a future version.
This will be replaced with an alternate version when the upstream guardrail implementation is merged
Deprecated, for removal: This API element is subject to removal in a future version.
This will be replaced with an alternate version when the upstream guardrail implementation is merged
Deprecated, for removal: This API element is subject to removal in a future version.
Use
Guardrail
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
GuardrailException
insteadDeprecated, for removal: This API element is subject to removal in a future version.
This will be replaced with an alternate version when the upstream guardrail implementation is merged
Represents an event that is executed when a guardrail validation occurs.
Deprecated, for removal: This API element is subject to removal in a future version.
Use
GuardrailRequestParams
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
GuardrailResult
insteadThe message and the cause of the failure of a single validation.
The possible results of a guardrails validation.
Deprecated, for removal: This API element is subject to removal in a future version.
Deprecated in favor of upstream implementation
This annotation is useful when an AiService is meant to describe an image as the value of the method parameter annotated
with @ImageUrl
will be used as an
ImageContent
.Invoked when the original user and system messages have been created
Creates the default
InMemoryChatMemoryStore
store to be used by classes annotated with RegisterAiService
Deprecated, for removal: This API element is subject to removal in a future version.
Use
InputGuardrail
insteadDeprecated, for removal: This API element is subject to removal in a future version.
This will be replaced with an alternate version when the upstream guardrail implementation is merged
Deprecated, for removal: This API element is subject to removal in a future version.
Use
InputGuardrailRequest
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
InputGuardrailResult
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
InputGuardrails
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Invoked when the final result of the AiService method has been computed
Invoked when there was an exception computing the result of the AiService method
Creates metrics that follow the
Semantic Conventions
for GenAI Metrics
Model authentication providers can be used to supply credentials such as access tokens, API keys, and other type of
credentials.
Marker annotation to select a named model
Configure the
name
parameter to select the model instance.This is needed for output guardrails on a method returning Multi.
An implementation of
ChatMemory
that does nothing.Deprecated, for removal: This API element is subject to removal in a future version.
Use
OutputGuardrail
insteadAn annotation to configure token accumulation when output guardrails are applied on streamed responses.
Deprecated, for removal: This API element is subject to removal in a future version.
This will be replaced with an alternate version when the upstream guardrail implementation is merged
Deprecated, for removal: This API element is subject to removal in a future version.
Use
OutputGuardrailRequest
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
OutputGuardrailResult
insteadDeprecated, for removal: This API element is subject to removal in a future version.
Use
OutputGuardrails
insteadInterface to accumulate tokens when output guardrails are applied on streamed responses.
This annotation is useful when an AiService is meant to describe an image as the value of the method parameter annotated
with @PdfUrl
will be used as an
PdfFileContent
.Adds the prompt as a span attribute if so configured by the user
A
StreamingResponseHandler
implementation for Quarkus.An implementation of token stream for Quarkus.
Used to create LangChain4j's
AiServices
in a declarative manner that the application can then use simply by
using the class as a CDI bean.Marker that is used to tell Quarkus to use the
that has been configured as a CDI bean by
any of the extensions providing such capability (such as
invalid reference
ChatLanguageModel
quarkus-langchain4j-openai
and
quarkus-langchain4j-hugging-face
).Marker that is used to tell Quarkus to use the retriever that the user has configured as a CDI bean.
Marker that is used to tell Quarkus to use the
ImageModel
that the user has configured as a CDI bean.Marker that is used to tell Quarkus to use the
ModerationModel
that the user has configured as a CDI bean.Marker that is used to tell Quarkus to use the
RetrievalAugmentor
that the user has configured as a CDI bean.Marker that is used to tell Quarkus to use the ToolHallucinationStrategy that the user has configured as a CDI bean.
Marker that is used to tell Quarkus to use the
ToolProvider
that the user has configured as a CDI bean.Marker that is used to tell Quarkus to use the
that has been configured as a CDI bean
by * any of the extensions providing such capability (such as
invalid reference
StreamingChatLanguageModel
quarkus-langchain4j-openai
and
quarkus-langchain4j-hugging-face
).Marker that is used when the user does not want any memory configured for the AiService
Marker that is used to tell Quarkus to not use any retrieval augmentor even if a CDI bean implementing
the `RetrievalAugmentor` interface exists.
Marker class to indicate that no retriever should be used
Marker that is used when the user does not want any tool provider
This implementation uses the state of the request scope as the default value
An annotation to configure a response augmenter.
Represents the parameter passed to
AiResponseAugmenter
methods.Invoked with a response from an LLM.
Provides a way for an AiService to get its chat memory seeded with examples interactions.
Creates a span that follows the
Semantic Conventions
for GenAI operations
When used on a method of an AiService annotated with
RegisterAiService
, the method will the tool classes provided by
value
instead of the ones configured for the entire AiService (via RegisterAiService.tools()
)Invoked with a tool response from an LLM.
JsonExtractorOutputGuardrail
instead