Commit graph

6,039 commits

Author SHA1 Message Date
Cristhian Zanforlin Lousa
39e3196933 Changing layout of edit node modal 2023-06-05 20:07:08 -03:00
anovazzi1
33399dfba3
Dark mode after refreshing page (#430)
### Description
This pull request introduces an enhancement to the existing application
by adding persistence to the dark mode feature. Currently, when the page
is refreshed, the dark mode setting reverts to the default light mode.
With this enhancement, the dark mode state will be maintained even after
refreshing the page.

### Changes Made
1. Added a new setting in the application to store the user's preference
for dark mode.
2. Implemented functionality to persist the dark mode preference in
local storage.
3. Modified the page initialization logic to retrieve the dark mode
preference from local storage and apply it on page load.
2023-06-05 18:02:56 -03:00
Gabriel Luiz Freitas Almeida
5a103f0f6f 🔨 refactor(base.py): extract methods to handle model-specific and API key-specific field values
This commit refactors the FrontendNode class by extracting two methods to handle specific field values related to models and API keys. The _handle_model_specific_field_values method handles the options and is_list properties for fields related to models, while the _handle_api_key_specific_field_values method handles the display_name and required properties for fields related to API keys. This improves the readability and maintainability of the code.
2023-06-05 13:48:17 -03:00
Gabriel Luiz Freitas Almeida
ec585b8acc 🐛 fix(flow.py): change flow field type from str to Dict to allow for JSON data
 feat(flow.py): add validator to ensure flow field is a valid JSON object with required fields
The flow field in the FlowBase model has been changed from a string to a dictionary to allow for JSON data. A validator has been added to ensure that the flow field is a valid JSON object with the required fields. The tests have been updated to reflect these changes.
2023-06-05 13:40:14 -03:00
Jacob Lee
5b28bbb795 Initial support for Azure LLM nodes.
There are still some rough edges due to underlying langchain and
openai API limitations, e.g. hwchase17/langchain#3769 and
openai/openai-python#411. Notably, you can't use the Azure and
non-Azure node types in the same server, since there's global openai
configuration needed to choose between the two. So it's probably best
to still leave the Azure node types commented out in the default
config. But with this PR, if you uncomment those nodes and start the
server with OPENAI_API_TYPE=azure, you will have working Azure nodes.
2023-06-05 09:55:16 -05:00
Lucas Oliveira
521cecf2c1 Fixed visual things at the meeting 2023-06-05 11:39:20 -03:00
Lucas Oliveira
886a938b98 Rename component added and set 2023-06-05 10:11:56 -03:00
Lucas Oliveira
2a6c8ae92e Fixed header to display options only on flow name 2023-06-05 08:02:35 -03:00
Lucas Oliveira
56d0898861 Merge branch 'dev' into mainPage 2023-06-05 07:43:31 -03:00
Lucas Oliveira
24e205287a Added header 2023-06-05 07:42:07 -03:00
Gabriel Luiz Freitas Almeida
5a46c1e1a0 🐛 fix(database.py): handle case where data does not contain "flows" key
 feat(database.py): add default argument to json.dumps to handle datetime objects
🚨 test(database.py): add tests for batch flow creation, file upload, and file download
The fix in database.py handles the case where the data dictionary does not contain the "flows" key. This is important because the code assumes that the "flows" key is present and will raise an exception if it is not. The fix adds a check to see if the "flows" key is present and if not, it creates a new FlowListCreate object with the data as a list of FlowCreate objects.

The feature in database.py adds a default argument to the json.dumps function to handle datetime objects. This is important because the default json encoder does not handle datetime objects and will raise an exception if it encounters one.

The tests in test_database.py cover the batch creation of flows, uploading a file containing flows, and downloading a file containing flows. These tests ensure that the endpoints are working as expected and that the data is being handled correctly.
2023-06-04 22:58:43 -03:00
Gabriel Luiz Freitas Almeida
ce2f0ebf48 update poetry lock 2023-06-04 22:15:49 -03:00
Gabriel Luiz Freitas Almeida
af0d9456b5 Merge branch 'dev' into db 2023-06-04 22:14:25 -03:00
Gabriel Luiz Freitas Almeida
eeee895f6a 🔒 chore(pyproject.toml): update fastapi dependency to version 0.96.0
FastAPI dependency has been updated to version 0.96.0 to ensure that the application is using the latest version of the framework.
2023-06-04 21:42:14 -03:00
Gabriel Luiz Freitas Almeida
42c7e1c331 🚀 feat(flow.py): add relationship to FlowStyle model
🚀 feat(flowstyle.py): add FlowStyle model
🚀 feat(flowstyle.py): add FlowStyleCreate and FlowStyleRead models
🐛 fix(settings.py): correct typo in database_url variable name
The Flow model now has a relationship to the FlowStyle model, which allows for the creation of a FlowStyle object that is associated with a Flow object. The FlowStyle model is a new model that contains the color and emoji fields, which are used to style the Flow object. The FlowStyleCreate and FlowStyleRead models are used to create and read FlowStyle objects respectively. The typo in the database_url variable name has been corrected to ensure that the application connects to the correct database.
2023-06-04 21:36:03 -03:00
Gabriel Luiz Freitas Almeida
e01f1b44da
Added HuggingFaceHub and fixed the stream parameter + added summariza… (#435) 2023-06-02 19:23:57 -03:00
Gabriel Luiz Freitas Almeida
00100ff9f1 🔖 chore(pyproject.toml): bump up version to 0.0.81
The version number in the pyproject.toml file has been updated from 0.0.80 to 0.0.81. 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-06-02 19:16:09 -03:00
GMS
858b88240e Set text-generation as a default task value 2023-06-02 22:16:43 +01:00
Cristhian Zanforlin Lousa
1bd3303c52 Change the delay to open to instant 2023-06-02 17:49:53 -03:00
Gabriel Luiz Freitas Almeida
b754c8b490 Merge branch 'jimwhite-anthropic' into dev 2023-06-02 17:43:19 -03:00
Cristhian Zanforlin Lousa
c8665ef422 Fixing css formatting codacy 2023-06-02 17:35:30 -03:00
Cristhian Zanforlin Lousa
f0ca7eeac8 formatting with codacy 2023-06-02 17:29:22 -03:00
GMS
90d2517fc1 Added HuggingFaceHub and fixed the stream parameter + added summarization as a task option 2023-06-02 21:22:21 +01:00
Cristhian Zanforlin Lousa
bd7cb06e91 merge fix 2023-06-02 17:17:51 -03:00
Cristhian Zanforlin Lousa
02cb94709d Adding shad tooltip and grouping by class on edges 2023-06-02 17:15:59 -03:00
Jim White
cce41189e9 Trim too long comments about Anthropic models. 2023-06-02 12:18:38 -07:00
Jim White
07afc08129 Add model names for Anthropic and add ChatAnthropic (preferred over the deprecated Anthropic LLM). 2023-06-02 12:08:57 -07:00
Gabriel Luiz Freitas Almeida
df3cdb90b7 🔨 refactor(types.py): reorder class definitions to match the order of their usage in the code
The order of the class definitions in the file has been changed to match the order of their usage in the code. This improves the readability of the code and makes it easier to understand the relationships between the classes. No functionality has been changed.
2023-06-02 14:21:38 -03:00
anovazzi1
430043098d fix dropdown value with wrong color 2023-06-02 14:15:06 -03:00
Gabriel Luiz Freitas Almeida
534f47f153 🔨 refactor(types.py): import flatten_list function from graph.utils module
This commit simply imports the flatten_list function from the graph.utils module to be used in the AgentVertex class. This improves the readability of the code and reduces the number of lines of code.
2023-06-02 14:14:47 -03:00
Gabriel Luiz Freitas Almeida
9517ffe3b3 Merge remote-tracking branch 'origin/dev' into fix_toolkits 2023-06-02 12:56:02 -03:00
Gabriel Luiz Freitas Almeida
e21447aad8
refactor: change Node to Vertex (#426) 2023-06-02 12:16:55 -03:00
Gabriel Luiz Freitas Almeida
b7286afd32 🎨 style(types.py): improve readability of return statement in TextSplitterVertex
The return statement in TextSplitterVertex was improved to be more readable by adding a new line before the Documents field. This makes it easier to read and understand the output of the function.
2023-06-02 12:14:03 -03:00
Gabriel Luiz Freitas Almeida
b75892855f
🚀 feat(langflow): add PythonFunctionTool to the custom tools (#417) 2023-06-02 12:11:24 -03:00
Gabriel Luiz Freitas Almeida
73e07be0c7
Merge branch 'dev' into python_function_tool 2023-06-02 12:11:02 -03:00
anovazzi1
7d49319696 saving darkMode on localStorage 2023-06-02 11:23:55 -03:00
Jim White
4f152bc7ef Fix view for regular Anthropic logo 2023-06-01 23:28:44 -07:00
Jim White
8a049187df Add Anthropic to LLMs including an icon. 2023-06-01 22:55:02 -07:00
Cristhian Zanforlin Lousa
0e234030a9 Starting migration for shadUI 2023-06-01 21:10:27 -03:00
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