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 0dc6cce8dc
tests: Enhance component testing and error handling with dynamic retrieval (#4526)
* Add module parameter to build_component_instance_for_tests function for dynamic component retrieval

* Enhance component test base with detailed version mapping and error handling

- Introduced `VersionComponentMapping` TypedDict for structured version mapping.
- Updated `FILE_NAMES_MAPPING` to use a list of `VersionComponentMapping`.
- Added comprehensive error messages for missing or invalid mappings in `test_all_versions_have_a_file_name_defined`.
- Improved `test_component_versions` with detailed exception handling and error reporting.
- Ensured `component_class` is defined before running tests.

* Refactor FILE_NAMES_MAPPING to use a list of dictionaries for better structure and readability in test_prompt_component.py

* refactor: Enhance ComponentTestBase with fixture validation and improved version handling

* Refactor test setup in `test_prompt_component.py` to use fixtures for improved modularity and readability

* fix: Add PlaceholderGraph NamedTuple and handle 'graph' attribute in Component class

* Add attribute checks for 'graph' and 'vertex' to prevent errors

* Handle missing 'graph' attribute in 'store_message' method to prevent errors.

* Handle missing 'graph' attribute in Message creation to prevent errors

* Handle missing 'graph' attribute in chat message flow ID assignment

* Add component code to test instance creation and error logging

* Update SUPPORTED_VERSIONS to remove older versions

* test: add unit tests for ChatInput and TextInputComponent

Implement comprehensive tests for both ChatInput and TextInputComponent to ensure proper functionality, including message responses and handling of various input scenarios. This enhances reliability and aids in future development.

* test: add unit tests for ChatOutput and TextOutputComponent

Implement comprehensive tests for ChatOutput and TextOutputComponent, validating message responses, source properties, and behavior with various input types to ensure reliability and consistency across output components.

* Update JSON files to improve code readability and add missing info fields

- Added missing `info` fields to various input components to provide better context and descriptions.
- Improved code readability by ensuring consistent formatting and structure across JSON files.
- Updated `message_response` method to handle cases where `graph` attribute might not be present.
- Enhanced `build_vectorize_options` method to set `authentication` and `parameters` to `None` if no values are provided.
- Refined `AgentComponent` to include `info` for `agent_llm` and other fields, improving clarity on their purpose.

* Refactor: update attribute access to use private `_vertex` attribute

* test: enhance TextInputComponent tests and update properties assertions

* Remove redundant unit tests for output components in test_output_components.py

* feat: add PlaceholderGraph for backwards compatibility and enhance Component attributes

* fix: improve run_id assignment and ensure user_id is a string in PlaceholderGraph

* Add check for non-empty incoming_edges in get_properties_from_source_component
2024-11-12 10:50:56 -08: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 Docs: Contributing folder (#4415) 2024-11-12 17:05:08 +00:00
scripts chore: update dockerfiles and docker-build workflows to fix releases (#4317) 2024-10-31 11:16:26 +00:00
src tests: Enhance component testing and error handling with dynamic retrieval (#4526) 2024-11-12 10:50:56 -08: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