Class WatsonxChatModel
java.lang.Object
dev.langchain4j.model.watsonx.WatsonxChatModel
- All Implemented Interfaces:
ChatModel
A
ChatModel implementation that integrates IBM watsonx.ai foundation models with LangChain4j.
Example usage:
ChatModel chatModel = WatsonxChatModel.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 constructingWatsonxChatModelinstances 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) static WatsonxChatModel.Builderbuilder()Returns a newWatsonxChatModel.Builderinstance.protected com.ibm.watsonx.ai.chat.ChatProvider<com.ibm.watsonx.ai.chat.ChatRequest, com.ibm.watsonx.ai.chat.TextChatResponse> doChat(ChatRequest chatRequest) protected final ChatResponseexecuteChat(ChatRequest chatRequest) protected final voidexecuteChatStreaming(ChatRequest chatRequest, StreamingChatResponseHandler handler) provider()
-
Field Details
-
chatService
protected final com.ibm.watsonx.ai.chat.ChatService chatService -
listeners
-
defaultRequestParameters
-
supportedCapabilities
-
strictJsonSchema
protected final boolean strictJsonSchema
-
-
Method Details
-
doChat
-
builder
Returns a newWatsonxChatModel.Builderinstance.Example usage:
ChatModel chatModel = WatsonxChatModel.builder() .baseUrl("https://...") // or use CloudRegion .apiKey("...") .projectId("...") .modelName("ibm/granite-4-h-small") .maxOutputTokens(0) .temperature(0.7) .build();- Returns:
WatsonxChatModel.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)
-