Package dev.langchain4j.model.bedrock
Class BedrockStreamingChatModel
java.lang.Object
dev.langchain4j.model.bedrock.BedrockStreamingChatModel
- All Implemented Interfaces:
dev.langchain4j.model.chat.StreamingChatModel
public class BedrockStreamingChatModel
extends Object
implements dev.langchain4j.model.chat.StreamingChatModel
BedrockStreamingChatModel uses the Bedrock ConverseAPI.
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final BedrockChatRequestParametersprotected final List<dev.langchain4j.model.chat.listener.ChatModelListener> protected final software.amazon.awssdk.regions.Regionprotected final booleanprotected final booleanprotected final Duration -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected software.amazon.awssdk.core.document.DocumentadditionalRequestModelFieldsFrom(dev.langchain4j.model.chat.request.ChatRequestParameters chatRequestParameters) protected dev.langchain4j.data.message.AiMessageaiMessageFrom(software.amazon.awssdk.services.bedrockruntime.model.ConverseResponse converseResponse) builder()protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlockconvertContent(dev.langchain4j.data.message.Content content) protected List<software.amazon.awssdk.services.bedrockruntime.model.ContentBlock> convertContents(List<dev.langchain4j.data.message.Content> contents) protected software.amazon.awssdk.services.bedrockruntime.model.MessageconvertToBedRockMessage(dev.langchain4j.data.message.ChatMessage message) protected List<software.amazon.awssdk.services.bedrockruntime.model.ContentBlock> convertToolRequests(List<dev.langchain4j.agent.tool.ToolExecutionRequest> requests) protected software.amazon.awssdk.services.bedrockruntime.model.MessagecreateAiMessage(dev.langchain4j.data.message.AiMessage message) protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlockcreateImageBlock(dev.langchain4j.data.message.ImageContent imageContent) protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlockcreateToolResultBlock(dev.langchain4j.data.message.ToolExecutionResultMessage toolResult) protected software.amazon.awssdk.services.bedrockruntime.model.MessagecreateUserMessage(dev.langchain4j.data.message.UserMessage message) protected static FloatdblToFloat(Double d) voiddoChat(dev.langchain4j.model.chat.request.ChatRequest chatRequest, dev.langchain4j.model.chat.response.StreamingChatResponseHandler handler) protected static Stringprotected List<software.amazon.awssdk.services.bedrockruntime.model.Message> extractRegularMessages(List<dev.langchain4j.data.message.ChatMessage> messages) protected List<software.amazon.awssdk.services.bedrockruntime.model.SystemContentBlock> extractSystemMessages(List<dev.langchain4j.data.message.ChatMessage> messages) protected software.amazon.awssdk.services.bedrockruntime.model.ToolConfigurationextractToolConfigurationFrom(dev.langchain4j.model.chat.request.ChatRequest chatRequest) protected dev.langchain4j.model.output.FinishReasonfinishReasonFrom(software.amazon.awssdk.services.bedrockruntime.model.StopReason stopReason) protected voidhandleToolResult(dev.langchain4j.data.message.ToolExecutionResultMessage toolResult, List<software.amazon.awssdk.services.bedrockruntime.model.ContentBlock> blocks, List<software.amazon.awssdk.services.bedrockruntime.model.Message> bedrockMessages, int currentIndex, List<dev.langchain4j.data.message.ChatMessage> allMessages) protected software.amazon.awssdk.services.bedrockruntime.model.InferenceConfigurationinferenceConfigFrom(dev.langchain4j.model.chat.request.ChatRequestParameters parameters) List<dev.langchain4j.model.chat.listener.ChatModelListener> dev.langchain4j.model.ModelProviderprovider()protected dev.langchain4j.model.output.TokenUsagetokenUsageFrom(software.amazon.awssdk.services.bedrockruntime.model.TokenUsage tokenUsage) protected static voidvalidate(dev.langchain4j.model.chat.request.ChatRequestParameters parameters) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface dev.langchain4j.model.chat.StreamingChatModel
chat, chat, chat, supportedCapabilities
-
Field Details
-
region
protected final software.amazon.awssdk.regions.Region region -
timeout
-
returnThinking
protected final boolean returnThinking -
sendThinking
protected final boolean sendThinking -
defaultRequestParameters
-
listeners
-
-
Constructor Details
-
BedrockStreamingChatModel
-
BedrockStreamingChatModel
-
-
Method Details
-
doChat
public void doChat(dev.langchain4j.model.chat.request.ChatRequest chatRequest, dev.langchain4j.model.chat.response.StreamingChatResponseHandler handler) - Specified by:
doChatin interfacedev.langchain4j.model.chat.StreamingChatModel
-
defaultRequestParameters
- Specified by:
defaultRequestParametersin interfacedev.langchain4j.model.chat.StreamingChatModel
-
listeners
- Specified by:
listenersin interfacedev.langchain4j.model.chat.StreamingChatModel
-
provider
public dev.langchain4j.model.ModelProvider provider()- Specified by:
providerin interfacedev.langchain4j.model.chat.StreamingChatModel
-
builder
-
extractSystemMessages
-
extractRegularMessages
-
handleToolResult
protected void handleToolResult(dev.langchain4j.data.message.ToolExecutionResultMessage toolResult, List<software.amazon.awssdk.services.bedrockruntime.model.ContentBlock> blocks, List<software.amazon.awssdk.services.bedrockruntime.model.Message> bedrockMessages, int currentIndex, List<dev.langchain4j.data.message.ChatMessage> allMessages) -
createToolResultBlock
protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlock createToolResultBlock(dev.langchain4j.data.message.ToolExecutionResultMessage toolResult) -
convertToBedRockMessage
protected software.amazon.awssdk.services.bedrockruntime.model.Message convertToBedRockMessage(dev.langchain4j.data.message.ChatMessage message) -
createUserMessage
protected software.amazon.awssdk.services.bedrockruntime.model.Message createUserMessage(dev.langchain4j.data.message.UserMessage message) -
createAiMessage
protected software.amazon.awssdk.services.bedrockruntime.model.Message createAiMessage(dev.langchain4j.data.message.AiMessage message) -
convertToolRequests
-
convertContents
-
convertContent
protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlock convertContent(dev.langchain4j.data.message.Content content) -
createImageBlock
protected software.amazon.awssdk.services.bedrockruntime.model.ContentBlock createImageBlock(dev.langchain4j.data.message.ImageContent imageContent) -
extractToolConfigurationFrom
protected software.amazon.awssdk.services.bedrockruntime.model.ToolConfiguration extractToolConfigurationFrom(dev.langchain4j.model.chat.request.ChatRequest chatRequest) -
aiMessageFrom
protected dev.langchain4j.data.message.AiMessage aiMessageFrom(software.amazon.awssdk.services.bedrockruntime.model.ConverseResponse converseResponse) -
tokenUsageFrom
protected dev.langchain4j.model.output.TokenUsage tokenUsageFrom(software.amazon.awssdk.services.bedrockruntime.model.TokenUsage tokenUsage) -
finishReasonFrom
protected dev.langchain4j.model.output.FinishReason finishReasonFrom(software.amazon.awssdk.services.bedrockruntime.model.StopReason stopReason) -
inferenceConfigFrom
protected software.amazon.awssdk.services.bedrockruntime.model.InferenceConfiguration inferenceConfigFrom(dev.langchain4j.model.chat.request.ChatRequestParameters parameters) -
additionalRequestModelFieldsFrom
protected software.amazon.awssdk.core.document.Document additionalRequestModelFieldsFrom(dev.langchain4j.model.chat.request.ChatRequestParameters chatRequestParameters) -
validate
protected static void validate(dev.langchain4j.model.chat.request.ChatRequestParameters parameters) -
dblToFloat
-
extractFilenameWithoutExtensionFromUri
-