Merge branch 'zustand/io/migration' of personal:logspace-ai/langflow into zustand/io/migration
This commit is contained in:
commit
ddd8dd3f7c
4 changed files with 12 additions and 37 deletions
|
|
@ -16,7 +16,7 @@ class MessageHistoryComponent(CustomComponent):
|
||||||
"options": ["Machine", "User", "Machine and User"],
|
"options": ["Machine", "User", "Machine and User"],
|
||||||
"display_name": "Sender Type",
|
"display_name": "Sender Type",
|
||||||
},
|
},
|
||||||
"sender_name": {"display_name": "Sender Name"},
|
"sender_name": {"display_name": "Sender Name", "advanced": True},
|
||||||
"n_messages": {
|
"n_messages": {
|
||||||
"display_name": "Number of Messages",
|
"display_name": "Number of Messages",
|
||||||
"info": "Number of messages to retrieve.",
|
"info": "Number of messages to retrieve.",
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ from langchain_core.documents import Document
|
||||||
from langflow.interface.custom.custom_component import CustomComponent
|
from langflow.interface.custom.custom_component import CustomComponent
|
||||||
from langflow.schema import Record
|
from langflow.schema import Record
|
||||||
from langflow.field_typing import Text
|
from langflow.field_typing import Text
|
||||||
from langflow.utils.util import unescape_string
|
from langflow.utils.util import build_loader_repr_from_records, unescape_string
|
||||||
|
|
||||||
|
|
||||||
class SplitTextComponent(CustomComponent):
|
class SplitTextComponent(CustomComponent):
|
||||||
|
|
@ -25,18 +25,18 @@ class SplitTextComponent(CustomComponent):
|
||||||
},
|
},
|
||||||
"separators": {
|
"separators": {
|
||||||
"display_name": "Separators",
|
"display_name": "Separators",
|
||||||
"info": 'The characters to split on.\nIf left empty defaults to [" "].',
|
"info": 'The characters to split on. Defaults to [" "].',
|
||||||
"is_list": True,
|
"is_list": True,
|
||||||
},
|
},
|
||||||
"chunk_size": {
|
"chunk_size": {
|
||||||
"display_name": "Chunk Size",
|
"display_name": "Max Chunk Size",
|
||||||
"info": "The maximum length of each chunk.",
|
"info": "The maximum length (in number of characters) of each chunk.",
|
||||||
"field_type": "int",
|
"field_type": "int",
|
||||||
"value": 1000,
|
"value": 1000,
|
||||||
},
|
},
|
||||||
"chunk_overlap": {
|
"chunk_overlap": {
|
||||||
"display_name": "Chunk Overlap",
|
"display_name": "Chunk Overlap",
|
||||||
"info": "The amount of overlap between chunks.",
|
"info": "The amount of character overlap between chunks.",
|
||||||
"field_type": "int",
|
"field_type": "int",
|
||||||
"value": 200,
|
"value": 200,
|
||||||
},
|
},
|
||||||
|
|
@ -54,6 +54,7 @@ class SplitTextComponent(CustomComponent):
|
||||||
chunk_overlap: Optional[int] = 200,
|
chunk_overlap: Optional[int] = 200,
|
||||||
recursive: bool = False,
|
recursive: bool = False,
|
||||||
) -> list[Record]:
|
) -> list[Record]:
|
||||||
|
|
||||||
separators = [unescape_string(x) for x in separators]
|
separators = [unescape_string(x) for x in separators]
|
||||||
|
|
||||||
# Make sure chunk_size and chunk_overlap are ints
|
# Make sure chunk_size and chunk_overlap are ints
|
||||||
|
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
import ast
|
|
||||||
import json
|
|
||||||
|
|
||||||
from langflow import CustomComponent
|
|
||||||
from langflow.schema import Record
|
|
||||||
|
|
||||||
|
|
||||||
class JSONInputComponent(CustomComponent):
|
|
||||||
display_name = "JSON Input"
|
|
||||||
description = "Load a JSON object as input."
|
|
||||||
|
|
||||||
def build_config(self):
|
|
||||||
return {
|
|
||||||
"json_str": {
|
|
||||||
"display_name": "JSON String",
|
|
||||||
"multiline": True,
|
|
||||||
"info": "The JSON string to load.",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def build(self, json_str: str) -> Record:
|
|
||||||
try:
|
|
||||||
data = json.loads(json_str)
|
|
||||||
except json.JSONDecodeError:
|
|
||||||
try:
|
|
||||||
data = ast.literal_eval(json_str)
|
|
||||||
except (SyntaxError, ValueError):
|
|
||||||
raise ValueError("Invalid JSON string.")
|
|
||||||
record = Record(data=data)
|
|
||||||
return record
|
|
||||||
|
|
@ -39,7 +39,11 @@ def get_messages(
|
||||||
)
|
)
|
||||||
|
|
||||||
records: list[Record] = []
|
records: list[Record] = []
|
||||||
|
# messages_df has a timestamp
|
||||||
|
# it gets the last 5 messages, for example
|
||||||
|
# but now they are ordered from most recent to least recent
|
||||||
|
# so we need to reverse the order
|
||||||
|
messages_df = messages_df[::-1] if order == "DESC" else messages_df
|
||||||
for row in messages_df.itertuples():
|
for row in messages_df.itertuples():
|
||||||
record = Record(
|
record = Record(
|
||||||
data={
|
data={
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue