66from langchain .docstore .document import Document
77from langchain .retrievers import ContextualCompressionRetriever
88from langchain .retrievers .document_compressors import EmbeddingsFilter , DocumentCompressorPipeline
9+ from langchain_aws .embeddings .bedrock import BedrockEmbeddings
910from langchain_community .document_transformers import EmbeddingsRedundantFilter
1011from langchain_community .embeddings import HuggingFaceHubEmbeddings
1112from langchain_community .vectorstores import FAISS
1213from langchain_community .embeddings import OllamaEmbeddings
1314from langchain_openai import OpenAIEmbeddings , AzureOpenAIEmbeddings
14- from ..models import OpenAI , Ollama , AzureOpenAI , HuggingFace
15+
16+ from ..models import OpenAI , Ollama , AzureOpenAI , HuggingFace , Bedrock
1517from .base_node import BaseNode
1618
1719
@@ -39,7 +41,8 @@ def __init__(self, input: str, output: List[str], node_config: dict, node_name:
3941
4042 self .llm_model = node_config ["llm" ]
4143 self .embedder_model = node_config .get ("embedder_model" , None )
42- self .verbose = True if node_config is None else node_config .get ("verbose" , False )
44+ self .verbose = True if node_config is None else node_config .get (
45+ "verbose" , False )
4346
4447 def execute (self , state : dict ) -> dict :
4548 """
@@ -80,7 +83,7 @@ def execute(self, state: dict) -> dict:
8083 },
8184 )
8285 chunked_docs .append (doc )
83-
86+
8487 if self .verbose :
8588 print ("--- (updated chunks metadata) ---" )
8689
@@ -104,6 +107,9 @@ def execute(self, state: dict) -> dict:
104107 embeddings = OllamaEmbeddings (** params )
105108 elif isinstance (embedding_model , HuggingFace ):
106109 embeddings = HuggingFaceHubEmbeddings (model = embedding_model .model )
110+ elif isinstance (embedding_model , Bedrock ):
111+ embeddings = BedrockEmbeddings (
112+ client = None , model_id = embedding_model .model_id )
107113 else :
108114 raise ValueError ("Embedding Model missing or not supported" )
109115
0 commit comments