Langflow is a powerful tool for building and deploying AI-powered agents and workflows. http://www.langflow.org
Find a file
Saurabh Misra 40d179ddc4
refactor: ️ Speed up method Graph.sort_chat_inputs_first by 152% (#5263)
* ️ Speed up method `Graph.sort_chat_inputs_first` by 152%
Certainly! Optimization in this large context requires streamlining I/O operations, leveraging efficient data structures, and minimizing repeated operations. Below is the optimized version that focuses on these aspects.



### Explanation of Improvements.
1. **Remove Unnecessary Attributes**: Removed unused attributes to reduce memory footprint and complexity.
2. **Streamlined `__deepcopy__` Method**: Combined conditional logic to avoid redundant checks.
3. **Efficient Loop Handling**: Used list comprehensions and in-place modifications for the layers in the `sort_chat_inputs_first` method to reduce additional loops and copies.
4. **Exception Handling**: Simplified exception raise statements for clarity.

These changes focus on minimizing redundant operations, optimizing data structure usages, and ensuring that the operations performed are as direct and efficient as possible. Further optimization could be performed by profiling this code with real data to identify specific bottlenecks.

* Remove extra imports

* fix lint issues

---------

Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>
2024-12-18 14:55:48 +00:00
.devcontainer ref: improving development environment and instructions (#5180) 2024-12-12 04:01:05 -08:00
.github chore: Update CI workflow to include 'merge_group' event (#5337) 2024-12-18 07:43:20 -08:00
.vscode chore: Add backend installation tasks to VSCode configuration (#4335) 2024-10-31 14:51:01 +00:00
deploy fix: fix docker compose and add instructions (#2654) 2024-07-12 09:27:13 -07:00
docker ci: update docker image configuration for secure deployments (#5259) 2024-12-13 22:38:55 +00:00
docker_example feat: add pull_policy to Docker compose example (#3693) 2024-09-06 10:41:47 -07:00
docs feat: add support for Python 3.13 (#5238) 2024-12-12 12:24:43 -08:00
scripts ci: script and workflow to update starter projects (#5195) 2024-12-12 02:48:55 +00:00
src refactor: ️ Speed up method Graph.sort_chat_inputs_first by 152% (#5263) 2024-12-18 14:55:48 +00:00
test-results feat: Flow's canvas actions design uplift (#4260) 2024-10-31 00:51:33 +00:00
.env.example fixing ThreadingInMemoryCache usage (#2604) 2024-07-10 04:52:37 -07: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 Merge cz/mergeAll to two_edges 2024-06-10 11:31:02 -03:00
.gitignore refactor: Improve error messaging for missing message fields in memory module (#4779) 2024-11-23 13:04:20 +00:00
.pre-commit-config.yaml chore: Add 'types' field to pre-commit hooks for ruff check and format (#4006) 2024-10-03 09:53:58 -07:00
CODE_OF_CONDUCT.md run codespell 2024-06-04 09:26:13 -03:00
CONTRIBUTING.md ref: improving development environment and instructions (#5180) 2024-12-12 04:01:05 -08:00
DEVELOPMENT.md ref: improving development environment and instructions (#5180) 2024-12-12 04:01:05 -08: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 ref: improving development environment and instructions (#5180) 2024-12-12 04:01:05 -08:00
pyproject.toml feat: Bump blockbuster version to 1.5.2 (#5331) 2024-12-18 14:43:31 +00:00
README.ES.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
README.FR.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
README.ja.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
README.KR.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
README.md Docs: recommend uv (#5237) 2024-12-12 19:01:16 +00:00
README.PT.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
README.zh_CN.md feat: add README.FR.md for French speakers (#5232) 2024-12-12 15:50:59 +00:00
render.yaml docs: fix render deployment and docs (#3309) 2024-08-14 03:45:56 -07:00
uv.lock feat: Bump blockbuster version to 1.5.2 (#5331) 2024-12-18 14:43:31 +00:00

Langflow

Langflow is a low-code app builder for RAG and multi-agent AI applications. Its Python-based and agnostic to any model, API, or database.

Docs - Free Cloud Service - Self Managed

README in English README in Portuguese README in Spanish README in Simplified Chinese README in Japanese README in KOREAN README in French

Core features

  1. Python-based and agnostic to models, APIs, data sources, or databases.
  2. Visual IDE for drag-and-drop building and testing of workflows.
  3. Playground to immediately test and iterate workflows with step-by-step control.
  4. Multi-agent orchestration and conversation management and retrieval.
  5. Free cloud service to get started in minutes with no setup.
  6. Publish as an API or export as a Python application.
  7. Observability with LangSmith, LangFuse, or LangWatch integration.
  8. Enterprise-grade security and scalability with free DataStax Langflow cloud service.
  9. Customize workflows or create flows entirely just using Python.
  10. Ecosystem integrations as reusable components for any model, API or database.

Integrations

📦 Quickstart

  • Install with uv (recommended) (Python 3.10 to 3.12):
uv pip install langflow
  • Install with pip (Python 3.10 to 3.12):
pip install langflow

Getting 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