Commit graph

5,500 commits

Author SHA1 Message Date
Cristhian Zanforlin Lousa
56ca610a79 Starting migration to shadUI 2023-06-01 21:09:50 -03:00
anovazzi1
730fe45518
Bringing the menu options opened on search (#427)
This pull request introduces a new feature that enhances the search
functionality by displaying menu options when performing a search.
Currently, the search results only present a list of relevant items, but
with this feature, users will have quick access to additional actions
and functionalities directly from the search results.
2023-06-01 21:03:25 -03:00
Jacob Lee
76bbf62475 Surface an error message when a flow has an unknown node type.
This improves the user experience for issues like #283.
2023-06-01 18:04:56 -05:00
Cristhian Zanforlin Lousa
da5b15fa68 Bringing the menu options opened on search 2023-06-01 17:47:27 -03:00
Alexandre Henrique
7ebe47df44 Merge branch 'add_extra_fields_documentloaders' of https://github.com/logspace-ai/langflow into add_extra_fields_documentloaders 2023-06-01 16:22:28 -03:00
Alexandre Henrique
a662c5a6cc reformatted with black 2023-06-01 16:21:11 -03:00
Alexandre Henrique Pereira Tavares
f31f0a5a35
Merge branch 'dev' into add_extra_fields_documentloaders 2023-06-01 15:42:41 -03:00
Gabriel Luiz Freitas Almeida
0cef4bd818 refactor: change Node to Vertex 2023-06-01 15:37:11 -03:00
Gabriel Luiz Freitas Almeida
5b5eea9895 🚀 feat(langflow): reorganize graph package to improve modularity and maintainability
The changes include:
- Moved the `Edge` class to a new `edge` package
- Moved the `Graph` class to a new `graph` package
- Moved the `Node` class to a new `node` package
- Moved the `VectorStoreNode` class to the `node/types.py` module
- Moved the `Edge`, `Graph`, and `Node` classes to their respective `base.py` modules
- Added an `__init__.py` file to each package to allow for importing of classes
- Added a `constants.py` module to the `graph` package to store constants used in the `Graph` class
- Refactored the `Graph` class to use the new `Node` and `Edge` classes
- Refactored the `Graph` class to use a dictionary to map node types to their respective classes
- Refactored the `Graph` class to remove invalid nodes from the graph
- Refactored the `Graph` class to handle the LLM node within the graph
- Refactored the `Graph` class to build the nodes before building the edges
- Refactored the `Graph` class to use the `get_node` method to find nodes by id
- Refactored the `Graph` class to use the `get_node_neighbors` method to find the neighbors of a node
- Refactored the `Graph` class to use the `get_children_by_node_type` method to find the children of a node based on the node type

These changes improve the modularity and maintainability of the `langflow` package by separating the classes into their respective packages and modules. The changes also make it easier to add new node types to the `Graph` class by using a dictionary to map node types to their respective classes.

🚀 feat(node): add Node class to represent a node in the graph
🚀 feat(constants.py): add DIRECT_TYPES constant to represent direct types in a node's template
The Node class represents a node in the graph and is responsible for parsing the data and building the module. The DIRECT_TYPES constant is a list of direct types in a node's template.

🚧 chore(types.py): add import statements for typing and Node classes
This commit adds import statements for the typing module and the Node class to the types.py file. This is necessary for the code to run properly as it uses these classes and modules.

🚧 chore(loading.py): remove unnecessary import statement
This commit removes an unnecessary import statement from the loading.py file. The import statement was causing a circular import error and was not needed for the code to run properly.

🚧 chore(run.py): update import statement for Graph class
This commit updates the import statement for the Graph class in the run.py file. The import statement was outdated and was causing an import error.

🚧 chore(conftest.py): update import statement for Graph class
This commit updates the import statement for the Graph class in the conftest.py file. The import statement was outdated and was causing an import error.

🚧 chore(test_graph.py): update import statements for Node and Edge classes
This commit updates the import statements for the Node and Edge classes in the test_graph.py file. The import statements were outdated and were causing import errors.
2023-06-01 15:07:56 -03:00
Deepankar Mahapatro
4ba881d0e1
build: update lcserve version to support public (#424) 2023-06-01 11:09:55 +05:30
Deepankar Mahapatro
2285304e09 build: update lcserve version to support public 2023-06-01 10:56:39 +05:30
Deepankar Mahapatro
0a0dc673c1
build: push lcserve image as public (#423) 2023-06-01 10:10:46 +05:30
Deepankar Mahapatro
a9e1fb4eb7 build: push lcserve image as public 2023-06-01 10:00:56 +05:30
Cristhian Zanforlin Lousa
585e94285d Adding title and icon of the parent menu on hover of the handle 2023-06-01 00:27:01 -03:00
anovazzi1
4c901ec022
Changing the mouse cursor on Canva's React Flow (#420)
## Description

This pull request introduces a new feature that allows users to change
the mouse cursor on Canva's React Flow. By updating the CSS and
JavaScript code, the cursor behavior can be modified to provide a
customized experience for users.

## Motivation

The ability to change the mouse cursor provides a way to enhance user
interaction and personalize the user experience within Canva's React
Flow. This feature can be particularly useful for applications or
websites that require specific cursor styles to match the overall design
or functionality.
2023-05-31 23:37:20 -03:00
Cristhian Zanforlin Lousa
2ee0244834 fixing identation warnings spaces - new 2023-05-31 22:20:12 -03:00
Cristhian Zanforlin Lousa
f27d067609 fixing identation warnings spaces 2023-05-31 22:16:16 -03:00
Cristhian Zanforlin Lousa
344b94f9b5 fixing warning identation 2023-05-31 22:06:49 -03:00
Cristhian Zanforlin Lousa
d9cae6b211 fixing identation warnings 2023-05-31 22:00:03 -03:00
Gabriel Luiz Freitas Almeida
08d981822b
Add Chat Icon Animation to the Last AI Message (#418) 2023-05-31 21:54:37 -03:00
Cristhian Zanforlin Lousa
9e4f898f54 Changing the mouse cursor on Canva's React Flow 2023-05-31 21:38:06 -03:00
Cristhian Zanforlin Lousa
6332c4c084 Changing the icon to move just in the last message on chat 2023-05-31 21:22:42 -03:00
Cristhian Zanforlin Lousa
893dc22fc4 Change the icon to move just in the last message 2023-05-31 21:21:51 -03:00
Cristhian Zanforlin Lousa
c33d7b9482 Fixing border edit icon 2023-05-31 21:03:27 -03:00
Cristhian Zanforlin Lousa
6d40575426 Adding tooltip and displaying just icons 2023-05-31 20:40:56 -03:00
Cristhian Zanforlin Lousa
ccd8652253 Removing the copy icon 2023-05-31 19:05:26 -03:00
Cristhian Zanforlin Lousa
14f69d8e56 Removing debugger from code 2023-05-31 16:48:43 -03:00
Cristhian Zanforlin Lousa
8f28531010 make format 2023-05-31 16:46:20 -03:00
Cristhian Zanforlin Lousa
d5cd5bfbd7 Adding githooks fold 2023-05-31 16:45:14 -03:00
Cristhian Zanforlin Lousa
47d6c94161 Adding any type to filter of edges 2023-05-31 16:42:30 -03:00
Gabriel Luiz Freitas Almeida
2b716fb981
fix(chatModal/index.ts) updated validation condition for required properties of nodes, to allow False values to be accepted (#413) 2023-05-31 16:40:30 -03:00
Lucas Oliveira
88095d8896 Fixed handle position when adding parameters to node 2023-05-31 16:12:25 -03:00
Cristhian Zanforlin Lousa
675b0fb2f6 Changing modal layout 2023-05-31 15:55:55 -03:00
Gabriel Luiz Freitas Almeida
e7b4010a7c Merge remote-tracking branch 'origin/dev' into python_function_tool 2023-05-31 15:42:55 -03:00
Gabriel Luiz Freitas Almeida
be09849081 🚀 feat(langflow): rename PythonFunction to PythonFunctionTool for better semantics
🚀 feat(langflow): add PythonFunctionToolNode to the frontend node tools
🚀 feat(langflow): add PythonFunctionTool to the custom tools
🚀 feat(langflow): add get_function to importing utils to get the function from code
🚀 feat(langflow): add func parameter to PythonFunctionTool to store the function
🚀 feat(langflow): add name and description parameters to PythonFunctionTool
🚀 feat(langflow): update instantiate_tool to use PythonFunctionTool instead of PythonFunction
🚀 feat(langflow): update constants to use PythonFunctionTool instead of PythonFunction
🚀 feat(langflow): update custom.py to use PythonFunctionTool instead of PythonFunction
🚀 feat(langflow): update loading.py to use get_function and PythonFunctionTool
🚀 feat(langflow): update utils.py to use get_function
🚀 feat(langflow): update test_custom_types.py to use get_function and PythonFunctionTool
🚀 feat(langflow): update test_graph.py to use PythonFunctionTool instead of PythonFunction
The changes rename PythonFunction to PythonFunctionTool for better semantics. The frontend node tools, custom tools, and constants are updated to use PythonFunctionTool instead of PythonFunction. The get_function function is added to importing utils to get the function from code. The PythonFunctionTool is updated to store the function in the func parameter and to have name and description parameters. The instantiate_tool, loading.py, and utils.py are updated to use get_function and PythonFunctionTool. The test_custom_types.py and test_graph.py are updated to use PythonFunctionTool instead of PythonFunction.
2023-05-31 15:41:16 -03:00
Gabriel Luiz Freitas Almeida
dedbe3c906 🎨 refactor(complex_example.json): rename "PythonFunction" to "PythonFunctionTool" and add "description" and "name" fields
The "PythonFunction" type has been renamed to "PythonFunctionTool" to better reflect its purpose. Additionally, two new fields have been added: "description" and "name". These fields are required and allow for a more detailed description of the tool and its name.
2023-05-31 15:40:20 -03:00
Alexandre Henrique
cd2944bac6 added add_extra_fields method to textsplitters 2023-05-31 15:40:09 -03:00
Lucas Oliveira
70e66a51ec Node edit modal done, bugs with handle and table 2023-05-31 13:29:58 -03:00
Gabriel Luiz Freitas Almeida
2af55dc162 Merge remote-tracking branch 'origin/main' into dev 2023-05-31 12:54:34 -03:00
Rodrigo Nader
647f7b7a16
Add FAISS to vectorstores (#414)
 feat(config.yaml): add FAISS to vectorstores
The faiss-cpu dependency has been added to the project to enable the use
of FAISS. FAISS has been added to the list of vectorstores in the
config.yaml file to allow for the use of FAISS in the project.
2023-05-31 12:50:12 -03:00
Gabriel Luiz Freitas Almeida
b72f46c37a 🔖 chore(pyproject.toml): bump up version to 0.0.80
The version number in the pyproject.toml file has been updated from 0.0.79 to 0.0.80. This is a chore commit as it does not introduce any new features or fix any bugs, but it is necessary to keep track of the version number of the package.
2023-05-31 12:27:57 -03:00
Gabriel Luiz Freitas Almeida
98b1b13d3a 🚀 feat(pyproject.toml): add faiss-cpu dependency
 feat(config.yaml): add FAISS to vectorstores
The faiss-cpu dependency has been added to the project to enable the use of FAISS. FAISS has been added to the list of vectorstores in the config.yaml file to allow for the use of FAISS in the project.
2023-05-31 12:26:55 -03:00
Lucas Oliveira
71cc9092f8 Added duplicate function on menu 2023-05-31 12:25:12 -03:00
Lucas Oliveira
bb62ea25bd Fixed copy button on node toolbar 2023-05-31 12:05:24 -03:00
Jeremy Naccache
d02d11213e fix(chatModal/index.ts) updated validation condition for required properties of nodes, to allow False values to be accepted 2023-05-31 17:00:18 +02:00
Lucas Oliveira
3eaff0b638 Added copy button on toolbar and changed Required indicator 2023-05-31 11:52:56 -03:00
Gabriel Luiz Freitas Almeida
25d77eaf87 🐛 fix(custom.py): fix JsonAgent.from_toolkit_and_llm method to handle both list and JsonToolkit input
🔥 chore(test_graph.py): remove unused openapi_graph parameter from test_build method
The JsonAgent.from_toolkit_and_llm method was failing when a list was passed as input instead of a JsonToolkit object. The fix now handles both cases. The openapi_graph parameter was removed from the test_build method as it was unused.
2023-05-31 11:44:12 -03:00
Gabriel Almeida
fbfcff74c2 🔨 refactor(endpoints.py): remove unused imports and format code
The imports for `File`, `HTTPException`, `UploadFile`, and `cache_manager` were removed as they were not being used in the code. The code was also formatted to follow PEP8 guidelines.

🔧 chore(base.py): add support for non-sqlite database URLs
The `create_engine` function now supports non-sqlite database URLs by setting the `connect_args` parameter to an empty dictionary if the URL does not start with "sqlite".

🔧 chore(flow.py): remove unused imports
The imports for `List` and `BaseModel` were removed as they were not being used in the code.
2023-05-31 11:19:43 -03:00
Gabriel Almeida
ae0cc86a76 🐛 fix(endpoints.py): fix predict endpoint to load flow from database instead of request
 feat(endpoints.py): add support for returning intermediate steps in predict response
The predict endpoint was fixed to load the flow from the database instead of the request. This ensures that the correct flow is used for prediction. Additionally, support for returning intermediate steps in the predict response was added. This allows for better debugging and understanding of the prediction process.
2023-05-31 11:13:22 -03:00
Gabriel Almeida
3e4a81c7ae 🔥 chore(test_graph.py): remove unused imports
The imports for FileToolNode and ToolkitNode were removed as they were not being used in the test file.
2023-05-31 01:14:54 -03:00