From 7e6c77ee4fabd6635efbe24a64653ba5c8ef2ee7 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Thu, 22 Feb 2024 15:20:27 -0300 Subject: [PATCH 1/3] Refactor process_type function to handle lowercase field types --- src/backend/langflow/interface/custom/utils.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/backend/langflow/interface/custom/utils.py b/src/backend/langflow/interface/custom/utils.py index f0ef4444f..681b5f214 100644 --- a/src/backend/langflow/interface/custom/utils.py +++ b/src/backend/langflow/interface/custom/utils.py @@ -121,7 +121,13 @@ def get_field_properties(extra_field): def process_type(field_type: str): if field_type.startswith("list") or field_type.startswith("List"): return extract_inner_type(field_type) - return "prompt" if field_type == "Prompt" else field_type + + # field_type is a string can be Prompt or Code too + # so we just need to lower if it is the case + lowercase_type = field_type.lower() + if lowercase_type in ["prompt", "code"]: + return lowercase_type + return field_type def add_new_custom_field( From 0d55e42cebafa1c998b6f2418bec1e3272e664a1 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Thu, 22 Feb 2024 15:20:36 -0300 Subject: [PATCH 2/3] Remove Prompt class from types.py --- src/backend/langflow/utils/types.py | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 src/backend/langflow/utils/types.py diff --git a/src/backend/langflow/utils/types.py b/src/backend/langflow/utils/types.py deleted file mode 100644 index 3657d550e..000000000 --- a/src/backend/langflow/utils/types.py +++ /dev/null @@ -1,2 +0,0 @@ -class Prompt: - pass From c72ee729bfa7127b34e19a646b626e7a1501836b Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Thu, 22 Feb 2024 15:44:26 -0300 Subject: [PATCH 3/3] Add Code class to field_typing module --- src/backend/langflow/field_typing/__init__.py | 2 ++ src/backend/langflow/field_typing/constants.py | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/backend/langflow/field_typing/__init__.py b/src/backend/langflow/field_typing/__init__.py index de8f020c6..15ce03693 100644 --- a/src/backend/langflow/field_typing/__init__.py +++ b/src/backend/langflow/field_typing/__init__.py @@ -13,6 +13,7 @@ from .constants import ( Callable, Chain, ChatPromptTemplate, + Code, Data, Document, Embeddings, @@ -73,4 +74,5 @@ __all__ = [ "Prompt", "RangeSpec", "TemplateField", + "Code", ] diff --git a/src/backend/langflow/field_typing/constants.py b/src/backend/langflow/field_typing/constants.py index ed0c0e442..5977cd9f8 100644 --- a/src/backend/langflow/field_typing/constants.py +++ b/src/backend/langflow/field_typing/constants.py @@ -34,6 +34,10 @@ class Prompt: pass +class Code: + pass + + LANGCHAIN_BASE_TYPES = { "Chain": Chain, "AgentExecutor": AgentExecutor,