Skip to main content

Processing components in Langflow

Processing components process and transform data within a flow.

Use a processing component in a flow

The Split Text processing component in this flow splits the incoming Data into chunks to be embedded into the vector store component.

The component offers control over chunk size, overlap, and separator, which affect context and granularity in vector store retrieval results.

Alter metadata

This component modifies metadata of input objects. It can add new metadata, update existing metadata, and remove specified metadata fields. The component works with both Message and Data objects, and can also create a new Data object from user-provided text.

Inputs

NameDisplay NameInfo
input_valueInputObjects to which Metadata should be added
text_inUser TextText input; the value will be in the 'text' attribute of the Data object. Empty text entries are ignored.
metadataMetadataMetadata to add to each object
remove_fieldsFields to RemoveMetadata Fields to Remove

Outputs

NameDisplay NameInfo
dataDataList of Input objects, each with added metadata

Combine text

This component concatenates two text sources into a single text chunk using a specified delimiter.

Inputs

NameDisplay NameInfo
first_textFirst TextThe first text input to concatenate.
second_textSecond TextThe second text input to concatenate.
delimiterDelimiterA string used to separate the two text inputs. Defaults to a space.

Outputs

NameDisplay NameInfo
messageMessageA Message object containing the combined text.

Create data

important

This component is in Legacy, which means it is no longer in active development as of Langflow version 1.1.3.

This component dynamically creates a Data object with a specified number of fields.

Inputs

NameDisplay NameInfo
number_of_fieldsNumber of FieldsThe number of fields to be added to the record.
text_keyText KeyKey that identifies the field to be used as the text content.
text_key_validatorText Key ValidatorIf enabled, checks if the given Text Key is present in the given Data.

Outputs

NameDisplay NameInfo
dataDataA Data object created with the specified fields and text key.

Data combiner

important

Prior to Langflow version 1.1.3, this component was named Merge Data.

This component combines multiple data sources into a single unified Data object.

The component iterates through the input list of data objects, merging them into a single data object. If the input list is empty, it returns an empty data object. If there's only one input data object, it returns that object unchanged. The merging process uses the addition operator to combine data objects.

Inputs

NameDisplay NameInfo
dataDataA list of data objects to be merged.

Outputs

NameDisplay NameInfo
merged_dataMerged DataA single Data object containing the combined information from all input data objects.

DataFrame operations

This component performs the following operations on Pandas DataFrame:

OperationDescriptionRequired Inputs
Add ColumnAdds a new column with a constant valuenew_column_name, new_column_value
Drop ColumnRemoves a specified columncolumn_name
FilterFilters rows based on column valuecolumn_name, filter_value
HeadReturns first n rowsnum_rows
Rename ColumnRenames an existing columncolumn_name, new_column_name
Replace ValueReplaces values in a columncolumn_name, replace_value, replacement_value
Select ColumnsSelects specific columnscolumns_to_select
SortSorts DataFrame by columncolumn_name, ascending
TailReturns last n rowsnum_rows

Inputs

NameDisplay NameInfo
dfDataFrameThe input DataFrame to operate on.
operationOperationSelect the DataFrame operation to perform. Options: Add Column, Drop Column, Filter, Head, Rename Column, Replace Value, Select Columns, Sort, Tail
column_nameColumn NameThe column name to use for the operation.
filter_valueFilter ValueThe value to filter rows by.
ascendingSort AscendingWhether to sort in ascending order.
new_column_nameNew Column NameThe new column name when renaming or adding a column.
new_column_valueNew Column ValueThe value to populate the new column with.
columns_to_selectColumns to SelectList of column names to select.
num_rowsNumber of RowsNumber of rows to return (for head/tail). Default: 5
replace_valueValue to ReplaceThe value to replace in the column.
replacement_valueReplacement ValueThe value to replace with.

Outputs

NameDisplay NameInfo
outputDataFrameThe resulting DataFrame after the operation.

Data to message

important

Prior to Langflow version 1.1.3, this component was named Parse Data.

The ParseData component converts data objects into plain text using a specified template. This component transforms structured data into human-readable text formats, allowing for customizable output through the use of templates.

Inputs

NameDisplay NameInfo
dataDataThe data to convert to text.
templateTemplateThe template to use for formatting the data. It can contain the keys {text}, {data}, or any other key in the data.
sepSeparatorThe separator to use between multiple data items.

Outputs

NameDisplay NameInfo
textTextThe resulting formatted text string as a Message object.

Filter data

important

This component is in Beta as of Langflow version 1.1.3, and is not yet fully supported.

This component filters a Data object based on a list of keys.

Inputs

NameDisplay NameInfo
dataDataData object to filter.
filter_criteriaFilter CriteriaList of keys to filter by.

Outputs

NameDisplay NameInfo
filtered_dataFiltered DataA new Data object containing only the key-value pairs that match the filter criteria.

Filter values

important

This component is in Beta as of Langflow version 1.1.3, and is not yet fully supported.

The Filter values component filters a list of data items based on a specified key, filter value, and comparison operator.

Inputs

NameDisplay NameInfo
input_dataInput dataThe list of data items to filter.
filter_keyFilter KeyThe key to filter on, for example, 'route'.
filter_valueFilter ValueThe value to filter by, for example, 'CMIP'.
operatorComparison OperatorThe operator to apply for comparing the values.

Outputs

NameDisplay NameInfo
filtered_dataFiltered dataThe resulting list of filtered data items.

JSON cleaner

The JSON cleaner component cleans JSON strings to ensure they are fully compliant with the JSON specification.

Inputs

NameDisplay NameInfo
json_strJSON StringThe JSON string to be cleaned. This can be a raw, potentially malformed JSON string produced by language models or other sources that may not fully comply with JSON specifications.
remove_control_charsRemove Control CharactersIf set to True, this option removes control characters (ASCII characters 0-31 and 127) from the JSON string. This can help eliminate invisible characters that might cause parsing issues or make the JSON invalid.
normalize_unicodeNormalize UnicodeWhen enabled, this option normalizes Unicode characters in the JSON string to their canonical composition form (NFC). This ensures consistent representation of Unicode characters across different systems and prevents potential issues with character encoding.
validate_jsonValidate JSONIf set to True, this option attempts to parse the JSON string to ensure it is well-formed before applying the final repair operation. It raises a ValueError if the JSON is invalid, allowing for early detection of major structural issues in the JSON.

Outputs

NameDisplay NameInfo
outputCleaned JSON StringThe resulting cleaned, repaired, and validated JSON string that fully complies with the JSON specification.

LLM router

This component routes requests to the most appropriate LLM based on OpenRouter model specifications.

Inputs

NameDisplay NameInfo
modelsLanguage ModelsList of LLMs to route between
input_valueInputThe input message to be routed
judge_llmJudge LLMLLM that will evaluate and select the most appropriate model
optimizationOptimizationOptimization preference (quality/speed/cost/balanced)

Outputs

NameDisplay NameInfo
outputOutputThe response from the selected model
selected_modelSelected ModelName of the chosen model

Message to data

This component converts Message objects to Data objects.

Inputs

NameDisplay NameInfo
messageMessageThe Message object to convert to a Data object.

Outputs

NameDisplay NameInfo
dataDataThe converted Data object.

Parse DataFrame

This component converts DataFrames into plain text using templates.

Inputs

NameDisplay NameInfo
dfDataFrameThe DataFrame to convert to text rows
templateTemplateTemplate for formatting (use {column_name} placeholders)
sepSeparatorString to join rows in output

Outputs

NameDisplay NameInfo
textTextAll rows combined into single text

Parse JSON

important

This component is in Legacy, which means it is no longer in active development as of Langflow version 1.1.3.

This component converts and extracts JSON fields using JQ queries.

Inputs

NameDisplay NameInfo
input_valueInputData object to filter (Message or Data).
queryJQ QueryJQ Query to filter the data

Outputs

NameDisplay NameInfo
filtered_dataFiltered DataFiltered data as list of Data objects.

Select data

important

This component is in Legacy, which means it is no longer in active development as of Langflow version 1.1.3.

This component selects a single Data item from a list.

Inputs

NameDisplay NameInfo
data_listData ListList of data to select from
data_indexData IndexIndex of the data to select

Outputs

NameDisplay NameInfo
selected_dataSelected DataThe selected Data object.

Split text

This component splits text into chunks based on specified criteria.

Inputs

NameDisplay NameInfo
data_inputsInput DocumentsThe data to split.The component accepts Data or DataFrame objects.
chunk_overlapChunk OverlapThe number of characters to overlap between chunks. Default: 200.
chunk_sizeChunk SizeThe maximum number of characters in each chunk. Default: 1000.
separatorSeparatorThe character to split on. Default: newline.
text_keyText KeyThe key to use for the text column (advanced). Default: text.

Outputs

NameDisplay NameInfo
chunksChunksList of split text chunks as Data objects.
dataframeDataFrameList of split text chunks as DataFrame objects.

Update data

This component dynamically updates or appends data with specified fields.

Inputs

NameDisplay NameInfo
old_dataDataThe records to update
number_of_fieldsNumber of FieldsNumber of fields to add (max 15)
text_keyText KeyKey for text content
text_key_validatorText Key ValidatorValidates text key presence

Outputs

NameDisplay NameInfo
dataDataUpdated Data objects.
Search