Class WatsonxStreamingChatModel
java.lang.Object
dev.langchain4j.model.watsonx.WatsonxStreamingChatModel
- All Implemented Interfaces:
StreamingChatModel
A
StreamingChatModel implementation that integrates IBM watsonx.ai foundation models with LangChain4j.
Example usage:
StreamingChatModel chatModel = WatsonxStreamingChatModel.builder()
.baseUrl("https://...") // or use CloudRegion
.apiKey("...")
.projectId("...")
.modelName("ibm/granite-4-h-small")
.maxOutputTokens(0)
.temperature(0.7)
.build();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder class for constructingWatsonxStreamingChatModelinstances with configurable parameters. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final com.ibm.watsonx.ai.chat.ChatServiceprotected final ChatRequestParametersprotected final List<ChatModelListener> protected final booleanprotected final Set<Capability> -
Method Summary
Modifier and TypeMethodDescriptionprotected static final voidapplyCommonParameters(DefaultChatRequestParameters.Builder<?> target, dev.langchain4j.model.watsonx.WatsonxChatBase.Builder<?> builder) protected static voidapplyTextChatParameters(WatsonxChatRequestParameters.Builder target, dev.langchain4j.model.watsonx.WatsonxTextChatBase.Builder<?> builder) Merges intotargetthe builder values and the default request parameters that both services accept.protected com.ibm.watsonx.ai.chat.ChatRequestbuildChatRequest(List<com.ibm.watsonx.ai.chat.model.ChatMessage> messages, List<com.ibm.watsonx.ai.chat.model.Tool> tools, ChatRequestParameters parameters) builder()Returns a newWatsonxStreamingChatModel.Builderinstance.protected com.ibm.watsonx.ai.chat.ChatProvider<com.ibm.watsonx.ai.chat.ChatRequest, com.ibm.watsonx.ai.chat.TextChatResponse> voiddoChat(ChatRequest chatRequest, StreamingChatResponseHandler handler) protected final ChatResponseexecuteChat(ChatRequest chatRequest) protected final voidexecuteChatStreaming(ChatRequest chatRequest, StreamingChatResponseHandler handler) provider()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface StreamingChatModel
chat, chat, chat, chat, defaultRequestParameters, listeners, provider, supportedCapabilities
-
Field Details
-
chatService
protected final com.ibm.watsonx.ai.chat.ChatService chatService -
listeners
-
defaultRequestParameters
-
supportedCapabilities
-
strictJsonSchema
protected final boolean strictJsonSchema
-
-
Method Details
-
doChat
- Specified by:
doChatin interfaceStreamingChatModel
-
builder
Returns a newWatsonxStreamingChatModel.Builderinstance.Example usage:
StreamingChatModel chatModel = WatsonxStreamingChatModel.builder() .baseUrl("https://...") // or use CloudRegion .apiKey("...") .projectId("...") .modelName("ibm/granite-4-h-small") .maxOutputTokens(0) .temperature(0.7) .build();- Returns:
WatsonxStreamingChatModel.Builderinstance.
-
buildChatRequest
protected com.ibm.watsonx.ai.chat.ChatRequest buildChatRequest(List<com.ibm.watsonx.ai.chat.model.ChatMessage> messages, List<com.ibm.watsonx.ai.chat.model.Tool> tools, ChatRequestParameters parameters) -
chatProvider
protected com.ibm.watsonx.ai.chat.ChatProvider<com.ibm.watsonx.ai.chat.ChatRequest, com.ibm.watsonx.ai.chat.TextChatResponse> chatProvider() -
applyTextChatParameters
protected static void applyTextChatParameters(WatsonxChatRequestParameters.Builder target, dev.langchain4j.model.watsonx.WatsonxTextChatBase.Builder<?> builder) Merges intotargetthe builder values and the default request parameters that both services accept.- Parameters:
target- the parameters builder to fillbuilder- the model builder holding the values set by the caller
-
listeners
-
defaultRequestParameters
-
supportedCapabilities
-
provider
-
executeChat
-
executeChatStreaming
protected final void executeChatStreaming(ChatRequest chatRequest, StreamingChatResponseHandler handler) -
applyCommonParameters
protected static final void applyCommonParameters(DefaultChatRequestParameters.Builder<?> target, dev.langchain4j.model.watsonx.WatsonxChatBase.Builder<?> builder)
-