Docs: Components cleanup (#5987)

* docs: Expand vector stores documentation with new components

Add detailed documentation for:
- AstraDB Graph vector store
- Elasticsearch vector store

Update existing documentation links and improve component descriptions

* filesize-note

* docs: Update memory chatbot tutorial and add new components documentation

* docs: new-api-request-inputs

* docs: Update documentation to replace deprecated "Flow as Tool" with "Run flow" component

* docs: Add Tavily AI Search and Wikidata components documentation

* renamed-conditional-router

* move-url-component

* docs:url-fix

* Apply suggestions from code review

* docs: cloudflare links

* docs: improve link formatting

* docs: add output details

* docs: add SQL Query and Batch Run component

* fix-bottom-table

* avoid-future-tense

* code-review

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* fix-linking-errors

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
This commit is contained in:
Mendon Kissling 2025-01-31 15:25:58 -05:00 committed by GitHub
commit 31c6b1240b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 605 additions and 66 deletions

View file

@ -174,14 +174,15 @@ inputs = [
]
```
## Add flows as tools
## Use the Run Flow component as a tool
An agent can use flows that are saved in your workspace as tools with the [Flow as Tool](/components-logic#flow-as-tool) component.
An agent can use flows that are saved in your workspace as tools with the [Run flow](/components-logic#run-flow) component.
1. To add a **Flow as Tool** component, click and drag a **Flow as Tool** component to your workspace.
1. To add a **Run flow** component, click and drag a **Run flow** component to your workspace.
2. Select the flow you want the agent to use as a tool.
3. Enable **Tool Mode** in the component.
3. Connect the tool output to the agent's tools input.
4. Ask the agent, `What tools are you using to answer my questions?`
Your **Flow as Tool** flow should be visible in the response.
Your flow should be visible in the response.

View file

@ -24,20 +24,30 @@ In this example of a document ingestion pipeline, the URL component outputs raw
## API Request
This component sends HTTP requests to the specified URLs.
Use this component to interact with external APIs or services and retrieve data. Ensure that the URLs are valid and that you configure the method, headers, body, and timeout correctly.
This component makes HTTP requests using URLs or cURL commands.
### Inputs
| Name | Display Name | Info |
| ------- | ------------ | -------------------------------------------------------------------------- |
| URLs | URLs | The URLs to target |
| curl | curl | Paste a curl command to fill in the dictionary fields for headers and body |
| Method | HTTP Method | The HTTP method to use, such as GET or POST |
| Headers | Headers | The headers to include with the request |
| Body | Request Body | The data to send with the request (for methods like POST, PATCH, PUT) |
| Timeout | Timeout | The maximum time to wait for a response |
| Name | Display Name | Info |
|------|--------------|------|
| urls | URLs | Enter one or more URLs, separated by commas. |
| curl | cURL | Paste a curl command to populate the dictionary fields for headers and body. |
| method | Method | The HTTP method to use. |
| use_curl | Use cURL | Enable cURL mode to populate fields from a cURL command. |
| query_params | Query Parameters | The query parameters to append to the URL. |
| body | Body | The body to send with the request as a dictionary (for `POST`, `PATCH`, `PUT`). |
| headers | Headers | The headers to send with the request as a dictionary. |
| timeout | Timeout | The timeout to use for the request. |
| follow_redirects | Follow Redirects | Whether to follow http redirects. |
| save_to_file | Save to File | Save the API response to a temporary file |
| include_httpx_metadata | Include HTTPx Metadata | Include properties such as `headers`, `status_code`, `response_headers`, and `redirection_history` in the output. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | The result of the API requests. |
## Directory
@ -51,10 +61,10 @@ This component recursively loads files from a directory, with options for file t
| types | MessageTextInput | File types to load (leave empty to load all types) |
| depth | IntInput | Depth to search for files |
| max_concurrency | IntInput | Maximum concurrency for loading files |
| load_hidden | BoolInput | If true, hidden files will be loaded |
| recursive | BoolInput | If true, the search will be recursive |
| silent_errors | BoolInput | If true, errors will not raise an exception |
| use_multithreading | BoolInput | If true, multithreading will be used |
| load_hidden | BoolInput | If true, hidden files are loaded |
| recursive | BoolInput | If true, the search is recursive |
| silent_errors | BoolInput | If true, errors do not raise an exception |
| use_multithreading | BoolInput | If true, multithreading is used |
### Outputs
@ -67,12 +77,14 @@ This component recursively loads files from a directory, with options for file t
The FileComponent is a class that loads and parses text files of various supported formats, converting the content into a Data object. It supports multiple file types and provides an option for silent error handling.
The maximum supported file size is 100 MB.
### Inputs
| Name | Display Name | Info |
| ------------- | ------------- | -------------------------------------------- |
| path | Path | File path to load. |
| silent_errors | Silent Errors | If true, errors will not raise an exception. |
| silent_errors | Silent Errors | If true, errors do not raise an exception. |
### Outputs
@ -80,22 +92,6 @@ The FileComponent is a class that loads and parses text files of various support
| ---- | ------------ | -------------------------------------------- |
| data | Data | Parsed content of the file as a Data object. |
## URL
The URLComponent is a class that fetches content from one or more URLs, processes the content, and returns it as a list of Data objects. It ensures that the provided URLs are valid and uses WebBaseLoader to fetch the content.
### Inputs
| Name | Display Name | Info |
| ---- | ------------ | ---------------------- |
| urls | URLs | Enter one or more URLs |
### Outputs
| Name | Display Name | Info |
| ---- | ------------ | ------------------------------------------------------------ |
| data | Data | List of Data objects containing fetched content and metadata |
## Gmail Loader
This component loads emails from Gmail using provided credentials and filters.
@ -160,11 +156,47 @@ For more on creating a service account JSON, see [Service Account JSON](https://
| doc_titles | List[str] | Titles of the found documents |
| Data | Data | Document titles and URLs in a structured format |
## SQL Query
This component executes SQL queries on a specified database.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| query | Query | The SQL query to execute. |
| database_url | Database URL | The URL of the database. |
| include_columns | Include Columns | Include columns in the result. |
| passthrough | Passthrough | If an error occurs, return the query instead of raising an exception. |
| add_error | Add Error | Add the error to the result. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| result | Result | The result of the SQL query execution. |
## URL
This component fetches content from one or more URLs, processes the content, and returns it as a list of [Data](/concepts-objects) objects.
### Inputs
| Name | Display Name | Info |
| ---- | ------------ | ---------------------- |
| urls | URLs | Enter one or more URLs |
### Outputs
| Name | Display Name | Info |
| ---- | ------------ | ------------------------------------------------------------ |
| data | Data | List of Data objects containing fetched content and metadata |
## Webhook
This component defines a webhook input for the flow. The flow can be triggered by an external HTTP POST request (webhook) sending a JSON payload.
If the input is not valid JSON, the component will wrap it in a "payload" field. The component's status will reflect any errors or the processed data.
If the input is not valid JSON, the component wraps it in a "payload" field. The component's status reflects any errors on the processed data.
### Inputs

View file

@ -55,6 +55,11 @@ This component is used to load embedding models from [Amazon Bedrock](https://aw
## Astra DB vectorize
:::important
This component is deprecated as of Langflow version 1.1.2.
Instead, use the [Astra DB vector store component](/components-vector-stores#astra-db-vector-store)
:::
Connect this component to the **Embeddings** port of the [Astra DB vector store component](/components-vector-stores#astra-db-vector-store) to generate embeddings.
This component requires that your Astra DB database has a collection that uses a vectorize embedding provider integration.
@ -96,6 +101,28 @@ This component generates embeddings using Azure OpenAI models.
|------|------|-------------|
| embeddings | Embeddings | An instance for generating embeddings using Azure OpenAI |
## Cloudflare Workers AI Embeddings
This component generates embeddings using [Cloudflare Workers AI models](https://developers.cloudflare.com/workers-ai/).
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| account_id | Cloudflare account ID |[Find your Cloudflare account ID](https://developers.cloudflare.com/fundamentals/setup/find-account-and-zone-ids/#find-account-id-workers-and-pages) |
| api_token | Cloudflare API token | [Create an API token](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/) |
| model_name | Model Name | [List of supported models](https://developers.cloudflare.com/workers-ai/models/#text-embeddings) |
| strip_new_lines | Strip New Lines | Whether to strip new lines from the input text |
| batch_size | Batch Size | Number of texts to embed in each batch |
| api_base_url | Cloudflare API base URL | Base URL for the Cloudflare API |
| headers | Headers | Additional request headers |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| embeddings | Embeddings | An instance for generating embeddings using Cloudflare Workers |
## Cohere Embeddings
This component is used to load embedding models from [Cohere](https://cohere.com/).
@ -169,11 +196,17 @@ Use this component to generate embeddings using locally downloaded Hugging Face
| Model Name | Model Name | Name of the HuggingFace model to use |
| Multi Process | Multi-Process | Whether to use multiple processes |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| embeddings | Embeddings | The generated embeddings |
## Hugging Face embeddings Inference API
This component generates embeddings using Hugging Face Inference API models.
This component generates embeddings using [Hugging Face Inference API models](https://huggingface.co/).
Use this component to create embeddings with Hugging Face's hosted models. Ensure you have a valid Hugging Face API key.
Use this component to create embeddings with Hugging Face's hosted models.
### Inputs
@ -187,9 +220,35 @@ Use this component to create embeddings with Hugging Face's hosted models. Ensur
| Model Kwargs | Model Arguments | Additional arguments for the model |
| Multi Process | Multi-Process | Whether to use multiple processes |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| embeddings | Embeddings | The generated embeddings |
## LM Studio Embeddings
This component generates embeddings using [LM Studio](https://lmstudio.ai/docs) models.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| model | Model | The LM Studio model to use for generating embeddings |
| base_url | LM Studio Base URL | The base URL for the LM Studio API |
| api_key | LM Studio API Key | API key for authentication with LM Studio |
| temperature | Model Temperature | Temperature setting for the model |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| embeddings | Embeddings | The generated embeddings |
## MistralAI
This component generates embeddings using MistralAI models.
This component generates embeddings using [MistralAI](https://docs.mistral.ai/) models.
### Inputs
@ -210,7 +269,7 @@ This component generates embeddings using MistralAI models.
## NVIDIA
This component generates embeddings using NVIDIA models.
This component generates embeddings using [NVIDIA models](https://docs.nvidia.com).
### Inputs
@ -229,7 +288,7 @@ This component generates embeddings using NVIDIA models.
## Ollama Embeddings
This component generates embeddings using Ollama models.
This component generates embeddings using [Ollama models](https://ollama.com/).
### Inputs

View file

@ -17,6 +17,25 @@ This example flow stores and retrieves chat history from an [AstraDBChatMemory](
![Sample Flow storing Chat Memory in AstraDB](/img/astra_db_chat_memory_rounded.png)
## Batch Run Component
The Batch Run component runs a language model over each row of a [DataFrame](/concepts-objects#dataframe-object) text column and returns a new DataFrame with the original text and the model's response.
### Inputs
| Name | Display Name | Type | Info | Required |
|------|--------------|------|------|----------|
| model | Language Model | HandleInput | Connect the 'Language Model' output from your LLM component here. | Yes |
| system_message | System Message | MultilineInput | Multi-line system instruction for all rows in the DataFrame. | No |
| df | DataFrame | DataFrameInput | The DataFrame whose column (specified by 'column_name') will be treated as text messages. | Yes |
| column_name | Column Name | StrInput | The name of the DataFrame column to treat as text messages. Default='text'. | Yes |
### Outputs
| Name | Display Name | Method | Info |
|------|--------------|--------|------|
| batch_results | Batch Results | run_batch | A DataFrame with two columns: 'text_input' and 'model_response'. |
## Create List
This component dynamically creates a record with a specified number of fields.
@ -28,6 +47,12 @@ This component dynamically creates a record with a specified number of fields.
| n_fields | Number of Fields | Number of fields to be added to the record. |
| text_key | Text Key | Key used as text. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| list | List | The dynamically created list with the specified number of fields. |
## Current date
The Current Date component returns the current date and time in a selected timezone. This component provides a flexible way to obtain timezone-specific date and time information within a Langflow pipeline.
@ -48,11 +73,17 @@ The Current Date component returns the current date and time in a selected timez
This component generates a unique ID.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| unique_id| Value | The generated unique ID. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| value | Value | Unique ID generated. |
| id | ID | The generated unique ID. |
## Message history
@ -82,7 +113,7 @@ This component retrieves and manages chat messages from Langflow tables or an ex
| messages_text | Messages (Text) | Retrieved messages formatted as text. |
| lc_memory | Memory | A constructed Langchain [ConversationBufferMemory](https://api.python.langchain.com/en/latest/memory/langchain.memory.buffer.ConversationBufferMemory.html) object |
## Store Message
## Message store
This component stores chat messages or text into Langflow tables or an external memory.
@ -120,4 +151,7 @@ This component transforms LLM responses into structured data formats.
### Output
| structured_output | Structured Output | The resulting structured output based on the defined schema. |
| Name | Display Name | Info |
|------|--------------|------|
| stored_messages | Stored Messages | structured output based on the defined schema. |

View file

@ -34,7 +34,7 @@ The use of asynchronous messaging patterns is recommended for system scalability
It includes code examples of REST and gRPC implementations to demonstrate integration approaches.
```
## Conditional router
## Conditional router (If-Else component)
This component routes an input message to a corresponding output based on text comparison.
@ -82,7 +82,12 @@ This component is particularly useful in workflows that require conditional rout
| false_output | Data/List | Output when the condition is not met. |
## Flow as Tool {#flow-as-tool}
## Flow as tool {#flow-as-tool}
:::important
This component is deprecated as of Langflow version 1.1.2.
Instead, use the [Run flow component](/components-logic#run-flow)
:::
This component constructs a tool from a function that runs a loaded flow.
@ -153,6 +158,23 @@ This component generates a notification for the Listen component to use.
|--------|------|-----------------------------------------|
| output | Data | The data stored in the notification. |
## Pass message
This component forwards the input message, unchanged.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| input_message | Input Message | The message to be passed forward. |
| ignored_message | Ignored Message | A second message to be ignored. Used as a workaround for continuity. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| output_message | Output Message | The forwarded input message. |
## Run flow
This component allows you to run a specified flow with given inputs and tweaks.
@ -173,7 +195,12 @@ The RunFlowComponent executes a specified flow within a larger workflow. It prov
|-------------|-------------|------------------------------------------------|
| run_outputs | List[Data] | The results generated from running the flow. |
## Sub Flow
## Sub flow
:::important
This component is deprecated as of Langflow version 1.1.2.
Instead, use the [Run flow component](/components-logic#run-flow)
:::
This `SubFlowComponent` generates a component from a flow with all of its inputs and outputs.

View file

@ -61,6 +61,53 @@ This component creates a `CassandraChatMessageHistory` instance, enabling storag
|-----------------|-------------------------|--------------------------------------------------------------|
| message_history | BaseChatMessageHistory | An instance of CassandraChatMessageHistory for the session. |
## Mem0 Chat Memory
The Mem0 Chat Memory component retrieves and stores chat messages using Mem0 memory storage.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| mem0_config | Mem0 Configuration | Configuration dictionary for initializing Mem0 memory instance. |
| ingest_message | Message to Ingest | The message content to be ingested into Mem0 memory. |
| existing_memory | Existing Memory Instance | Optional existing Mem0 memory instance. |
| user_id | User ID | Identifier for the user associated with the messages. |
| search_query | Search Query | Input text for searching related memories in Mem0. |
| mem0_api_key | Mem0 API Key | API key for Mem0 platform (leave empty to use the local version). |
| metadata | Metadata | Additional metadata to associate with the ingested message. |
| openai_api_key | OpenAI API Key | API key for OpenAI. This item is required if you use OpenAI embeddings without a provided configuration. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| memory | Mem0 Memory | The resulting Mem0 Memory object after ingesting data. |
| search_results | Search Results | The search results from querying Mem0 memory. |
## Redis Chat Memory
This component retrieves and stores chat messages from Redis.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| host | hostname | IP address or hostname. |
| port | port | Redis Port Number. |
| database | database | Redis database. |
| username | Username | The Redis user name. |
| password | Password | The password for username. |
| key_prefix | Key prefix | Key prefix. |
| session_id | Session ID | Session ID for the message. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| memory | Memory | The Redis chat message history object |
## ZepChatMemory Component
This component creates a `ZepChatMessageHistory` instance, enabling storage and retrieval of chat messages using Zep, a memory server for Large Language Models (LLMs).

View file

@ -9,12 +9,31 @@ 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](/concepts-objects) into chunks to be embedded into the vector store component.
The **Split Text** processing component in this flow splits the incoming [Data](/concepts-objects) 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.
![](/img/vector-store-document-ingestion.png)
## 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](/concepts-objects) and [Data](/concepts-objects) objects, and can also create a new Data object from user-provided text.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| input_value | Input | Objects to which Metadata should be added |
| text_in | User Text | Text input; value will be in 'text' attribute of Data object. Empty text entries are ignored. |
| metadata | Metadata | Metadata to add to each object |
| remove_fields | Fields to Remove | Metadata Fields to Remove |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | List of Input objects, each with added Metadata |
## Combine Text
This component concatenates two text sources into a single text chunk using a specified delimiter.
@ -153,3 +172,166 @@ This component splits text into chunks of a specified length.
| max_chunk_size | Max Chunk Size | The maximum length, in characters, of each chunk. |
| chunk_overlap | Chunk Overlap | The amount of character overlap between chunks. |
| recursive | Recursive | Whether to split recursively. |
## LLM Router
This component routes requests to the most appropriate LLM based on OpenRouter model specifications.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| models | Language Models | List of LLMs to route between |
| input_value | Input | The input message to be routed |
| judge_llm | Judge LLM | LLM that will evaluate and select the most appropriate model |
| optimization | Optimization | Optimization preference (quality/speed/cost/balanced) |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| output | Output | The response from the selected model |
| selected_model | Selected Model | Name of the chosen model |
## Merge Data (Data Combiner)
This component combines data using different operations.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| data_inputs | Data Inputs | Data to combine (minimum 2 inputs required) |
| operation | Operation Type | Operation to perform (Concatenate/Append/Merge/Join) |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| combined_data | DataFrame | The combined data result |
## Message to Data
This component converts Message objects to Data objects.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| message | Message | The Message object to convert to a Data object |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | The converted Data object |
## Parse Data (Data to Message)
This component converts Data objects into Messages using templated formatting.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | The data to convert to text (can be list) |
| template | Template | Template for formatting (`{text}`, `{data`, or any key in Data) |
| sep | Separator | Separator between multiple data items |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| text | Message | Data as a single Message |
| data_list | Data List | Data as list of new Data objects |
## Parse DataFrame
This component converts DataFrames into plain text using templates.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| df | DataFrame | The DataFrame to convert to text rows |
| template | Template | Template for formatting (use `{column_name}` placeholders) |
| sep | Separator | String to join rows in output |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| text | Text | All rows combined into single text |
## Parse JSON Data
This component converts and extracts JSON fields using JQ queries.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| input_value | Input | Data object to filter (Message or Data) |
| query | JQ Query | JQ Query to filter the data |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| filtered_data | Filtered Data | Filtered data as list of Data objects |
## Select Data
This component selects a single data item from a list.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| data_list | Data List | List of data to select from |
| data_index | Data Index | Index of the data to select |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| selected_data | Selected Data | The selected Data object |
## Split Text
This component splits text into chunks based on specified criteria.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| data_inputs | Data Inputs | The data to split |
| chunk_overlap | Chunk Overlap | Number of characters to overlap between chunks |
| chunk_size | Chunk Size | Maximum number of characters in each chunk |
| separator | Separator | Character to split on (defaults to newline) |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| chunks | Chunks | List of split text chunks as Data objects |
| dataframe | DataFrame | The chunks as a DataFrame |
## Update Data
This component dynamically updates or appends data with specified fields.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| old_data | Data | The records to update |
| number_of_fields | Number of Fields | Number of fields to add (max 15) |
| text_key | Text Key | Key for text content |
| text_key_validator | Text Key Validator | Validates text key presence |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | Updated Data objects |

View file

@ -25,6 +25,25 @@ To make a component into a tool that an agent can use, enable **Tool mode** in t
If the component you want to connect to an agent doesn't have a **Tool mode** option, you can modify the component's inputs to become a tool.
For an example, see [Make any component a tool](/agents-tool-calling-agent-component#make-any-component-a-tool).
## arXiv
This component searches and retrieves papers from [arXiv.org](https://arXiv.org).
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| search_query | Search Query | The search query for arXiv papers (for example, `quantum computing`) |
| search_type | Search Field | The field to search in |
| max_results | Max Results | Maximum number of results to return |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| papers | Papers | List of retrieved arXiv papers |
## Astra DB Tool
The `Astra DB Tool` allows agents to connect to and query data from Astra DB collections.
@ -110,7 +129,7 @@ This component creates a tool for performing basic arithmetic operations on a gi
| Name | Type | Description |
|------------|--------|--------------------------------------------------------------------|
| expression | String | The arithmetic expression to evaluate (e.g., `4*4*(33/22)+12-20`). |
| expression | String | The arithmetic expression to evaluate (for example, `4*4*(33/22)+12-20`). |
### Outputs
@ -141,6 +160,42 @@ This component runs Icosa's Combinatorial Reasoning (CR) pipeline on an input to
| optimized_prompt | Optimized Prompt| A message object containing the optimized prompt |
| reasons | Selected Reasons| A list of the selected reasons that are embedded in the optimized prompt|
## DuckDuckGo search
This component performs web searches using the [DuckDuckGo](https://www.duckduckgo.com) search engine with result-limiting capabilities.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| input_value | Search Query | The search query to be used for the DuckDuckGo search |
| max_results | Max Results | Maximum number of results to return |
| max_snippet_length | Max Snippet Length | Maximum length of each result snippet |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | List of search results as Data objects |
## Exa Search
This component provides an [https://exa.ai/](Exa Search) toolkit for search and content retrieval.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| metaphor_api_key | Exa Search API Key | API key for Exa Search (entered as a password) |
| use_autoprompt | Use Autoprompt | Whether to use autoprompt feature (default: true) |
| search_num_results | Search Number of Results | Number of results to return for search (default: 5) |
| similar_num_results | Similar Number of Results | Number of similar results to return (default: 5) |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| tools | Tools | List of search tools provided by the toolkit |
## Glean Search API
This component allows you to call the Glean Search API.
@ -353,6 +408,47 @@ This component creates a tool for searching using the Serp API.
| results | List[Data]| List of search results |
| tool | Tool | Serp API search tool for use in LangChain |
## Tavily AI Search
This component performs searches using the Tavily AI search engine, which is optimized for LLMs and RAG applications.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| api_key | Tavily API Key | Your Tavily API Key. |
| query | Search Query | The search query you want to execute with Tavily. |
| search_depth | Search Depth | The depth of the search. |
| topic | Search Topic | The category of the search. |
| max_results | Max Results | The maximum number of search results to return. |
| include_images | Include Images | Include a list of query-related images in the response. |
| include_answer | Include Answer | Include a short answer to original query. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | The search results as a list of Data objects. |
| text | Text | The search results formatted as a text string. |
## Wikidata
This component performs a search using the Wikidata API.
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| query | Query | The text query for similarity search on Wikidata. |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| data | Data | The search results from Wikidata API as a list of Data objects. |
| text | Message | The search results formatted as a text message. |
## Wikipedia API
This component creates a tool for searching and retrieving information from Wikipedia.

View file

@ -13,10 +13,6 @@ Vector database components are distinct from [memory components](/components-mem
## Use a vector store component in a flow
Vector databases can be populated from within Langflow with document ingestion pipelines, like the following
![](/img/vector-store-document-ingestion.png)
This example uses the **Astra DB vector store** component. Your vector store component's parameters and authentication may be different, but the document ingestion workflow is the same. A document is loaded from a local machine and chunked. The Astra DB vector store generates embeddings with the connected [model](/components-models) component, and stores them in the connected Astra DB database.
This vector data can then be retrieved for workloads like Retrieval Augmented Generation.
@ -63,8 +59,42 @@ For more information, see the [DataStax documentation](https://docs.datastax.com
| Name | Display Name | Info |
|------|--------------|------|
| vector_store | Vector Store | Built Astra DB vector store |
| search_results | Search Results | Results of the similarity search as a list of Data objects |
| vector_store | Vector Store | Astra DB vector store instance configured with the specified parameters. |
| search_results | Search Results | The results of the similarity search as a list of `Data` objects. |
## AstraDB Graph vector store
This component implements a Vector Store using AstraDB with graph capabilities.
For more information, see the [Astra DB Serverless documentation](https://docs.datastax.com/en/astra-db-serverless/tutorials/graph-rag.html).
### Inputs
| Name | Display Name | Info |
|------|--------------|------|
| collection_name | Collection Name | The name of the collection within AstraDB where the vectors will be stored (required) |
| token | Astra DB Application Token | Authentication token for accessing AstraDB (required) |
| api_endpoint | API Endpoint | API endpoint URL for the AstraDB service (required) |
| search_input | Search Input | Query string for similarity search |
| ingest_data | Ingest Data | Data to be ingested into the vector store |
| namespace | Namespace | Optional namespace within AstraDB to use for the collection |
| embedding | Embedding Model | Embedding model to use |
| metric | Metric | Distance metric for vector comparisons (options: "cosine", "euclidean", "dot_product") |
| setup_mode | Setup Mode | Configuration mode for setting up the vector store (options: "Sync", "Async", "Off") |
| pre_delete_collection | Pre Delete Collection | Boolean flag to determine whether to delete the collection before creating a new one |
| number_of_results | Number of Results | Number of results to return in similarity search (default: 4) |
| search_type | Search Type | Search type to use (options: "Similarity", "Graph Traversal", "Hybrid") |
| traversal_depth | Traversal Depth | Maximum depth for graph traversal searches (default: 1) |
| search_score_threshold | Search Score Threshold | Minimum similarity score threshold for search results |
| search_filter | Search Metadata Filter | Optional dictionary of filters to apply to the search query |
### Outputs
| Name | Display Name | Info |
|------|--------------|------|
| vector_store | Vector Store | Astra DB graph vector store instance configured with the specified parameters. |
| search_results | Search Results | The results of the similarity search as a list of `Data` objects. |
## Cassandra
@ -98,8 +128,8 @@ For more information, see the [Cassandra documentation](https://cassandra.apache
| Name | Type | Description |
|------|------|-------------|
| vector_store | Cassandra | Cassandra vector store instance |
| search_results | List[Data] | Results of similarity search |
| vector_store | Cassandra | A Cassandra vector store instance configured with the specified parameters. |
| search_results | List[Data] | The results of the similarity search as a list of `Data` objects. |
## Cassandra Graph Vector Store
@ -129,8 +159,8 @@ This component implements a Cassandra Graph Vector Store with search capabilitie
| Name | Display Name | Info |
|------|--------------|------|
| vector_store | Vector Store | Built Cassandra Graph vector store |
| search_results | Search Results | Results of the similarity search as a list of Data objects |
| vector_store | Vector Store | A Cassandra Graph vector store instance configured with the specified parameters. |
| search_results | Search Results | The results of the similarity search as a list of `Data` objects. |
## Chroma DB
@ -223,6 +253,34 @@ For more information, see the [Couchbase documentation](https://docs.couchbase.c
|----------------|------------------------|--------------------------------|
| vector_store | CouchbaseVectorStore | A Couchbase vector store instance configured with the specified parameters. |
## Elasticsearch
This component creates an Elasticsearch Vector Store with search capabilities.
For more information, see the [Elasticsearch documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/dense-vector.html).
### Inputs
| Name | Type | Description |
|------|------|-------------|
| es_url | String | Elasticsearch server URL |
| es_user | String | Username for Elasticsearch authentication |
| es_password | SecretString | Password for Elasticsearch authentication |
| index_name | String | Name of the Elasticsearch index |
| strategy | String | Strategy for vector search ("approximate_k_nearest_neighbors" or "script_scoring") |
| distance_strategy | String | Strategy for distance calculation ("COSINE", "EUCLIDEAN_DISTANCE", "DOT_PRODUCT") |
| search_query | String | Query for similarity search |
| ingest_data | Data | Data to be ingested into the vector store |
| embedding | Embeddings | Embedding function to use |
| number_of_results | Integer | Number of results to return in search (default: 4) |
### Outputs
| Name | Type | Description |
|------|------|-------------|
| vector_store | ElasticsearchStore | Elasticsearch vector store instance |
| search_results | List[Data] | Results of similarity search |
## FAISS
This component creates a FAISS Vector Store with search capabilities.
@ -282,8 +340,8 @@ This component implements a Vector Store using HCD.
| Name | Display Name | Info |
|------|--------------|------|
| vector_store | Vector Store | Built HCD vector store instance |
| search_results | Search Results | Results of similarity search as a list of Data objects |
| vector_store | Vector Store | An HCD vector store instance The results of the similarity search as a list of `Data` objects.|
| search_results | Search Results | The results of the similarity search as a list of `Data` objects. |
## Milvus
@ -345,7 +403,7 @@ For more information, see the [MongoDB Atlas documentation](https://www.mongodb.
## Opensearch
This component creates an Opensearch vector store with search capabilities
For more information, see [Opensearch documentation](https://opensearch.org/platform/search/vector-database.html)
For more information, see [Opensearch documentation](https://opensearch.org/platform/search/vector-database.html).
### Inputs
@ -633,8 +691,6 @@ For more information, see the [Weaviate Documentation](https://weaviate.io/devel
|--------------|------------------|-------------------------------|
| vector_store | WeaviateVectorStore | Weaviate vector store instance |
**Note:** Ensure Weaviate instance is running and accessible. Verify API key, index name, text key, and attributes are set correctly.
## Weaviate Search
This component searches a Weaviate Vector Store for documents similar to the input.
@ -659,3 +715,6 @@ For more information, see the [Weaviate Documentation](https://weaviate.io/devel
| Name | Type | Description |
|----------------|------------|----------------------------|
| search_results | List[Data] | Results of similarity search |

View file

@ -128,6 +128,8 @@ The following table lists the environment variables supported by Langflow.
| <Link id="LANGFLOW_HEALTH_CHECK_MAX_RETRIES"/>`LANGFLOW_HEALTH_CHECK_MAX_RETRIES` | Integer | `5` | Set the maximum number of retries for the health check.<br/>See [`--health-check-max-retries` option](./configuration-cli.md#run-health-check-max-retries). |
| <Link id="LANGFLOW_HOST"/>`LANGFLOW_HOST` | String | `127.0.0.1` | The host on which the Langflow server will run.<br/>See [`--host` option](./configuration-cli.md#run-host). |
| <Link id="LANGFLOW_LANGCHAIN_CACHE"/>`LANGFLOW_LANGCHAIN_CACHE` | `InMemoryCache`<br/>`SQLiteCache` | `InMemoryCache` | Type of cache to use.<br/>See [`--cache` option](./configuration-cli.md#run-cache). |
| <Link id="LANGFLOW_LOG_LEVEL"/>`LANGFLOW_LOG_LEVEL` | `DEBUG`<br/>`INFO`<br/>`WARNING`<br/>`ERROR`<br/>`CRITICAL` | `INFO` | Set the logging level for Langflow. |
| <Link id="LANGFLOW_LOG_FILE"/>`LANGFLOW_LOG_FILE` | String | Not set | Path to the log file. If not set, logs will be written to stdout. |
| <Link id="LANGFLOW_MAX_FILE_SIZE_UPLOAD"/>`LANGFLOW_MAX_FILE_SIZE_UPLOAD` | Integer | `100` | Set the maximum file size for the upload in megabytes.<br/>See [`--max-file-size-upload` option](./configuration-cli.md#run-max-file-size-upload). |
| <Link id="LANGFLOW_MCP_SERVER_ENABLED"/>`LANGFLOW_MCP_SERVER_ENABLED` | Boolean | `true` | If set to False, Langflow will not enable the MCP server. |
| <Link id="LANGFLOW_MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS"/>`LANGFLOW_MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS` | Boolean | `false` | If set to True, Langflow will send progress notifications in the MCP server. |

View file

@ -67,7 +67,7 @@ The **Message Logs** pane displays all previous messages, with each conversation
In the **Memory Chatbot** flow you created, the **Chat Memory** component references past interactions by **Session ID**. You can demonstrate this by modifying the **Session ID** value to switch between conversation histories.
1. In the **Session ID** field of the **Chat Memory** and **Chat Input** components, add a **Session ID** value like `MySessionID`.
2. Now, once you send a new message the **Playground**, you should have a new memory created on the **Memories** tab.
2. Now, once you send a new message the **Playground**, you should have a new memory created in the **Message Logs** pane.
3. Notice how your conversation is being stored in different memory sessions.
Learn more about chat memories in the [Memory](/components-memories) section.