Commit graph

86 commits

Author SHA1 Message Date
Sebastián Estévez
2acd434e09
feat: assistants agent improvements (#5581)
* assistants agent improvements

* remove alembic init file

* vector store / file upload support

* use sync file object (required by sdk)

* steps

* self.tools initialization

* improvements for edwin

* add name and switch to MultilineInput

* ci fixes
2025-01-16 20:54:34 +00:00
Gabriel Luiz Freitas Almeida
99f2ef6115
feat: add truncation to ResultDataResponse (#5704)
* chore: Update dependencies and improve platform markers in configuration files

- Added 'hypothesis' version 6.123.17 to dev-dependencies in pyproject.toml.
- Updated platform markers from 'sys_platform' to 'platform_system' for better compatibility in uv.lock, affecting multiple packages including 'jinxed', 'colorama', and 'appnope'.
- Ensured consistency in platform checks across various dependencies to enhance cross-platform support.

This update improves the project's dependency management and ensures better compatibility across different operating systems.

* feat: Enhance ResultDataResponse serialization with truncation support

- Introduced a new method `_serialize_and_truncate` to handle serialization and truncation of various data types, including strings, bytes, datetime, Decimal, UUID, and BaseModel instances.
- Updated the `serialize_results` method to utilize the new truncation logic for both individual results and dictionary outputs.
- Enhanced the `serialize_model` method to ensure all relevant fields are serialized and truncated according to the defined maximum text length.

This update improves the handling of large data outputs, ensuring that responses remain concise and manageable.

* fix: Reduce MAX_TEXT_LENGTH in constants.py from 99999 to 20000

This change lowers the maximum text length limit to improve data handling and ensure more manageable output sizes across the application.

* test: Add comprehensive unit tests for ResultDataResponse and VertexBuildResponse

- Introduced a new test suite in `test_api_schemas.py` to validate the serialization and truncation behavior of `ResultDataResponse` and `VertexBuildResponse`.
- Implemented tests for handling long strings, special data types, nested structures, and combined fields, ensuring proper serialization and truncation.
- Enhanced coverage for logging and output handling, verifying that all fields are correctly processed and truncated as per the defined maximum text length.
- Utilized Hypothesis for property-based testing to ensure robustness and reliability of the serialization logic.

This update significantly improves the test coverage for the API response schemas, ensuring better data handling and output management.
2025-01-16 18:39:34 +00:00
Christophe Bornet
da83dbbcb5
feat: Bump ruff version to 0.9 (#5666)
* Bump ruff version to 0.9

* Rename some modules for A005 ruff rule
2025-01-15 15:14:43 +00:00
Gabriel Luiz Freitas Almeida
242165b8aa
ci: Clean up build artifacts and update dependencies (#5693) 2025-01-15 05:42:33 -08:00
Gabriel Luiz Freitas Almeida
0d1c2914a4
chore: Add aiofile dependency to langflow-base (#5672) 2025-01-14 07:34:17 -08:00
Cristhian Zanforlin Lousa
b2a98163b3
fix: default flow locked property to false instead of null (#5670) 2025-01-14 06:33:11 -08:00
Abhishek Patil
48847ba3d2
feat: bump composio libraries to version 0.6.13 (#5633) 2025-01-13 15:48:19 +00:00
Edwin Jose
89756390e8
fix: uv lock fixes issues from crosshair-tool versions (#5535)
Update uv.lock
2025-01-03 19:27:22 +00:00
Sebastián Estévez
63d649b0f4
feat: add anthropic mcp endpoint (#5148)
* mcp WIP

* [autofix.ci] apply automated fixes

* logging and flow user check

* mcp stdio client component

* handle disconnect better

* initialization

* session fix and type fix

* [autofix.ci] apply automated fixes

* defensive against mcp server bugs

* [autofix.ci] apply automated fixes

* notifications and sse component

* enabled flags and resource support

* remove unneeded print

* extract json schema util

* [autofix.ci] apply automated fixes

* ruff

* fix tools [] bug and db asysnc session api change

* Tool instead of StructuredTool

* ruff fixes

* ruff

* validation optimization

* fix frontend test

* another playwright fix

* Update src/frontend/tests/extended/features/notifications.spec.ts

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* mcp component descriptions

* mypy fixes

* fix setup_database_url test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-01-03 04:45:54 +00:00
Christophe Bornet
e91bcc2520
ref: Some ruff fixes from preview (#5420)
* Some ruff fixes from preview

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-12-28 21:25:35 +00:00
Christophe Bornet
70b4719def
fix: Bump blockbuster version to 1.5.8 (#5418)
Bump blockbuster version to 1.5.8

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-12-28 00:18:23 +00:00
tushar-composio
c4de1da4d4
fix: fetch composio apps list dynamically (#5427)
* fix: fetch composio apps list dynamically

* Ensure apps only get loaded once API key is entered

* Add comment

* typo fix

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-12-28 00:08:18 +00:00
Christophe Bornet
b1536d3cb4
feat: Bump blockbuster version to 1.5.7 (#5406)
Bump blockbuster version to 1.5.7
2024-12-23 15:57:41 +00:00
Christophe Bornet
4b0c42e520
feat: Bump blockbuster version to 1.5.5 (#5382)
Bump blockbuster version to 1.5.5
2024-12-20 13:45:06 +00:00
Abhishek Patil
fb9825ee65
fix: Resolve Auth field issue in Composio component and bump Composio (#5357)
* fix: replace single quotes with double quotes

* feat: update Composio component fields
2024-12-20 11:42:29 +00:00
Saurabh Misra
a30ccc4302
feat: Install Codeflash optimizer github action (#5350)
* Install Codeflash optimizer github action

* try

* install the right dev

* try

* try

* try

* try

* try

* Python 3.12

* temp run

* test optimizing bubble sort

* try

* try

* finalize setup
2024-12-19 16:36:57 +00:00
Christophe Bornet
8f6241be91
feat: Bump blockbuster version to 1.5.2 (#5331)
Bump blockbuster version to 1.5.2
2024-12-18 14:43:31 +00:00
Christophe Bornet
c3f36b69a2
feat: Bump blockbuster version to 1.5.0 (#5292)
* Bump blockbuster version to 1.5.0

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-12-17 23:26:18 +01:00
Gabriel Luiz Freitas Almeida
c97450dcf2
feat: add pydantic-ai and update dependencies to support it (#5297)
* chore: update weaviate-client version and add pydantic-ai dependency in pyproject.toml

- Updated weaviate-client from version 4.9.6 to 4.10.2.
- Added pydantic-ai dependency with a minimum version of 0.0.12.

* chore: update pydantic version in pyproject.toml from 2.7.0 to 2.10.0

* chore: update package versions and add new dependencies

- Added eval-type-backport version 0.2.0.
- Added griffe version 1.5.1 with colorama as a dependency.
- Updated grpcio-health-checking and grpcio-tools from version 1.62.3 to 1.68.1.
- Updated pydantic_core from version 2.18.4 to 2.27.1.
- Updated weaviate-client from version 4.9.6 to 4.10.2.

* chore: update pydantic version in dependency files

- Updated pydantic version from 2.10.0 to 2.10.1 in both uv.lock and pyproject.toml to ensure compatibility with the latest features and fixes.
2024-12-17 05:41:06 -08:00
Jan Heimes
e8667009b7
feat: add needle as custom component (#4657)
* init: add needle as custom component

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* stage changes

* upgrate: langchain-community

* lint

* [autofix.ci] apply automated fixes

* techdebt: package-lock.json

* [autofix.ci] apply automated fixes

* techdebt: lint with working needle

* techdebt: use Component class and Integrate with other components

* techdebt: adjust needle component

* [autofix.ci] apply automated fixes

* lint

* fix: package json & lock not in sync

* chore: remove outdated dependencies from pyproject.toml

* Removed pyautogen and several langchain-related packages to streamline dependencies and reduce potential conflicts.

* [autofix.ci] apply automated fixes

* refactor: simplify needle component API key handling and clean up imports

* Streamlined API key retrieval by removing unnecessary SecretStr usage, defaulting to empty strings if keys are not provided.
* Consolidated import statements for better readability and organization.

---------

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-12-16 15:11:31 +00:00
Gabriel Luiz Freitas Almeida
c6b1eaba60
feat: add support for Python 3.13 (#5238)
* chore: update Python version requirement and remove deprecated dependencies in pyproject.toml files

* Updated Python version requirement to allow up to 3.14 in both main and base pyproject.toml files.
* Removed deprecated dependencies: cohere and pyautogen from the main dependencies list.

* chore: update Python version requirements and add support for Python 3.13 in uv.lock

* Updated the required Python version to allow up to 3.14.
* Adjusted resolution markers for Python versions to include 3.13.
* Added markers for the 'typing-extensions' dependency to restrict it for Python versions below 3.13.
* Included additional wheel files for various packages to support Python 3.13 compatibility.

* Update Python version requirements in README files to support Python 3.13

* Update Python version in GitHub Actions workflow to 3.13

* Update Python version in GitHub Actions workflows to include 3.13

* Update installation documentation to support Python 3.13 and clarify troubleshooting steps

* revert changes to docs until we release

* chore: add ag2 dependency and update uv.lock for Python 3.13 compatibility

* Added ag2 version 0.3.2 and 0.5.2 to pyproject.toml and uv.lock with appropriate resolution markers for Python versions.
* Included flaml version 2.3.2 in uv.lock to ensure compatibility with the new ag2 dependency.
* Updated dependency specifications to support Python 3.13 and above.
2024-12-12 12:24:43 -08:00
Gabriel Luiz Freitas Almeida
3de42f4575
feat: Update SQLModel dependency and improve UUID handling (#4891)
* Update sqlmodel dependency to version 0.0.20 in pyproject.toml

* Handle UUID conversion for message IDs in memory update logic

* Refactor Alembic migrations to use `sa.inspect` and update GUID to Uuid type

* refactor: Change flow_id parameter type from str to uuid.UUID in graph building functions

* refactor: Ensure UUID handling for flow_id and user_id across various services and models

* refactor: improve UUID handling and graph caching for compatibility with sqlmodel 0.0.20

* fix: update message assertion in component events test

* chore: update sqlmodel dependency to version 0.0.22 in uv.lock and pyproject.toml

* fix: enhance flow_id validation to ensure valid UUID format in MessageBase model

* fix: add error handling for cache directory cleanup

* refactor: improve flow_id type handling in message storage

* refactor: enhance flow_id handling in message functions to support UUID type

* refactor: integrate Properties into message creation in component event tests

* update test durations

* fix: correct flow_id parameter in database query

* refactor: update session_id and flow_id parameters to support UUID type across message handling functions and models

* fix: handle message data update in SQLModel update method

* refactor: improve flow_id assignment in message update method to enhance UUID handling
2024-12-12 04:58:27 -08:00
Jordan Frazier
ba31d436c4
ci: script and workflow to update starter projects (#5195) 2024-12-12 02:48:55 +00:00
Eric Hare
a302a946f2
fix: Move crewai to root deps for now (#5204) 2024-12-11 08:15:03 -08:00
Ítalo Johnny
c39515065b
fix: narrow version ranges for project dependencies (#5005) 2024-12-10 10:35:44 +00:00
Christophe Bornet
c0b25fa651
ref: Remove some useless asyncio.to_thread (#5149)
Remove some useless asyncio.to_thread
2024-12-08 20:13:08 +01:00
Christophe Bornet
2f0c67e851
ref: Bump ruff version to 0.8 (#5087) 2024-12-08 11:16:06 +00:00
Ali Saleh
7c01b5a040
feat: Enhance Observability with ArizePhoenixTracer Integration (#5058)
* Added ArizePhoenixTracer

* [autofix.ci] apply automated fixes

* Fixed Ruff Style Check Errors

* add Arize icon

* Fixed Mypy Errors

* Refactor ArizeIcon component to use arrow function syntax

Co-authored-by: Jeff Carpenter <jeffrey.carpenter@datastax.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
2024-12-05 16:09:02 +00:00
Christophe Bornet
c1bd7c89c3
fix: Fix test_get_and_cache_all_types_dict (#5054) 2024-12-05 14:15:21 +01:00
Luis Felipe Salazar Ucros
fcff5e4e48
fix: sambanova streaming (#5002)
fix: add sseclient-py dependency to fix sambanova streaming
2024-12-03 13:28:31 +00:00
Gabriel Luiz Freitas Almeida
712a43958c
fix: updates file size limit to use middleware and add tests for uploads (#4883) 2024-11-28 12:25:26 +00:00
Phil Miesle
654b44347b
adding ability for APIRequest to retry and save to a file (#4677)
* re-adding ability for APIRequest to retry and save to a file

* [autofix.ci] apply automated fixes

* enabling selective inclusion of httpx headers, along with response header

* [autofix.ci] apply automated fixes

* Update api_request.py

* [autofix.ci] apply automated fixes

* Update test_data_components.py

* Update test_data_components.py

* [autofix.ci] apply automated fixes

* Update api_request.py

* Update api_request.py

* Update api_request.py

* Update api_request.py

* Update api_request.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
2024-11-25 19:58:48 -08:00
Christophe Bornet
1ba2e0e71b
ref: Add aiofile to do async file operations (#4705)
Add aiofile to do async file operations
2024-11-25 23:50:25 +00:00
Gabriel Luiz Freitas Almeida
091944095f
chore: Bump package versions for langflow and langflow-base (#4816)
fix: bump package versions to 1.1.1 and 0.1.1 for langflow and langflow-base
2024-11-25 16:14:39 +00:00
Christophe Bornet
a670edd79a
feat: Bump blockbuster to v1.1.1 (#4802)
Bump blockbuster to v1.1.1
2024-11-23 14:44:41 -08:00
Karan Vaidya
3e1b22b23f
feat: improve composio oauth experience (#4613) 2024-11-23 15:23:57 +00:00
Christophe Bornet
ab63ddddbd
ref: Use blockbuster package (#4777)
* Use blockbuster package

* Upgrade blockbuster to v1.1
2024-11-23 15:05:56 +00:00
Sebastián Estévez
061971f913
chore: Tighten up dependencies (#4792)
* take 1 WIP

* remove firecrawl dep from langflow package, only usage appears to be in langflow-base

* langchain-google-genai to 2.0.1 which is what we have now in the lock file

* widen ranges based on old lock file

* lock
2024-11-22 11:37:17 -08:00
Sebastián Estévez
4f27dbd918
chore: speed up whl install in cli tests with uv (#4764)
uv for whl install
2024-11-21 17:19:18 +00:00
Gabriel Luiz Freitas Almeida
be7eac9e00
fix: Gracefully handle missing imports for model components (#4743)
* Handle ImportError for langchain_groq in Groq model initialization

* Refactor model input constants to handle missing imports gracefully

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-21 16:41:01 +00:00
Gabriel Luiz Freitas Almeida
9450f8529a
fix: Update dependency versions for pydantic to fix sqlmodel conflict (#4755)
Update dependency versions for pydantic in pyproject.toml
2024-11-21 16:01:14 +00:00
Eric Hare
2fa258068d
fix: CrewAI-based flows with no extra openai (#4683)
* fix: CrewAI-based flows with no extra openai

* [autofix.ci] apply automated fixes

* Clean up the location of the crewai model processing

* [autofix.ci] apply automated fixes

* Properly subclass the tasks and agents method

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-11-18 23:04:07 +00:00
Eric Hare
2cf3881dc6
fix: Upgrade astradb version and graph db component (#4580) 2024-11-13 12:24:25 -08:00
Gabriel Luiz Freitas Almeida
f78d3f40a5
chore: Bump version to 1.1.0 and 0.1.0 for langflow and langflow-base (#4574)
Bump version to 1.1.0 in pyproject.toml files
2024-11-13 10:45:08 -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
Í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
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
João
5a6c556e36
Feat: Adding Mem0 Integration (#4339)
* feat(frontend): adding Mem0 Icon

* feat(dependencies): adding and setting Mem0 dependency

* feat(frontend): adding Mem0 Icon

* feat: adding Mem0 components

* feat(dependencies): adding and setting Mem0 dependency

* Update uv.lock

update uv for memo

* update and delete mem0 removed

update and delete mem0 removed as per suggestion

* update requirement

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2024-11-11 15:15:09 +00:00
Eric Hare
a4863bbe57
fix: pdf parsing, pass as str instead of posix path (#4448)
* FIX: PyMuPDF for parsing, pass as str instead of posix path

* Switch back to pypdf due to licensing

* Allow specification of the number of threads

* [autofix.ci] apply automated fixes

* Update file.py

* Switch StrInput to IntInput

*  (Document QA.json, Vector Store RAG.json): Update FileComponent class to include IntInput for concurrency_multithreading to control the number of workers for parallel processing. This enhancement allows for better control and optimization of processing tasks.

* ⬆️ (pyproject.toml): upgrade langchain-core dependency from version 0.3.10 to version 0.3.12 to ensure compatibility and leverage new features

* ⬆️ (pyproject.toml): update langchain-core dependency to allow versions greater than or equal to 0.3.12 for compatibility reasons

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-11-08 16:55:06 +00:00
Gabriel Luiz Freitas Almeida
98274633db
fix: remove use of ImagePromptTemplate in image handling and adds image utils (#4467)
* remove poetry.lock

* fix: update langchain-core dependency version to 0.3.15

* feat: add functions to convert images to base64 and create data URLs

* refactor: simplify image URL handling by replacing ImagePromptTemplate with create_data_url function

* Fix image URL structure in data schema to use nested dictionary format

* Add unit tests for Data schema message conversion with text and images

* test: add unit tests for image utility functions to validate base64 conversion and data URL creation

* Refactor image URL generation to use `create_data_url` utility function instead of `ImagePromptTemplate`

* Add unit tests for message handling and image processing in schema module

- Introduce fixtures for temporary cache directory and sample image creation.
- Add tests for message creation from human and AI text.
- Implement tests for messages with single and multiple images.
- Include tests for invalid image paths and messages without sender.
- Add message serialization and conversion tests.
- Ensure cleanup of cache directory after tests.

* Use platformdirs to determine cache directory paths in test_schema_message.py
2024-11-08 08:24:19 -08:00