Langflow is a powerful tool for building and deploying AI-powered agents and workflows. http://www.langflow.org
Find a file
anovazzi1 af80b4c4e1 Squashed commit of the following:
commit 5c3f3dbb70
Author: italojohnny <italojohnnydosanjos@gmail.com>
Date:   Wed Jun 5 17:57:08 2024 -0300

    fix libs

commit 2c7d7616fa
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Wed Jun 5 17:45:17 2024 -0300

    fix selection bug on Messages Table

commit 183f0bcca5
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Wed Jun 5 17:28:01 2024 -0300

    update route

commit 79f998333f
Merge: be919f1bc bcdc329d1
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Wed Jun 5 16:51:59 2024 -0300

    Merge remote-tracking branch 'origin/dev' into SessionManagment

commit be919f1bca
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Tue Jun 4 17:06:16 2024 -0300

    Refactor: Remove commented code for chat history tab in IOModal

commit 91e3bd9151
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Tue Jun 4 16:33:05 2024 -0300

    Refactor: Remove select from delete session button

commit 83b837966d
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Tue Jun 4 15:53:51 2024 -0300

    Refactor: Make Reset Column button reset columns order

commit 254a2c423c
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Tue Jun 4 14:38:40 2024 -0300

    Refactor: Add ResetColumns component to improve table functionality

commit 5275126e64
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Tue Jun 4 14:06:38 2024 -0300

    chore: Update description text in SettingsPage

commit fb27528a00
Merge: 002475331 3369b54b8
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Mon Jun 3 22:17:15 2024 -0300

    Merge branch 'SessionManagment' of personal:langflow-ai/langflow into SessionManagment

commit 3369b54b83
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon Jun 3 20:03:40 2024 -0300

    Refactor: remove page size directly in css file

commit c8fad13a3c
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon Jun 3 19:42:06 2024 -0300

    Refactor: Remove “Page size” from table pagination

commit 49882e4201
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon Jun 3 19:34:43 2024 -0300

    Remove unnused imports

commit cd36ff8ad7
Merge: cdf9d77b4 adeaf4db9
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon Jun 3 19:28:44 2024 -0300

    Merge SessionManagement into SessionManagement

commit cdf9d77b45
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon Jun 3 19:25:47 2024 -0300

    Feat: Make the table last column non-resizable and add a restore columns button

commit 002475331e
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Mon Jun 3 18:27:35 2024 -0300

    update editable fields

commit adeaf4db91
Merge: d670ec8d6 818696a66
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 18:17:19 2024 -0300

    Merge branch 'SessionManagment' of https://github.com/langflow-ai/langflow into SessionManagment

commit d670ec8d64
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 18:17:15 2024 -0300

    🐛 (service.py): add missing 'id' column in SQL query to fix data retrieval issue
    💡 (service.py): add print statement for debugging SQL query
    ♻️ (index.tsx): reorder imports for better readability and maintainability

    ♻️ (flowStore.ts): remove trailing commas to improve code consistency and readability

    💡 (index.ts, storeUtils.ts): format type definitions for better readability

commit 818696a661
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Mon Jun 3 17:37:14 2024 -0300

    refactor: Add getSessions function to fetch available sessions in IOModal

commit 895df8c050
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 17:05:50 2024 -0300

    ♻️ (monitor.py, service.py): remove trailing whitespace to improve code cleanliness

commit 0e56617e26
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 17:05:39 2024 -0300

    ♻️ (monitor.py): refactor update_message to return MessageModelResponse
    ♻️ (service.py): update SQL query to use index instead of id
    ♻️ (api.tsx): refactor duplicate request check logic
     (check-duplicate-requests.ts): add helper to check and store duplicate requests
    🐛 (messagesStore.ts): fix message update logic to use index instead of id

commit 41c2d7feb5
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Mon Jun 3 14:48:05 2024 -0300

    start history in playgroundModal

commit 93568b4c0d
Merge: 21a8545dd f3922dfff
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 10:31:46 2024 -0300

     (tableComponent): add editable prop to TableComponent for column editing
     (API): add updateMessageApi function to update messages via API
     (chatView): add select dropdown for clearing builds and sessions
    ♻️ (use-messages-table): refactor to use messages store for setting messages
    ♻️ (use-remove-messages): remove setRows and use messages store for deletion
     (use-updateMessage): add hook for updating messages with API integration
    📝 (headerMessages): update header message text in messages page

     (messagesPage): add cell edit request handling for message updates
    ♻️ (messagesPage): refactor state management and hooks usage
     (types): add new types for chat and message handling

commit 21a8545ddb
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Mon Jun 3 10:29:58 2024 -0300

    ♻️ (monitor.py): change POST to DELETE for delete_messages endpoint
    ♻️ (schemas.py): remove unused MessageIds schema
    ♻️ (api.tsx): add missing commas in ApiInterceptor function
    🐛 (api.tsx): fix duplicate request check to include method "get"
    ♻️ (index.ts): change deleteMessagesFn to use DELETE method instead of POST
    ♻️ (use-remove-messages.tsx): clean up comments and improve error handling

commit f3922dfff6
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Sun Jun 2 19:38:15 2024 -0300

    refactor: Move editable attribute to TableComponent
    add update function, need to fix backend

commit 1a65af7602
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Sun Jun 2 18:07:45 2024 -0300

    move editable attribute to table Component

commit 729150a5a4
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Fri May 31 22:40:53 2024 -0300

    refactor(headerMessages): update text content in HeaderMessagesComponent

commit 1d06969364
Merge: 57c38acac 70f4fd077
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Fri May 31 17:47:08 2024 -0300

    Merge remote-tracking branch 'origin/ic/flow_eraser_dropdown' into SessionManagment

commit 57c38acace
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Fri May 31 13:43:41 2024 -0300

    💡 (schemas.py): add newline at end of file to follow PEP 8 guidelines

commit 602ebf7b15
Author: cristhianzl <cristhian.lousa@gmail.com>
Date:   Fri May 31 13:43:28 2024 -0300

     (monitor.py): add MessageIds schema for structured message deletion
    ♻️ (monitor.py): change delete_messages endpoint to POST for better semantics
    ♻️ (monitor.py): update delete_messages to use MessageIds schema
     (schemas.py): add MessageIds schema for structured message deletion
    🐛 (service.py): fix SQL query in delete_messages to use correct column name
     (index.tsx): add toTitleCase utility to format column headers
     (API/index.ts): add deleteMessagesFn to handle message deletion via API
     (headerMessages): add HeaderMessagesComponent for message management UI
     (use-messages-table): add useMessagesTable hook to fetch and manage messages
     (use-remove-messages): add useRemoveMessages hook to handle message deletion

    ♻️ (messagesPage): refactor messages page to use new messages store
     (messagesStore): create zustand store for managing messages state
     (types): add types for messages and zustand messages store

commit f79289f966
Author: ogabrielluiz <gabriel@langflow.org>
Date:   Fri May 31 09:38:05 2024 -0300

    feat: Add API endpoints for managing messages

    This commit adds new API endpoints for managing messages. It includes the ability to delete messages by their IDs, update a specific message, and delete all messages associated with a session. These changes are implemented in the `monitor.py`, `schema.py`, and `service.py` files.

commit a99d0c7eb0
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Wed May 29 17:48:12 2024 -0300

    refactor(tableComponent): update column definitions to include checkbox selection logic for first column

    feat(API): add support for excluding specific columns in getMessagesTable function

    fix(flowLogsModal): pass excludedFields parameter to getMessagesTable function

    refactor(GlobalVariablesPage): remove unnecessary checkbox selection properties from column definitions

    fix(messagesPage): pass excludedFields parameter to getMessagesTable function

    refactor(utils): add support for excluding specific columns in extractColumnsFromRows function

commit 022ef7c028
Author: anovazzi1 <otavio2204@gmail.com>
Date:   Wed May 29 17:15:21 2024 -0300

    feat: Add Messages page to SettingsPage

    Refactor the SettingsPage component to include a new "Messages" page. This page will be accessible through the "/settings/messages" route and will display messages related to user settings. The necessary changes have been made to the index.tsx file of the SettingsPage component and the routes.tsx file.

commit 70f4fd0770
Author: igorrCarvalho <igorsilvabhz6@gmail.com>
Date:   Mon May 27 21:36:00 2024 -0300

    Feat: Create the first version of the eraser tool
2024-06-05 18:53:29 -03:00
.devcontainer Update Python base image to version 3.10 in devcontainer.json 2024-04-17 11:21:05 -03:00
.github Refactor restart_space script to accept space and token as command line arguments 2024-06-05 15:40:30 -03:00
.vscode Add version check and new version notice (#1616) 2024-04-05 16:20:17 -03:00
deploy Update Docker image references to langflowai in GitHub workflows and Docker Compose files (#1793) 2024-04-29 13:38:18 -03:00
docker docker: improve image layout and backend-only/frontend-only images (#2071) 2024-06-05 04:46:14 -07:00
docker_example chore: Update docker volume mount path for langflow-data in pre.docker-compose.yml 2024-05-28 20:46:46 -03:00
docs Squashed commit of the following: 2024-06-05 18:53:29 -03:00
scripts Refactor restart_space script to accept space and token as command line arguments 2024-06-05 15:40:30 -03:00
src Squashed commit of the following: 2024-06-05 18:53:29 -03:00
tests feat: Refactor delete_multiple_flows endpoint to use DELETE method (#2029) 2024-06-05 11:02:42 -07:00
.env.example Changes default location for the database and adds the option to use the previous behavior (#1907) 2024-05-15 20:41:01 -03:00
.eslintrc.json 🔧 (.pre-commit-config.yaml): Add eslint@9.1.1 as a dependency and enable autofix for pretty-format-json hook 2024-05-02 19:27:40 -03:00
.gitattributes update attribute 2023-08-24 19:42:05 -03:00
.gitignore Update package versions, workflows, LLMChain and Graph sorting (#1674) 2024-04-11 12:20:56 -03:00
.pre-commit-config.yaml feat: Update pre-commit configuration 2024-05-30 19:13:15 -03:00
CODE_OF_CONDUCT.md Update contact email in CODE_OF_CONDUCT.md and pyproject.toml files 2024-04-18 11:55:40 -03:00
CONTRIBUTING.md Update repository URLs to use langflow-ai instead of logspace-ai (#1642) 2024-04-08 15:36:37 -03:00
eslint.config.js 🔧 (.pre-commit-config.yaml): Add eslint@9.1.1 as a dependency and enable autofix for pretty-format-json hook 2024-05-02 19:27:40 -03:00
LICENSE Update organization name and URLs in configuration files 2024-04-18 11:58:19 -03:00
Makefile (refactor) Update pytest arguments in Makefile for better test execution (#2063) 2024-06-04 08:59:02 -07:00
poetry.lock Squashed commit of the following: 2024-06-05 18:53:29 -03:00
pyproject.toml Squashed commit of the following: 2024-06-05 18:53:29 -03:00
README.md Update README.md 2024-06-05 16:24:13 -04:00
README.PT.md Add portuguese README 2024-06-05 17:01:19 -03:00
README.zh_CN.md Squashed commit of the following: 2024-06-05 18:53:29 -03:00
render.yaml refactor: Update Dockerfile and render.yaml for pre-release deployment 2024-06-03 14:05:33 -03:00

Langflow

A visual framework for building multi-agent and RAG applications

Open-source, Python-powered, fully customizable, LLM and vector store agnostic

Docs - Join our Discord - Follow us on X - Live demo

README in English README in Simplified Chinese

Your GIF

📝 Content

📦 Get Started

You can install Langflow with pip:

# Make sure you have >=Python 3.10 installed on your system.
# Install the pre-release version (recommended for the latest updates)
python -m pip install langflow --pre --force-reinstall

# or stable version
python -m pip install langflow -U

Then, run Langflow with:

python -m langflow run

You can also preview Langflow in HuggingFace Spaces. Clone the space using this link to create your own Langflow workspace in minutes.

🎨 Create Flows

Creating flows with Langflow is easy. Simply drag components from the sidebar onto the canvas and connect them to start building your application.

Explore by editing prompt parameters, grouping components into a single high-level component, and building your own Custom Components.

Once youre done, you can export your flow as a JSON file.

Load the flow with:

from langflow.load import run_flow_from_json

results = run_flow_from_json("path/to/flow.json", input_value="Hello, World!")

Deploy

Deploy Langflow on Google Cloud Platform

Follow our step-by-step guide to deploy Langflow on Google Cloud Platform (GCP) using Google Cloud Shell. The guide is available in the Langflow in Google Cloud Platform document.

Alternatively, click the "Open in Cloud Shell" button below to launch Google Cloud Shell, clone the Langflow repository, and start an interactive tutorial that will guide you through the process of setting up the necessary resources and deploying Langflow on your GCP project.

Open in Cloud Shell

Deploy on Railway

Use this template to deploy Langflow 1.0 Preview on Railway:

Deploy 1.0 Preview on Railway

Or this one to deploy Langflow 0.6.x:

Deploy on Railway

Deploy on Render

Deploy to Render

🖥️ Command Line Interface (CLI)

Langflow provides a command-line interface (CLI) for easy management and configuration.

Usage

You can run the Langflow using the following command:

langflow run [OPTIONS]

Each option is detailed below:

  • --help: Displays all available options.
  • --host: Defines the host to bind the server to. Can be set using the LANGFLOW_HOST environment variable. The default is 127.0.0.1.
  • --workers: Sets the number of worker processes. Can be set using the LANGFLOW_WORKERS environment variable. The default is 1.
  • --timeout: Sets the worker timeout in seconds. The default is 60.
  • --port: Sets the port to listen on. Can be set using the LANGFLOW_PORT environment variable. The default is 7860.
  • --env-file: Specifies the path to the .env file containing environment variables. The default is .env.
  • --log-level: Defines the logging level. Can be set using the LANGFLOW_LOG_LEVEL environment variable. The default is critical.
  • --components-path: Specifies the path to the directory containing custom components. Can be set using the LANGFLOW_COMPONENTS_PATH environment variable. The default is langflow/components.
  • --log-file: Specifies the path to the log file. Can be set using the LANGFLOW_LOG_FILE environment variable. The default is logs/langflow.log.
  • --cache: Selects the type of cache to use. Options are InMemoryCache and SQLiteCache. Can be set using the LANGFLOW_LANGCHAIN_CACHE environment variable. The default is SQLiteCache.
  • --dev/--no-dev: Toggles the development mode. The default is no-dev.
  • --path: Specifies the path to the frontend directory containing build files. This option is for development purposes only. Can be set using the LANGFLOW_FRONTEND_PATH environment variable.
  • --open-browser/--no-open-browser: Toggles the option to open the browser after starting the server. Can be set using the LANGFLOW_OPEN_BROWSER environment variable. The default is open-browser.
  • --remove-api-keys/--no-remove-api-keys: Toggles the option to remove API keys from the projects saved in the database. Can be set using the LANGFLOW_REMOVE_API_KEYS environment variable. The default is no-remove-api-keys.
  • --install-completion [bash|zsh|fish|powershell|pwsh]: Installs completion for the specified shell.
  • --show-completion [bash|zsh|fish|powershell|pwsh]: Shows completion for the specified shell, allowing you to copy it or customize the installation.
  • --backend-only: This parameter, with a default value of False, allows running only the backend server without the frontend. It can also be set using the LANGFLOW_BACKEND_ONLY environment variable.
  • --store: This parameter, with a default value of True, enables the store features, use --no-store to deactivate it. It can be configured using the LANGFLOW_STORE environment variable.

These parameters are important for users who need to customize the behavior of Langflow, especially in development or specialized deployment scenarios.

Environment Variables

You can configure many of the CLI options using environment variables. These can be exported in your operating system or added to a .env file and loaded using the --env-file option.

A sample .env file named .env.example is included with the project. Copy this file to a new file named .env and replace the example values with your actual settings. If you're setting values in both your OS and the .env file, the .env settings will take precedence.

👋 Contribute

We welcome contributions from developers of all levels to our open-source project on GitHub. If you'd like to contribute, please check our contributing guidelines and help make Langflow more accessible.


Star History Chart

🌟 Contributors

langflow contributors

📄 License

Langflow is released under the MIT License. See the LICENSE file for details.