Langflow is a powerful tool for building and deploying AI-powered agents and workflows. http://www.langflow.org
Find a file
Gabriel Luiz Freitas Almeida 304e28b48a
feat: event polling can process more than one event at a time (#7858)
* refactor: enhance event polling to retrieve all available events and return in NDJSON format

Updated the event polling logic to collect all available events from the queue instead of just one. The response format has been changed to NDJSON, allowing multiple events to be returned in a single response. Improved error handling for timeouts by returning an empty response instead of raising an error.

* refactor: improve NDJSON event processing in build polling

Enhanced the event polling logic to handle NDJSON responses by processing multiple events in a single fetch. Updated the response handling to read the response as text, split it into individual JSON objects, and process each event accordingly. This change improves the efficiency of event handling and maintains a consistent polling interval.

* fix: change event list type from list[str] to list in get_flow_events_response

* refactor: enhance event stream consumption with timeout and error handling

Updated the consume_and_assert_stream function to include a timeout for processing events and improved error handling for JSON parsing failures. Added logging for better debugging and tracking of processed events. Adjusted the event validation logic to ensure both the first and last expected events are present.

* refactor: enhance event polling logic with improved limits and JSON validation

Updated the event polling mechanism to include configurable limits for total events and empty polls, along with a timeout for requests. Enhanced JSON validation for individual events and added logging for better debugging of polling behavior. This refactor aims to improve robustness and maintainability of the event consumption process.

* refactor: update polling interval and streamline event handling

Modified the polling interval constant to improve responsiveness and adjusted event handling logic in the get_flow_events_response function to simplify the processing of event values. This change enhances the efficiency of event consumption and maintains a consistent approach to handling NDJSON responses.

* refactor: simplify event retrieval in get_flow_events_response

Removed unused event_id and put_time variables from the event retrieval logic in the get_flow_events_response function. This change streamlines the code and enhances readability while maintaining the functionality of event handling.

* refactor: update consume_and_assert_stream to use asyncio.wait_for for timeout handling

Modified the consume_and_assert_stream function to utilize asyncio.wait_for for managing timeouts in event processing. This change improves compatibility with Python 3.10 and enhances the robustness of the event consumption logic while maintaining existing functionality.
2025-05-05 22:20:04 +00:00
.devcontainer Fix: CLI Social Links (#7601) 2025-04-12 01:44:59 +00:00
.github chore: Update CI workflow to conditionally run tests based on the presence of a label (#7905) 2025-05-05 17:25:29 -03:00
.vscode chore: Add backend installation tasks to VSCode configuration (#4335) 2024-10-31 14:51:01 +00:00
deploy feat: adds file management feature under feature flag, adds file dialog, adds files page (#6134) 2025-03-18 02:32:55 +00:00
docker fix: Adding Node to Dockerfile (#7735) 2025-04-22 21:32:27 +00:00
docker_example fix: adjust LANGFLOW_CONFIG_DIR to prevent permission error (#6095) 2025-02-05 20:54:36 +00:00
docs docs: Adding Best practices for Deploying and Running Langflow in production (#7311) 2025-05-05 21:49:32 +00:00
scripts fix: aws docker file is now in different place (#6706) 2025-02-19 14:22:58 +00:00
src feat: event polling can process more than one event at a time (#7858) 2025-05-05 22:20:04 +00:00
test-results feat: Flow's canvas actions design uplift (#4260) 2024-10-31 00:51:33 +00:00
.composio.lock feat: Composio Component Upgrade (#6905) 2025-03-29 10:12:51 +00:00
.env.example feat: add retry on database connection (#5772) 2025-01-21 20:41:17 +00: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 feat: voice mode (#4642) 2025-03-20 00:05:55 +00:00
.gitignore feat: voice mode (#4642) 2025-03-20 00:05:55 +00:00
.pre-commit-config.yaml feat: return variable value if it is a generic variable (#5366) 2024-12-19 17:04:00 +00:00
CODE_OF_CONDUCT.md run codespell 2024-06-04 09:26:13 -03:00
CONTRIBUTING.md fix: fix typo in CONTRIBUTING.md (#5556) 2025-01-20 12:59:56 +00:00
DEVELOPMENT.md Fix: CLI Social Links (#7601) 2025-04-12 01:44:59 +00: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 chore: Update Makefile to include PostgreSQL in backend installation (#7561) 2025-04-10 17:23:24 +00:00
pyproject.toml chore: Bump version numbers for langflow and langflow-base to 1.4.0 and 0.4.0 respectively (#7867) 2025-05-02 18:07:04 +00:00
README.md docs: adds Discord server reference in README (#7902) 2025-05-05 19:01:10 +00:00
render.yaml docs: fix render deployment and docs (#3309) 2024-08-14 03:45:56 -07:00
uv.lock chore: Upgrade codeflash to v0.12.0 (#7752) 2025-05-05 21:17:17 +00:00

Langflow logo

Release Notes PyPI - License PyPI - Downloads GitHub star chart Open Issues Twitter YouTube Channel Discord Server

Langflow is a powerful tool for building and deploying AI-powered agents and workflows. It provides developers with both a visual authoring experience and a built-in API server that turns every agent into an API endpoint that can be integrated into applications built on any framework or stack. Langflow comes with batteries included and supports all major LLMs, vector databases and a growing library of AI tools.

Highlight features

  1. Visual Builder to get started quickly and iterate.
  2. Access to Code so developers can tweak any component using Python.
  3. Playground to immediately test and iterate on their flows with step-by-step control.
  4. Multi-agent orchestration and conversation management and retrieval.
  5. Deploy as an API or export as JSON for Python apps.
  6. Observability with LangSmith, LangFuse and other integrations.
  7. Enterprise-ready security and scalability.

Quickstart

Langflow works with Python 3.10 to 3.13.

Install with uv (recommended)

uv pip install langflow

Install with pip

pip install langflow

📦 Deployment

Self-managed

Langflow is completely open source and you can deploy it to all major deployment clouds. Follow this guide to learn how to use Docker to deploy Langflow.

Fully-managed by DataStax

DataStax Langflow is a full-managed environment with zero setup. Developers can sign up for a free account to get started.

Stay up-to-date

Star Langflow on GitHub to be instantly notified of new releases.

Star Langflow

👋 Contribute

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


Star History Chart

❤️ Contributors

langflow contributors