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 768e6f02ba
fix: Make from_template_and_variables async for backwards compatibility, add sync version, add tests and small fixes (#4500)
* Refactor `trace_name` property to use `_id` instead of `_vertex.id` for component identification

* Handle missing session_id attribute in component and agent classes

* Add SUPPORTED_VERSIONS constant for version tracking in tests

* Add utility to download components from GitHub in integration tests

* Rename TestComponent to ComponentForTesting to avoid conflict with pytest

* test: enhance PromptComponent tests for version support

Add parameterized testing for supported versions and a validation for the latest PromptComponent. This improves test coverage and ensures compatibility across different versions.

* refactor: move build_component_instance_for_tests utility to integration utils

* Make `from_template_and_variables` async for backwards compatibility and add sync version

* Refactor `PromptComponent` to use `Message.from_template` method across starter projects JSON files.

* add await to `from_template_and_variables` call

* Add async test for message prompt serialization and update cache directory handling

- Introduced `async` in `test_message_prompt_serialization` for asynchronous message creation.
- Added `test_message_sync_prompt_serialization` for synchronous message testing.
- Updated cache directory paths to "langflow_test" for test isolation.
- Utilized `monkeypatch` to set environment variable for cache directory in `langflow_cache_dir` fixture.

* Add fixture and existence check in test_schema_message.py

- Use `langflow_cache_dir` fixture in `test_message_with_single_image`.
- Add assertion to verify the existence of `second_image`.

* Add base test class to ensure file names are defined for all supported versions

* Remove default value for 'file_name' parameter in 'build_component_instance_for_tests' function

* Enhance `TestPromptComponent` with version-specific file name handling and base class integration

* Refactor test_prompt_component_versions to use FILE_NAMES_MAPPING directly

* Add component version tests and base classes for testing with/without client

* Simplify `build_component_instance_for_tests` by returning `cc_class` directly

* Refactor `TestPromptComponent` to use `ComponentTestBaseWithClient` and remove version tests

* Add assertion for LANGFLOW_CONFIG_DIR in test_message_with_multiple_images

* Refactor: update method call to `from_template` in `langchain_hub.py`

* Handle missing '_id' attribute in 'trace_name' method of custom_component.py

* Optimize `get_and_cache_all_types_dict` call by removing unnecessary thread usage in test.
2024-11-12 02:25:24 +00:00
.devcontainer chore: update devcontainer configuration and Dockerfile (#4298) 2024-10-30 11:11:16 +00:00
.github ci: Add temporary database setup for performance tests (#4469) 2024-11-08 14:41:01 +00: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 buid: reduce number of layers in runtime env for langflow-ep build (#4457) 2024-11-07 12:33:46 -08:00
docker_example feat: add pull_policy to Docker compose example (#3693) 2024-09-06 10:41:47 -07:00
docs fix: change input display name of Webhook component to "Payload" (#4507) 2024-11-11 20:51:44 +00:00
scripts chore: update dockerfiles and docker-build workflows to fix releases (#4317) 2024-10-31 11:16:26 +00:00
src fix: Make from_template_and_variables async for backwards compatibility, add sync version, add tests and small fixes (#4500) 2024-11-12 02:25:24 +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 feat: Add Astra DB Tool components for use with Tool Agents (#3911) 2024-10-15 11:52:58 -07: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 docs: Update CONTRIBUTING.md to mention uv (#3965) 2024-09-30 12:23:35 -07: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: Add 'lf' and 'ff' options to Makefile for pytest configuration (#4494) 2024-11-11 18:59:56 +00:00
pyproject.toml fix: Update duckduckgo-search to 6.3.4 and improve tests (#4504) 2024-11-11 20:34:03 +00:00
README.ES.md docs: replace --timeout with --worker-timeout (#4447) 2024-11-07 11:47:58 -03:00
README.ja.md docs: replace --timeout with --worker-timeout (#4447) 2024-11-07 11:47:58 -03:00
README.KR.md docs: replace --timeout with --worker-timeout (#4447) 2024-11-07 11:47:58 -03:00
README.md docs: update integrations image (#3508) 2024-08-22 16:57:34 +00:00
README.PT.md docs: replace --timeout with --worker-timeout (#4447) 2024-11-07 11:47:58 -03:00
README.zh_CN.md docs: replace --timeout with --worker-timeout (#4447) 2024-11-07 11:47:58 -03:00
render.yaml docs: fix render deployment and docs (#3309) 2024-08-14 03:45:56 -07:00
uv.lock fix: Update duckduckgo-search to 6.3.4 and improve tests (#4504) 2024-11-11 20:34:03 +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

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 pip (Python 3.10 or greater):
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