Commit graph

5,014 commits

Author SHA1 Message Date
Gabriel Luiz Freitas Almeida
6921d61300 refactor: Remove error handling for migrating messages from monitor service to database 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
162d9edb55 refactor: Update migrate_messages_from_monitor_service_to_database function in utils.py
This commit refactors the migrate_messages_from_monitor_service_to_database function in utils.py to correctly handle the session_id parameter. The session_id is now included in the key used to filter out messages that already exist in the database, ensuring that duplicate messages are not inserted. This improves the data integrity and consistency of the database.
2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
e456b006ea refactor: Update from_message method in MessageBase model to accept UUID as flow_id parameter 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
e6d1b2bc93 add type ignore 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
1ffc4212bc ♻️ (utils.py): ignore type error 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
fab1e327aa feat: Add field validation for flow_id in MessageTable model
This commit adds field validation for the `flow_id` attribute in the `MessageTable` model. The `validate_flow_id` class method is implemented to ensure that the `flow_id` value is either `None` or a valid UUID. This validation helps maintain data integrity and consistency when working with the `MessageTable` model.
2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
cbe3a05ebe feat: Migrate messages from monitor service to database 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
f7a61f5847 feat: Add flow_id serialization in Message class
This commit adds the `serialize_flow_id` method to the `Message` class in the `message.py` file. This method serializes the `flow_id` attribute of a `Message` object, converting it to a UUID if it is a string. This ensures consistent serialization of the `flow_id` attribute when working with the `Message` class.
2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
46dcc2ef56 Migrate messages from monitor service to database 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
163c70e027 feat: Add flow_id assignment in MessageBase constructor 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
be0065fb2d chore: Update schema and service files for DuckDbMessageModel 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
10361dd3a9 feat: Migrate messages from monitor service to database
This commit migrates messages from the monitor service to the database. It adds a new function `migrate_messages_from_monitor_service_to_database` in the `utils.py` file, which retrieves messages from the monitor service, adds them to the database, and deletes them from the monitor service. This migration ensures that messages are stored in the database for better reliability and retrieval.
2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
c478b6135f refactor: Improve readability and avoid variable shadowing in flows.py 2024-07-01 13:53:38 -03:00
rodrigosnader
9ac094b661 Apply Ruff formatting 2024-07-01 13:53:38 -03:00
Rodrigo
add2c48ab1 Update StoreMessageComponent for enhanced message handling 2024-07-01 13:53:38 -03:00
rodrigosnader
a892a5e126 Apply Ruff formatting 2024-07-01 13:53:38 -03:00
Rodrigo
384fc7e2c0 Update StoreMessageComponent for enhanced message handling
- Changed base class from CustomComponent to Component
- Added multiple input fields: message, sender, sender_name, session_id
- Included output field for stored messages
- Improved logic to handle both string and Message types
- Enhanced error handling and validation for message storage
2024-07-01 13:53:38 -03:00
italojohnny
a8a8fbd351 fix condition stop 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
5cefc8755b refactor: Add field_validator for files in MessageBase model 2024-07-01 13:53:38 -03:00
Gabriel Luiz Freitas Almeida
d1d5eb6e39 refactor: Update add_messages and add_messagetables functions to return Message objects 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
b2888e1a84 refactor: Remove unused imports and optimize get_messages function 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
5727a859b8 ♻️ (service.py): remove unused code related to adding and retrieving messages in MonitorService 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
b690834f6b 📝 (memory.py): Refactor get_messages function to use SQLAlchemy select statement for better performance and readability
📝 (memory.py): Refactor delete_messages function to use SQLAlchemy delete statement for better performance and readability
📝 (monitor/schema.py): Update MessageModel to use UUID type for id and flow_id for consistency and better data handling
2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
dea0cc33d5 refactor: ignore type error 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
95b0b91e18 chore: Fix issue with message timestamp conversion in MessageBase model 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
609c0d34c0 fix: Refactor monitor.py messages endpoints 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
ea5139dd7a Refactor add_messages function to separate message addition and commit logic 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
7710179977 Fix issue with message timestamp conversion in MessageBase model 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
405b428842 chore: Add error handling for message not found in update_message endpoint 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
c30b40c4b4 refactor: Update messages endpoints to use database table 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
ed40e55ef1 refactor: Update add_messages function to use database session
This commit refactors the add_messages function in memory.py to use a database session for adding messages to the monitor service. Instead of directly calling the monitor_service.add_message method, the messages are now added using a session object. This change ensures that the messages are properly persisted in the database and improves the reliability of the application.
2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
2f2bc4008f feat: Add message table to the database
This commit adds a new table called "message" to the database. The table includes columns for timestamp, sender, sender_name, session_id, text, id, flow_id, and files. The "message" table is created using Alembic migration. This addition allows for storing and retrieving messages in the application.
2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
6564d04206 fix: vertex_id is now set correctly when it is a group flow 2024-07-01 13:53:37 -03:00
cristhianzl
fa4dd19ce6 ♻️ (flows.py): rename loop variable flow to _flow to avoid shadowing and improve readability 2024-07-01 13:53:37 -03:00
cristhianzl
496f4f6b91 refactor: Ensure flow names are unique by appending a number if necessary 2024-07-01 13:53:37 -03:00
Gabriel Luiz Freitas Almeida
707ed18ca5
Merge branch 'main' into dse 2024-06-26 08:10:56 -07:00
Nicolò Boschi
5130c67e4a Cassandra: support for non-AstraDB databases 2024-06-26 16:57:18 +02:00
Nicolò Boschi
446ac2549f
components: simplify astra vectorize 2024-06-26 15:13:50 +02:00
Nicolò Boschi
f94b86f6b7
components: simplify astra vectorize 2024-06-26 15:13:49 +02:00
Rafael Miller
9373749163
Merge branch 'main' into feat/firecrawl-integration 2024-06-25 17:25:58 -03:00
rafaelsideguide
d4c18d3c00 added firecrawl integration 2024-06-25 17:10:29 -03:00
Gabriel Luiz Freitas Almeida
ad4d7c0090 chore: Update package versions in pyproject.toml files 2024-06-25 11:32:21 -07:00
Gabriel Luiz Freitas Almeida
2020a356dd Refactor telemetry service payload field names for consistency 2024-06-25 11:32:21 -07:00
Cristhian Zanforlin Lousa
4077135ba7 Updating Tests and Fixing Related Bugs (#2319)
* 🐛 (tableNodeCellRender): fix templateValue check to use Object.keys
 (textAreaComponent): add Case component for conditional rendering
♻️ (editNodeModal): remove commented-out useEffect code
 (basicExamples.spec): update test selectors and increase timeout values

 (filterEdge.spec.ts): update test IDs to match new naming conventions

 (inputListComponent.spec.ts, intComponent.spec.ts): update test IDs and streamline test steps for consistency and clarity

 (keyPairListComponent.spec.ts): update test ID for model element
 (keyPairListComponent.spec.ts): add steps to test editing model options and saving changes

*  (tests): update end-to-end tests for chat input/output and modal components

- Update test selectors for better accuracy
- Add keyboard interaction in chatInputOutputUser.spec.ts
- Improve file handling in chat image upload test
- Refine prompt modal component tests for better validation
- Enhance twoEdges.spec.ts with additional view controls

* ♻️ (tests): refactor repeated click actions into reusable function in e2e tests

*  (tests): replace waitForTimeout with waitForSelector in end-to-end tests

*  (typescript_test.yml): add --debug flag to Playwright test command for better debugging

*  (typescript_test.yml): enable trace option in Playwright tests for better debugging

*  (typescript_test.yml): reduce Playwright test workers from 2 to 1 to improve stability
 (textInputOutput.spec.ts): add waitFor visibility checks to ensure elements are visible before interaction

*  (tests): update paths for test assets to correct locations
 (tests): add waitForSelector to ensure elements are loaded before interaction

*  (typescript_test.yml): increase Playwright workers from 1 to 2 to speed up tests
 (chatInputOutputUser.spec.ts): increase timeout for AI response to 100000ms
 (chatInputOutputUser.spec.ts): correct file path for image upload test
 (deleteComponentFlows.spec.ts): change waitFor to target last checkbox-component
 (store.spec.ts): increase timeout for share button to 100000ms

* 🐛 (flows.py): ensure flow names are unique by appending a number if necessary

* Apply Ruff formatting

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Cristhianzl <Cristhianzl@users.noreply.github.com>
2024-06-25 10:21:38 -07:00
Gabriel Luiz Freitas Almeida
fff4537b1e
Fixes CLI and server (#2342)
* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* Refactor "created_at" column type for consistency and fix cancel middleware (#2316)

* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* refactor: update "created_at" column type to use the "sa" module for consistency

* Update README.md

Add 1.0 banner

* chore: Remove unused import in ToolCallingAgent.py

* fix: adapt RequestCancelledMiddleware to handle cancelled requests

* chore: Remove unused import in test_helper_components.py

* refactor: Declare queue variable with explicit type in RequestCancelledMiddleware

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>

* chore: Update AstraDB.py imports and method signature for search_documents

* chore: Update package versions in pyproject.toml files

* chore: Update run-name in release.yml for Langflow Release

* fix: add call to _add_documents_to_vector_store in AstraDB component

* chore: Fix missing parentheses in RequestCancelledMiddleware

* chore: Update pydantic-settings and tenacity versions

The commit updates the versions of the `pydantic-settings` and `tenacity` packages in the `poetry.lock` file. The `pydantic-settings` version is updated from 2.3.3 to 2.3.4, and the `tenacity` version is updated from 8.4.1 to 8.4.2.

* Update README.md

Add 1.0 banner

* fix fetch data to work even with autologin true

* format code

* deactivate stop button until we have a better solution (#2337)

* consistent auth error status code

* [Fix] unhandled http errors in background tasks (#2326)

* handle exceptions for background task

* revert changes that is not related to this HTTP handler exception

* Refactor model GoogleGenerativeAIModel (#2251)

* refactor model GoogleGenerativeAIModel

* adds model options

---------

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

* Fix .env values not being honored in CLI (#2336)

* chore: Update launch.json to include environment file

The launch.json file was updated to include the environment file path for the "run" command in the "Python: Flask" configuration. This change ensures that the necessary environment variables are loaded when running the backend base of Langflow frontend. The previous configuration had the environment variables set in the "env" field, but it has been removed as it is redundant with the new environment file inclusion.

* chore: Update dotenv import and environment variable handling

This commit updates the import statement for the `dotenv` module in the `__main__.py` file. It adds the `dotenv_values` function to the import statement to enable loading environment variables from a file. Additionally, it introduces a new section of code that maps environment variables to their corresponding variables and types, allowing for more flexible and dynamic configuration. The commit also updates the `run` function to update variables based on environment variables, if they are present. This change improves the handling of environment variables and enhances the configurability of the application.

* deactivate stop button until we have a better solution (#2337)

* consistent auth error status code

* [Fix] unhandled http errors in background tasks (#2326)

* handle exceptions for background task

* revert changes that is not related to this HTTP handler exception

* Refactor model GoogleGenerativeAIModel (#2251)

* refactor model GoogleGenerativeAIModel

* adds model options

---------

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

---------

Co-authored-by: ming luo <itestmycode@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>

* Update GitHub Actions workflows and dependencies (#2341)

* chore: Add GitHub Actions workflow for testing documentation build

* Fix server start command in GitHub Actions workflows

* chore: Bump langflow and langflow-base versions

* chore: Update GitHub Actions workflow for docs_test

* chore: Update typing import in __main__.py

* Fix user authentication and authorization issues (#2343)

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: ming luo <itestmycode@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
2024-06-25 09:20:55 -07:00
Gabriel Luiz Freitas Almeida
8eae0c5df7
deactivate stop button until we have a better solution (#2337) 2024-06-25 05:00:22 -07:00
Gabriel Luiz Freitas Almeida
af98504e4a
Fix Astra Component and Middleware (#2321)
* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* Refactor "created_at" column type for consistency and fix cancel middleware (#2316)

* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* refactor: update "created_at" column type to use the "sa" module for consistency

* Update README.md

Add 1.0 banner

* chore: Remove unused import in ToolCallingAgent.py

* fix: adapt RequestCancelledMiddleware to handle cancelled requests

* chore: Remove unused import in test_helper_components.py

* refactor: Declare queue variable with explicit type in RequestCancelledMiddleware

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>

* chore: Update AstraDB.py imports and method signature for search_documents

* chore: Update package versions in pyproject.toml files

* chore: Update run-name in release.yml for Langflow Release

* fix: add call to _add_documents_to_vector_store in AstraDB component

* chore: Fix missing parentheses in RequestCancelledMiddleware

* chore: Update pydantic-settings and tenacity versions

The commit updates the versions of the `pydantic-settings` and `tenacity` packages in the `poetry.lock` file. The `pydantic-settings` version is updated from 2.3.3 to 2.3.4, and the `tenacity` version is updated from 8.4.1 to 8.4.2.

* Update README.md

Add 1.0 banner

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
2024-06-24 13:29:41 -07:00
Gabriel Luiz Freitas Almeida
c4d1427b3a chore: Update pydantic-settings and tenacity versions
The commit updates the versions of the `pydantic-settings` and `tenacity` packages in the `poetry.lock` file. The `pydantic-settings` version is updated from 2.3.3 to 2.3.4, and the `tenacity` version is updated from 8.4.1 to 8.4.2.
2024-06-24 17:22:29 -03:00
Gabriel Luiz Freitas Almeida
fcdaeb3b30 chore: Fix missing parentheses in RequestCancelledMiddleware 2024-06-24 17:22:01 -03:00
Gabriel Luiz Freitas Almeida
d85657f214
Refactor "created_at" column type for consistency and fix cancel middleware (#2316) (#2320)
* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* Refactor "created_at" column type for consistency and fix cancel middleware (#2316)

* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* refactor: update "created_at" column type to use the "sa" module for consistency

* Update README.md

Add 1.0 banner

* chore: Remove unused import in ToolCallingAgent.py

* fix: adapt RequestCancelledMiddleware to handle cancelled requests

* chore: Remove unused import in test_helper_components.py

* refactor: Declare queue variable with explicit type in RequestCancelledMiddleware

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>

* chore: Update AstraDB.py imports and method signature for search_documents

* chore: Update package versions in pyproject.toml files

* chore: Update run-name in release.yml for Langflow Release

* fix: add call to _add_documents_to_vector_store in AstraDB component

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
2024-06-24 13:15:54 -07:00