add custom nodes for signature, fix some problem
This commit is contained in:
parent
d157fffee3
commit
df43dbc6bc
2 changed files with 12 additions and 0 deletions
|
|
@ -7,6 +7,7 @@ from langflow.template.frontend_node.base import FrontendNode
|
||||||
from langflow.template.frontend_node.memories import MemoryFrontendNode
|
from langflow.template.frontend_node.memories import MemoryFrontendNode
|
||||||
from langflow.utils.logger import logger
|
from langflow.utils.logger import logger
|
||||||
from langflow.utils.util import build_template_from_class
|
from langflow.utils.util import build_template_from_class
|
||||||
|
from langflow.custom.customs import get_custom_nodes
|
||||||
|
|
||||||
|
|
||||||
class MemoryCreator(LangChainTypeCreator):
|
class MemoryCreator(LangChainTypeCreator):
|
||||||
|
|
@ -26,6 +27,8 @@ class MemoryCreator(LangChainTypeCreator):
|
||||||
def get_signature(self, name: str) -> Optional[Dict]:
|
def get_signature(self, name: str) -> Optional[Dict]:
|
||||||
"""Get the signature of a memory."""
|
"""Get the signature of a memory."""
|
||||||
try:
|
try:
|
||||||
|
if name in get_custom_nodes(self.type_name).keys():
|
||||||
|
return get_custom_nodes(self.type_name)[name]
|
||||||
return build_template_from_class(name, memory_type_to_cls_dict)
|
return build_template_from_class(name, memory_type_to_cls_dict)
|
||||||
except ValueError as exc:
|
except ValueError as exc:
|
||||||
raise ValueError("Memory not found") from exc
|
raise ValueError("Memory not found") from exc
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,11 @@ from langflow.template.template.base import Template
|
||||||
class MemoryFrontendNode(FrontendNode):
|
class MemoryFrontendNode(FrontendNode):
|
||||||
#! Needs testing
|
#! Needs testing
|
||||||
def add_extra_fields(self) -> None:
|
def add_extra_fields(self) -> None:
|
||||||
|
# chat history should have another way to add common field?
|
||||||
|
# prevent adding incorect field in ChatMessageHistory
|
||||||
|
if "BaseChatMessageHistory" in self.base_classes:
|
||||||
|
pass
|
||||||
|
|
||||||
# add return_messages field
|
# add return_messages field
|
||||||
self.template.add_field(
|
self.template.add_field(
|
||||||
TemplateField(
|
TemplateField(
|
||||||
|
|
@ -65,6 +70,10 @@ class MemoryFrontendNode(FrontendNode):
|
||||||
field.value = ""
|
field.value = ""
|
||||||
if field.name == "memory_key":
|
if field.name == "memory_key":
|
||||||
field.value = "chat_history"
|
field.value = "chat_history"
|
||||||
|
if field.name == "chat_memory":
|
||||||
|
field.show = True
|
||||||
|
field.advanced = False
|
||||||
|
field.required = False
|
||||||
|
|
||||||
|
|
||||||
class PostgresChatMessageHistoryFrontendNode(MemoryFrontendNode):
|
class PostgresChatMessageHistoryFrontendNode(MemoryFrontendNode):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue