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
@@ -42,7 +44,8 @@ def __init__(self, input: str, output: List[str], node_config: dict, node_name:
4244 super ().__init__ (node_name , "node" , input , output , 2 , node_config )
4345 self .llm_model = node_config ["llm" ]
4446 self .embedder_model = node_config .get ("embedder_model" , None )
45- self .verbose = True if node_config is None else node_config .get ("verbose" , False )
47+ self .verbose = True if node_config is None else node_config .get (
48+ "verbose" , False )
4649
4750 def execute (self , state ):
4851 """
@@ -82,7 +85,7 @@ def execute(self, state):
8285 },
8386 )
8487 chunked_docs .append (doc )
85-
88+
8689 if self .verbose :
8790 print ("--- (updated chunks metadata) ---" )
8891
@@ -104,6 +107,9 @@ def execute(self, state):
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