Commit graph

14,287 commits

Author SHA1 Message Date
anovazzi1
0abc51d75a
fix: AccountMenu component to conditionally render logout button based on autoLogin status (#4535)
Refactor AccountMenu component to conditionally render logout button based on autoLogin status
2024-11-12 19:31:43 -08:00
anovazzi1
f1fd5becc8
feat: add new starter projects and replace old ones (#4557)
* update templates

* fix ghost edges bug

* update templates

* [autofix.ci] apply automated fixes

* update naming and category

* remove unit tests for starter projects API in v1

* add starter projects back in

* Add unit test for GET /api/v1/starter-projects/ endpoint in FastAPI

* add rodrigo's updates

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-11-12 18:46:11 -08:00
Gabriel Luiz Freitas Almeida
7c0c881488
feat: Add option to deactivate tracing in service settings (#4527)
* Add option to deactivate tracing in service settings

* Add fixture to automatically deactivate tracing in tests using monkeypatch
2024-11-12 18:41:07 -08:00
Lucas Oliveira
e68c21a7af
fix: refactor settings page to use new sidebar and fix old bugs (#4545)
* Updated settings page sidebar to new sidebar

* Updated old home page to still work

* Fix padding on collapsed sidebar

* Fix able to drag on input component

* Fixed pagination position on big screens

---------

Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
2024-11-12 18:28:12 -08:00
Cristhian Zanforlin Lousa
9c004e7646
refactor: increase search sensitivity and simplify metadata filtering in FlowSidebarComponent (#4546)
🔧 (traditional-search-metadata.ts): Simplify filtering logic to only consider item metadata for search
🔧 (index.tsx): Adjust search threshold value to improve search accuracy
2024-11-12 18:09:33 -08:00
anovazzi1
8e0d6d55de
fix: Refactor DataFilterComponent inputs (#4524)
* refactor: Update DataFilterComponent inputs to use StrInput instead of MessageInput

* refactor: Update DataFilterComponent inputs to use MessageTextInput instead of StrInput

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-11-12 18:05:09 -08:00
anovazzi1
ac540a0940
fix: update tool mode toggle behavior in NodeToolbarComponent (#4554)
fix wrong behaviour in toogle

Co-authored-by: Nadir J <31660040+NadirJ@users.noreply.github.com>
2024-11-12 17:29:50 -08:00
Edwin Jose
da833a566a
fix: added model utils to get the model name (#4532)
* added model utils

model utils to find model name

* adding deafult

updated the logic

* Refactor get_model_name function to simplify logic

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
2024-11-12 17:27:28 -08:00
Sebastián Estévez
168c716c58
fix: update error handling in request for litellm models (#4536)
handle request exception for litellm models
2024-11-12 17:23:24 -08:00
Gabriel Luiz Freitas Almeida
f8f9b7cace
feat: add SIGTERM handling and update typer dependency (#4548)
* Update `typer` dependency to version 0.13.0 in `pyproject.toml`

* refactor: Simplify exception handling in the CLI

* Enhance lifespan function with clean shutdown and logging improvements

* Add graceful shutdown handling for SIGTERM and SIGINT signals

- Introduce signal handlers to manage SIGTERM and SIGINT for graceful server shutdown.
- Update exception handling to ensure processes terminate properly and log shutdown events.
- Modify server run logic to support signal-based shutdowns, improving reliability.

---------

Co-authored-by: Nadir J <31660040+NadirJ@users.noreply.github.com>
2024-11-12 19:42:18 -05:00
Eric Hare
335b649093
fix: Pass the OpenAI API Key to Crew() (#4555) 2024-11-12 16:05:27 -08:00
Cristhian Zanforlin Lousa
1199690a76
feat(input): Add drag prevention to popover and improve icon fallback handling (#4544) 2024-11-12 20:28:23 -03:00
anovazzi1
e2bdaf5fa7
fix: ContentBlockDisplay styling for block titles (#4550) 2024-11-12 20:27:15 -03:00
Edwin Jose
01431ee369
fix: aws bedrock load db credentials issue (#4537) 2024-11-12 20:25:55 -03:00
Deon Sanchez
f05decb7fc
refactor: Update AccountMenu and HeaderMenu components (#4534) 2024-11-12 23:19:04 +00:00
Mike Fortman
824f39ef36
fix: Fix header z-index issues (#4549)
fix header z index issues
2024-11-12 23:05:54 +00:00
Mike Fortman
8e42bafd6c
feat: update favicon (#4553)
update favicon
2024-11-12 16:55:07 -06:00
Eric Hare
70ebfc44f1
fix: Ensure ordering of astradb inputs (#4552) 2024-11-12 22:45:04 +00:00
Mendon Kissling
9e64ae80c9
Docs: New Getting Started (#4547)
* remove-and-redirect-1.0

* remove-and-redirect-installation-page

* remove-emojis-in-titles

* more-emoji

* welcome-cleanup-initial

* new-intro

* more-redirect

* better-title

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* code-review

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
2024-11-12 22:31:09 +00:00
Edwin Jose
aca2b4be73
fix: tools as requried=False in Agents (#4525)
Update agent.py

tools as not required by default.
2024-11-12 22:20:33 +00:00
Edwin Jose
145d67f5a5
feat: add aws bedrock to AgentComponent (#4515)
* update model list as constants

update model list as constants
Add default value to Secret string variables

* Update amazon_bedrock.py

load_from_db false for session_token

* Update model_input_constants.py

aws bedrock added
2024-11-12 21:59:40 +00:00
Gabriel Luiz Freitas Almeida
3d65de4c79
ci: Add concurrency control to Run benchmarks workflow (#4551)
Add concurrency control to GitHub Actions workflow to cancel in-progress runs
2024-11-12 13:03:20 -08:00
Ítalo Johnny
4f905526ac
feature: update firecrawl components (#4458)
* chore: update Firecrawl components

* chore: update version firecrawl-py dependency
2024-11-12 13:01:43 -08:00
Eric Hare
be44183345
fix: KeyError in Langchain Hub component (#4530)
* fix: KeyError in Langchain Hub component

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-12 20:55:28 +00:00
Eric Hare
1dfa160385
fix: issue with dynamic inputs when selecting model (#4538) 2024-11-12 19:58:41 +00:00
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
Lucas Oliveira
ae966ab588
fix: added new image to get started templates, fixed sidebar overlapping bug (#4533)
* Fixed flow on top of sidebar

* Fixed get started templates design and bg image

* Fixed build button overflowing

* Changed truncation of list

* Fixed colors on collapse buttons

* Fixed is mobile hook and fixed sidebar not reappearing after hiding it in small screens

* Changed to max char 110
2024-11-12 18:34:45 +00:00
Mike Fortman
94561426a2
feat: Implement new Langflow Logo throughout the application (#4509)
* Logo changes

* favicons

* [autofix.ci] apply automated fixes

* pr comment: use tailing height/width

* tiny feature flag wrapping fix

* update favicon

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-12 11:37:55 -06:00
Mendon Kissling
bcd7617e48
Docs: Contributing folder (#4415)
* issues

* contributing

* telemetry-cleanup

* name

* name

* pr-guidance

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* code-review

* move-discussions

* have-written

* why-to-run-locally

* clarify-how-to-contribute

* add-custom-component-page

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* update-join-the-community-age

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
2024-11-12 17:05:08 +00:00
Lucas Oliveira
ab71e2fa15
fix: upgraded agent tool mode switch ux, fixed icon color on main page, fixed pagination ui on main page (#4501)
* Added bg background for icon on Agent

* Changed system prompt description

* Added toggle to node toolbar for tool mode

* Removed copy from node toolbar

* Fixed node last output border

* Removed beta tag from agent

* remove text foreground from grid

* updated paginator style

* Fixed pagination element disposition on main page

* Fixed node icon

* Removed storeComponent from pagination

* removed storeComponent from paginator type

* Fixed canvas dots color

* Changed pagination design

* fixed gap

* Fix minimized state on components that have a custom icon

* Fixed exibition of flow running state to not make the header jump

* Fixed starter flows
2024-11-12 16:31:36 +00:00
Mendon Kissling
692af0eef4
Docs: Settings pages (#4425)
* settings-content

* my-collection-location-and-slug

* my-collection

* redirects

* more-cleanup

* docs:: fixed-components-menu-item

* move-settings-content-and-redirect

* title-case

* case

* code-review

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
2024-11-12 10:34:11 -05:00
Cristhian Zanforlin Lousa
2ddd773512
refactor: rename CSV component and update Google OAuth imports (#4521)
* change csv to data name, change googleauth folder

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-12 15:22:15 +00:00
Eric Hare
8cd87210ad
feat: Add a WikiData API Tool Component (#4512)
* feat: Add a WikiData API Tool Component

* [autofix.ci] apply automated fixes

* Update wikidata_api.py

* Fix casing and import in init

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-12 15:03:01 +00:00
Edwin Jose
516ba8908d
fix: bedrock component handling AWS constants (#4514)
* update model list as constants

update model list as constants
Add default value to Secret string variables

* Update amazon_bedrock.py

load_from_db false for session_token
2024-11-12 14:46:37 +00:00
anovazzi1
f34d57acb7
fix: update step duration display and logic (#4506)
* feat: Add durationStore for managing chat durations and intervals and update duration display logic to use store

* [autofix.ci] apply automated fixes

* Expand `recursive_serialize_or_str` to support `BaseModelV1` subclasses

* fix: Update duration calculation for event handlers

Improve accuracy of duration measurement in event handlers by centralizing the calculation method. This ensures consistent timing across different events and enhances the reliability of event processing.

* refactor: improve duration calculation logic

Enhance the duration calculation by clearly handling both integer and float timestamps. This ensures accurate duration tracking and simplifies the code structure, improving maintainability and readability.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
2024-11-12 11:19:13 -03:00
Cristhian Zanforlin Lousa
4254d8ef4e
style: update border radius and add orange datatype color (#4522)
📝 (applies.css): Update border radius value to use specific pixel value for consistency
📝 (index.css): Add new custom CSS variables for datatype orange and its foreground color
📝 (styleUtils.ts): Add new node color for BaseChatMessageHistory to be displayed in orange
2024-11-12 14:04:22 +00:00
Cristhian Zanforlin Lousa
84dd03198d
feat: Add YouTube transcript extraction component and frontend integration (#4502)
* add new youtube transcripts component

* [autofix.ci] apply automated fixes

*  (youtube-transcripts.spec.ts): add integration test for youtube transcripts component in the frontend to ensure user can interact with it successfully

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-12 13:13:30 +00:00
anovazzi1
0e101ef1e7
fix: update SignUpPage component styling to use full screen height (#4510)
refactor: Update SignUpPage component styling to use full screen height
2024-11-12 04:12:45 -08:00
anovazzi1
eb5cb2e923
refactor: Remove cursor highlighting feature (#4508)
The cursor highlighting feature was removed from the PageComponent in order to simplify the code and improve performance.
2024-11-12 04:12:07 -08:00
Mike Fortman
ca12a454d9
fix: Fix tweaks text color (#4513)
fix tweaks text color
2024-11-12 04:11:09 -08:00
Gabriel Luiz Freitas Almeida
7dfce1dc63
refactor: Enhance tools with enums and improved error handling (#4493)
* fix: Enhance extract_class_name function to identify Component subclasses

* Add TODO for improving Component inheritance check in validate.py

* Add YahooFinanceMethod enum and improve error handling in Yahoo Finance tool

- Introduced YahooFinanceMethod enum to standardize method options.
- Updated YahooFinanceSchema to use the new enum for method selection.
- Enhanced error handling by raising ToolException on data retrieval failure.
- Refactored method handling in _yahoo_finance_tool to use enum values.

* Enhance TavilySearchToolComponent with Enums and Improved Error Handling

- Introduced `TavilySearchDepth` and `TavilySearchTopic` enums for better type safety and clarity.
- Updated `TavilySearchSchema` to use enums for `search_depth` and `topic` fields.
- Added validation for enum values in `run_model` and `_tavily_search` methods.
- Improved error handling by raising `ToolException` for HTTP and unexpected errors.
- Updated dropdown inputs to use enum options directly.

* Add error handling and parameter flexibility to SerpAPI tool

- Introduced `ToolException` for improved error handling in SerpAPI searches.
- Added `SerpAPISchema` for structured search parameters.
- Modified `_build_wrapper` to accept dynamic parameters.
- Enhanced `search_func` to rebuild wrapper with new parameters and handle exceptions.

* feat: Enhance Glean Search API integration

Refactor the API wrapper and schema for better clarity and maintainability. Improve error handling for search results and streamline request preparation.

* Add error handling to DuckDuckGo search function using ToolException

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
2024-11-12 11:59:32 +00:00
Edwin Jose
bbaec2b8da
fix: adding info to Agent and related components (#4495)
* info added

* Update openai.py

update to Open AI model info

* info changed

* Update tool_calling.py

made info of LLM much simpler

* info updated to be simpler

* Update agent.py
2024-11-12 03:03:44 +00:00
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
Christophe Bornet
8bb0f65b47
fix: Use AsyncSession in some non-blocking APIs (#4484)
Fix sync/async DB usage in APIs:
* flows
* files
* folders
* monitor
2024-11-11 23:51:33 +00:00
bhatsanket
19963ded26
fix: ParseJSONDataComponent prevent unnecessary array wrapping (#4357)
* fix(ParseJSONDataComponent): prevent unnecessary array wrapping

Prevent wrapping non-array inputs in arrays to ensure correct JSON parsing and filtering.

* [autofix.ci] apply automated fixes

* updated failing test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-11 23:38:20 +00:00
Eric Hare
a107650cc6
FIX: Properly pass missing vectorize params in Astra DB (#4511) 2024-11-11 23:09:50 +00:00
Edwin Jose
aea9804527
fix: AWS Bedrock components (#4503)
* AWS Bedrock components update

* update in imports
2024-11-11 21:55:34 +00:00
Cristhian Zanforlin Lousa
961189a7dd
fix: prevent nested scrolling in markdown code blocks (#4505)
🔧 (NodeDescription/index.tsx): update class name to prevent text overflow and improve readability
2024-11-11 21:20:04 +00:00
Cristhian Zanforlin Lousa
133a8aec5c
fix: change input display name of Webhook component to "Payload" (#4507)
* change input display name of webhook component to payload

* [autofix.ci] apply automated fixes

* 📝 (docs): update formatting and alignment of tables in components-data.md to improve readability and consistency across the document

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-11 20:51:44 +00:00
Cristhian Zanforlin Lousa
537a8010f1
fix: Update duckduckgo-search to 6.3.4 and improve tests (#4504)
⬆️ (pyproject.toml): update duckduckgo-search dependency to version 6.3.4
🔧 (duckduckgo.spec.ts): remove test.skip from the test case to enable the test for duckduckgo search component
💡 (duckduckgo.spec.ts): refactor test case to improve readability and remove unnecessary code blocks
2024-11-11 20:34:03 +00:00