From d39bea6e85d534f92cc2a62b57d05e90c6f08ae0 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Sat, 1 Jul 2023 09:42:44 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(loading.py):=20convert=20ret?= =?UTF-8?q?riever=20to=20retriever=20object=20if=20it=20has=20"as=5Fretrie?= =?UTF-8?q?ver"=20method=20The=20code=20now=20checks=20if=20the=20"retriev?= =?UTF-8?q?er"=20key=20exists=20in=20the=20params=20dictionary=20and=20if?= =?UTF-8?q?=20the=20value=20has=20an=20"as=5Fretriever"=20method.=20If=20i?= =?UTF-8?q?t=20does,=20the=20value=20is=20replaced=20with=20the=20result?= =?UTF-8?q?=20of=20calling=20the=20"as=5Fretriever"=20method.=20This=20cha?= =?UTF-8?q?nge=20ensures=20that=20the=20"retriever"=20parameter=20is=20alw?= =?UTF-8?q?ays=20an=20instance=20of=20the=20retriever=20object,=20preventi?= =?UTF-8?q?ng=20potential=20attribute=20errors=20later=20in=20the=20code.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/interface/initialize/loading.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/backend/langflow/interface/initialize/loading.py b/src/backend/langflow/interface/initialize/loading.py index f214ab74b..9c618b1cd 100644 --- a/src/backend/langflow/interface/initialize/loading.py +++ b/src/backend/langflow/interface/initialize/loading.py @@ -100,6 +100,8 @@ def instantiate_llm(node_type, class_object, params: Dict): def instantiate_memory(node_type, class_object, params): try: + if "retriever" in params and hasattr(params["retriever"], "as_retriever"): + params["retriever"] = params["retriever"].as_retriever() return class_object(**params) # I want to catch a specific attribute error that happens # when the object does not have a cursor attribute