feat!: rename the type BaseChatMessageHistory to Memory (#5190)
* chore: rename the type BaseChatMessageHistory to Memory * Added Memory type with same color as BaseChatMessageHistory * [autofix.ci] apply automated fixes --------- Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
parent
e79b1649a5
commit
2db5f93bd4
18 changed files with 32 additions and 29 deletions
|
|
@ -3,7 +3,8 @@ from abc import abstractmethod
|
|||
from langchain.memory import ConversationBufferMemory
|
||||
|
||||
from langflow.custom import Component
|
||||
from langflow.field_typing import BaseChatMemory, BaseChatMessageHistory
|
||||
from langflow.field_typing import BaseChatMemory
|
||||
from langflow.field_typing.constants import Memory
|
||||
from langflow.template import Output
|
||||
|
||||
|
||||
|
|
@ -32,5 +33,5 @@ class LCChatMemoryComponent(Component):
|
|||
return ConversationBufferMemory(chat_memory=self.build_message_history())
|
||||
|
||||
@abstractmethod
|
||||
def build_message_history(self) -> BaseChatMessageHistory:
|
||||
def build_message_history(self) -> Memory:
|
||||
"""Builds the chat message history memory."""
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ class MemoryComponent(Component):
|
|||
HandleInput(
|
||||
name="memory",
|
||||
display_name="External Memory",
|
||||
input_types=["BaseChatMessageHistory"],
|
||||
input_types=["Memory"],
|
||||
info="Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
),
|
||||
DropdownInput(
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ class StoreMessageComponent(Component):
|
|||
HandleInput(
|
||||
name="memory",
|
||||
display_name="External Memory",
|
||||
input_types=["BaseChatMessageHistory"],
|
||||
input_types=["Memory"],
|
||||
info="The external memory to store the message. If empty, it will use the Langflow tables.",
|
||||
),
|
||||
MessageTextInput(
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import os
|
|||
from astrapy.admin import parse_api_endpoint
|
||||
|
||||
from langflow.base.memory.model import LCChatMemoryComponent
|
||||
from langflow.field_typing import BaseChatMessageHistory
|
||||
from langflow.field_typing.constants import Memory
|
||||
from langflow.inputs import MessageTextInput, SecretStrInput, StrInput
|
||||
|
||||
|
||||
|
|
@ -49,7 +49,7 @@ class AstraDBChatMemory(LCChatMemoryComponent):
|
|||
),
|
||||
]
|
||||
|
||||
def build_message_history(self) -> BaseChatMessageHistory:
|
||||
def build_message_history(self) -> Memory:
|
||||
try:
|
||||
from langchain_astradb.chat_message_histories import AstraDBChatMessageHistory
|
||||
except ImportError as e:
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
from langflow.base.memory.model import LCChatMemoryComponent
|
||||
from langflow.field_typing import BaseChatMessageHistory
|
||||
from langflow.field_typing.constants import Memory
|
||||
from langflow.inputs import DictInput, MessageTextInput, SecretStrInput
|
||||
|
||||
|
||||
|
|
@ -49,7 +49,7 @@ class CassandraChatMemory(LCChatMemoryComponent):
|
|||
),
|
||||
]
|
||||
|
||||
def build_message_history(self) -> BaseChatMessageHistory:
|
||||
def build_message_history(self) -> Memory:
|
||||
from langchain_community.chat_message_histories import CassandraChatMessageHistory
|
||||
|
||||
try:
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ from urllib import parse
|
|||
from langchain_community.chat_message_histories.redis import RedisChatMessageHistory
|
||||
|
||||
from langflow.base.memory.model import LCChatMemoryComponent
|
||||
from langflow.field_typing import BaseChatMessageHistory
|
||||
from langflow.field_typing.constants import Memory
|
||||
from langflow.inputs import IntInput, MessageTextInput, SecretStrInput, StrInput
|
||||
|
||||
|
||||
|
|
@ -31,7 +31,7 @@ class RedisIndexChatMemory(LCChatMemoryComponent):
|
|||
),
|
||||
]
|
||||
|
||||
def build_message_history(self) -> BaseChatMessageHistory:
|
||||
def build_message_history(self) -> Memory:
|
||||
kwargs = {}
|
||||
password: str | None = self.password
|
||||
if self.key_prefix:
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
from langflow.base.memory.model import LCChatMemoryComponent
|
||||
from langflow.field_typing import BaseChatMessageHistory
|
||||
from langflow.field_typing.constants import Memory
|
||||
from langflow.inputs import DropdownInput, MessageTextInput, SecretStrInput
|
||||
|
||||
|
||||
|
|
@ -24,7 +24,7 @@ class ZepChatMemory(LCChatMemoryComponent):
|
|||
),
|
||||
]
|
||||
|
||||
def build_message_history(self) -> BaseChatMessageHistory:
|
||||
def build_message_history(self) -> Memory:
|
||||
try:
|
||||
# Monkeypatch API_BASE_PATH to
|
||||
# avoid 404
|
||||
|
|
|
|||
|
|
@ -25,6 +25,8 @@ from langflow.schema.message import Message
|
|||
NestedDict: TypeAlias = dict[str, str | dict]
|
||||
LanguageModel = TypeVar("LanguageModel", BaseLanguageModel, BaseLLM, BaseChatModel)
|
||||
ToolEnabledLanguageModel = TypeVar("ToolEnabledLanguageModel", BaseLanguageModel, BaseLLM, BaseChatModel)
|
||||
Memory = TypeVar("Memory", bound=BaseChatMessageHistory)
|
||||
|
||||
Retriever = TypeVar(
|
||||
"Retriever",
|
||||
BaseRetriever,
|
||||
|
|
@ -65,7 +67,7 @@ LANGCHAIN_BASE_TYPES = {
|
|||
"BaseMemory": BaseMemory,
|
||||
"BaseChatMemory": BaseChatMemory,
|
||||
"BaseChatModel": BaseChatModel,
|
||||
"BaseChatMessageHistory": BaseChatMessageHistory,
|
||||
"Memory": Memory,
|
||||
}
|
||||
# Langchain base types plus Python base types
|
||||
CUSTOM_COMPONENT_SUPPORTED_TYPES = {
|
||||
|
|
|
|||
|
|
@ -573,7 +573,7 @@
|
|||
"show": true,
|
||||
"title_case": false,
|
||||
"type": "code",
|
||||
"value": "from langflow.custom import Component\nfrom langflow.helpers.data import data_to_text\nfrom langflow.inputs import HandleInput\nfrom langflow.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output\nfrom langflow.memory import aget_messages\nfrom langflow.schema import Data\nfrom langflow.schema.message import Message\nfrom langflow.utils.constants import MESSAGE_SENDER_AI, MESSAGE_SENDER_USER\n\n\nclass MemoryComponent(Component):\n display_name = \"Message History\"\n description = \"Retrieves stored chat messages from Langflow tables or an external memory.\"\n icon = \"message-square-more\"\n name = \"Memory\"\n\n inputs = [\n HandleInput(\n name=\"memory\",\n display_name=\"External Memory\",\n input_types=[\"BaseChatMessageHistory\"],\n info=\"Retrieve messages from an external memory. If empty, it will use the Langflow tables.\",\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER, \"Machine and User\"],\n value=\"Machine and User\",\n info=\"Filter by sender type.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Filter by sender name.\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Messages\",\n value=100,\n info=\"Number of messages to retrieve.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n DropdownInput(\n name=\"order\",\n display_name=\"Order\",\n options=[\"Ascending\", \"Descending\"],\n value=\"Ascending\",\n info=\"Order of the messages.\",\n advanced=True,\n tool_mode=True,\n ),\n MultilineInput(\n name=\"template\",\n display_name=\"Template\",\n info=\"The template to use for formatting the data. \"\n \"It can contain the keys {text}, {sender} or any other key in the message data.\",\n value=\"{sender_name}: {text}\",\n advanced=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Data\", name=\"messages\", method=\"retrieve_messages\"),\n Output(display_name=\"Text\", name=\"messages_text\", method=\"retrieve_messages_as_text\"),\n ]\n\n async def retrieve_messages(self) -> Data:\n sender = self.sender\n sender_name = self.sender_name\n session_id = self.session_id\n n_messages = self.n_messages\n order = \"DESC\" if self.order == \"Descending\" else \"ASC\"\n\n if sender == \"Machine and User\":\n sender = None\n\n if self.memory:\n # override session_id\n self.memory.session_id = session_id\n\n stored = await self.memory.aget_messages()\n # langchain memories are supposed to return messages in ascending order\n if order == \"DESC\":\n stored = stored[::-1]\n if n_messages:\n stored = stored[:n_messages]\n stored = [Message.from_lc_message(m) for m in stored]\n if sender:\n expected_type = MESSAGE_SENDER_AI if sender == MESSAGE_SENDER_AI else MESSAGE_SENDER_USER\n stored = [m for m in stored if m.type == expected_type]\n else:\n stored = await aget_messages(\n sender=sender,\n sender_name=sender_name,\n session_id=session_id,\n limit=n_messages,\n order=order,\n )\n self.status = stored\n return stored\n\n async def retrieve_messages_as_text(self) -> Message:\n stored_text = data_to_text(self.template, await self.retrieve_messages())\n self.status = stored_text\n return Message(text=stored_text)\n"
|
||||
"value": "from langflow.custom import Component\nfrom langflow.helpers.data import data_to_text\nfrom langflow.inputs import HandleInput\nfrom langflow.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output\nfrom langflow.memory import aget_messages\nfrom langflow.schema import Data\nfrom langflow.schema.message import Message\nfrom langflow.utils.constants import MESSAGE_SENDER_AI, MESSAGE_SENDER_USER\n\n\nclass MemoryComponent(Component):\n display_name = \"Message History\"\n description = \"Retrieves stored chat messages from Langflow tables or an external memory.\"\n icon = \"message-square-more\"\n name = \"Memory\"\n\n inputs = [\n HandleInput(\n name=\"memory\",\n display_name=\"External Memory\",\n input_types=[\"Memory\"],\n info=\"Retrieve messages from an external memory. If empty, it will use the Langflow tables.\",\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER, \"Machine and User\"],\n value=\"Machine and User\",\n info=\"Filter by sender type.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Filter by sender name.\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Messages\",\n value=100,\n info=\"Number of messages to retrieve.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n DropdownInput(\n name=\"order\",\n display_name=\"Order\",\n options=[\"Ascending\", \"Descending\"],\n value=\"Ascending\",\n info=\"Order of the messages.\",\n advanced=True,\n tool_mode=True,\n ),\n MultilineInput(\n name=\"template\",\n display_name=\"Template\",\n info=\"The template to use for formatting the data. \"\n \"It can contain the keys {text}, {sender} or any other key in the message data.\",\n value=\"{sender_name}: {text}\",\n advanced=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Data\", name=\"messages\", method=\"retrieve_messages\"),\n Output(display_name=\"Text\", name=\"messages_text\", method=\"retrieve_messages_as_text\"),\n ]\n\n async def retrieve_messages(self) -> Data:\n sender = self.sender\n sender_name = self.sender_name\n session_id = self.session_id\n n_messages = self.n_messages\n order = \"DESC\" if self.order == \"Descending\" else \"ASC\"\n\n if sender == \"Machine and User\":\n sender = None\n\n if self.memory:\n # override session_id\n self.memory.session_id = session_id\n\n stored = await self.memory.aget_messages()\n # langchain memories are supposed to return messages in ascending order\n if order == \"DESC\":\n stored = stored[::-1]\n if n_messages:\n stored = stored[:n_messages]\n stored = [Message.from_lc_message(m) for m in stored]\n if sender:\n expected_type = MESSAGE_SENDER_AI if sender == MESSAGE_SENDER_AI else MESSAGE_SENDER_USER\n stored = [m for m in stored if m.type == expected_type]\n else:\n stored = await aget_messages(\n sender=sender,\n sender_name=sender_name,\n session_id=session_id,\n limit=n_messages,\n order=order,\n )\n self.status = stored\n return stored\n\n async def retrieve_messages_as_text(self) -> Message:\n stored_text = data_to_text(self.template, await self.retrieve_messages())\n self.status = stored_text\n return Message(text=stored_text)\n"
|
||||
},
|
||||
"memory": {
|
||||
"_input_type": "HandleInput",
|
||||
|
|
@ -582,7 +582,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -1838,7 +1838,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -2082,7 +2082,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -1128,7 +1128,7 @@
|
|||
"show": true,
|
||||
"title_case": false,
|
||||
"type": "code",
|
||||
"value": "from langflow.custom import Component\nfrom langflow.helpers.data import data_to_text\nfrom langflow.inputs import HandleInput\nfrom langflow.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output\nfrom langflow.memory import aget_messages\nfrom langflow.schema import Data\nfrom langflow.schema.message import Message\nfrom langflow.utils.constants import MESSAGE_SENDER_AI, MESSAGE_SENDER_USER\n\n\nclass MemoryComponent(Component):\n display_name = \"Message History\"\n description = \"Retrieves stored chat messages from Langflow tables or an external memory.\"\n icon = \"message-square-more\"\n name = \"Memory\"\n\n inputs = [\n HandleInput(\n name=\"memory\",\n display_name=\"External Memory\",\n input_types=[\"BaseChatMessageHistory\"],\n info=\"Retrieve messages from an external memory. If empty, it will use the Langflow tables.\",\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER, \"Machine and User\"],\n value=\"Machine and User\",\n info=\"Filter by sender type.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Filter by sender name.\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Messages\",\n value=100,\n info=\"Number of messages to retrieve.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n DropdownInput(\n name=\"order\",\n display_name=\"Order\",\n options=[\"Ascending\", \"Descending\"],\n value=\"Ascending\",\n info=\"Order of the messages.\",\n advanced=True,\n tool_mode=True,\n ),\n MultilineInput(\n name=\"template\",\n display_name=\"Template\",\n info=\"The template to use for formatting the data. \"\n \"It can contain the keys {text}, {sender} or any other key in the message data.\",\n value=\"{sender_name}: {text}\",\n advanced=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Data\", name=\"messages\", method=\"retrieve_messages\"),\n Output(display_name=\"Text\", name=\"messages_text\", method=\"retrieve_messages_as_text\"),\n ]\n\n async def retrieve_messages(self) -> Data:\n sender = self.sender\n sender_name = self.sender_name\n session_id = self.session_id\n n_messages = self.n_messages\n order = \"DESC\" if self.order == \"Descending\" else \"ASC\"\n\n if sender == \"Machine and User\":\n sender = None\n\n if self.memory:\n # override session_id\n self.memory.session_id = session_id\n\n stored = await self.memory.aget_messages()\n # langchain memories are supposed to return messages in ascending order\n if order == \"DESC\":\n stored = stored[::-1]\n if n_messages:\n stored = stored[:n_messages]\n stored = [Message.from_lc_message(m) for m in stored]\n if sender:\n expected_type = MESSAGE_SENDER_AI if sender == MESSAGE_SENDER_AI else MESSAGE_SENDER_USER\n stored = [m for m in stored if m.type == expected_type]\n else:\n stored = await aget_messages(\n sender=sender,\n sender_name=sender_name,\n session_id=session_id,\n limit=n_messages,\n order=order,\n )\n self.status = stored\n return stored\n\n async def retrieve_messages_as_text(self) -> Message:\n stored_text = data_to_text(self.template, await self.retrieve_messages())\n self.status = stored_text\n return Message(text=stored_text)\n"
|
||||
"value": "from langflow.custom import Component\nfrom langflow.helpers.data import data_to_text\nfrom langflow.inputs import HandleInput\nfrom langflow.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output\nfrom langflow.memory import aget_messages\nfrom langflow.schema import Data\nfrom langflow.schema.message import Message\nfrom langflow.utils.constants import MESSAGE_SENDER_AI, MESSAGE_SENDER_USER\n\n\nclass MemoryComponent(Component):\n display_name = \"Message History\"\n description = \"Retrieves stored chat messages from Langflow tables or an external memory.\"\n icon = \"message-square-more\"\n name = \"Memory\"\n\n inputs = [\n HandleInput(\n name=\"memory\",\n display_name=\"External Memory\",\n input_types=[\"Memory\"],\n info=\"Retrieve messages from an external memory. If empty, it will use the Langflow tables.\",\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER, \"Machine and User\"],\n value=\"Machine and User\",\n info=\"Filter by sender type.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Filter by sender name.\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Messages\",\n value=100,\n info=\"Number of messages to retrieve.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n DropdownInput(\n name=\"order\",\n display_name=\"Order\",\n options=[\"Ascending\", \"Descending\"],\n value=\"Ascending\",\n info=\"Order of the messages.\",\n advanced=True,\n tool_mode=True,\n ),\n MultilineInput(\n name=\"template\",\n display_name=\"Template\",\n info=\"The template to use for formatting the data. \"\n \"It can contain the keys {text}, {sender} or any other key in the message data.\",\n value=\"{sender_name}: {text}\",\n advanced=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Data\", name=\"messages\", method=\"retrieve_messages\"),\n Output(display_name=\"Text\", name=\"messages_text\", method=\"retrieve_messages_as_text\"),\n ]\n\n async def retrieve_messages(self) -> Data:\n sender = self.sender\n sender_name = self.sender_name\n session_id = self.session_id\n n_messages = self.n_messages\n order = \"DESC\" if self.order == \"Descending\" else \"ASC\"\n\n if sender == \"Machine and User\":\n sender = None\n\n if self.memory:\n # override session_id\n self.memory.session_id = session_id\n\n stored = await self.memory.aget_messages()\n # langchain memories are supposed to return messages in ascending order\n if order == \"DESC\":\n stored = stored[::-1]\n if n_messages:\n stored = stored[:n_messages]\n stored = [Message.from_lc_message(m) for m in stored]\n if sender:\n expected_type = MESSAGE_SENDER_AI if sender == MESSAGE_SENDER_AI else MESSAGE_SENDER_USER\n stored = [m for m in stored if m.type == expected_type]\n else:\n stored = await aget_messages(\n sender=sender,\n sender_name=sender_name,\n session_id=session_id,\n limit=n_messages,\n order=order,\n )\n self.status = stored\n return stored\n\n async def retrieve_messages_as_text(self) -> Message:\n stored_text = data_to_text(self.template, await self.retrieve_messages())\n self.status = stored_text\n return Message(text=stored_text)\n"
|
||||
},
|
||||
"memory": {
|
||||
"_input_type": "HandleInput",
|
||||
|
|
@ -1137,7 +1137,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -903,7 +903,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -848,7 +848,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
@ -1424,7 +1424,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
@ -3315,7 +3315,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -384,7 +384,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -1477,7 +1477,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
@ -2053,7 +2053,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
@ -2629,7 +2629,7 @@
|
|||
"dynamic": false,
|
||||
"info": "Retrieve messages from an external memory. If empty, it will use the Langflow tables.",
|
||||
"input_types": [
|
||||
"BaseChatMessageHistory"
|
||||
"Memory"
|
||||
],
|
||||
"list": false,
|
||||
"name": "memory",
|
||||
|
|
|
|||
|
|
@ -65,7 +65,6 @@ import {
|
|||
CopyPlus,
|
||||
CornerDownLeft,
|
||||
Cpu,
|
||||
CpuIcon,
|
||||
Database,
|
||||
DatabaseZap,
|
||||
Delete,
|
||||
|
|
@ -477,6 +476,7 @@ export const nodeColorsName: { [char: string]: string } = {
|
|||
Tool: "cyan",
|
||||
BaseChatMemory: "cyan",
|
||||
BaseChatMessageHistory: "orange",
|
||||
Memory: "orange",
|
||||
};
|
||||
|
||||
export const SIDEBAR_CATEGORIES = [
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue