Commit graph

6,479 commits

Author SHA1 Message Date
Gabriel Almeida
7da8c0ef92 chore: refactor of template, frontend_node and field
This will improve the readability of the code and maintainability.
2023-05-27 15:56:46 -03:00
Gabriel Almeida
35dce224d7 📝 docs(nodes.py): update SQLAgentNode description to reflect its new implementation
The description of the SQLAgentNode has been updated to reflect its new implementation, which now constructs a SQL agent from an LLM and tools instead of a Vector Store Router. This change was made to improve the accuracy of the description and to better reflect the functionality of the node.
2023-05-27 14:24:19 -03:00
Gabriel Ferreira Rosalino
aac6e3f2e9
Merge branch 'logspace-ai:dev' into gabfr-patch-1 2023-05-27 14:15:16 -03:00
Gabriel Ferreira Rosalino
f44e2f97f7
fix: SQLAgent
The queryCheckerTool now needs an extra arg with the LLM instance: https://github.com/hwchase17/langchain/blob/master/langchain/tools/sql_database/tool.py#L108

I added it so the SQLAgent can work normally now
2023-05-27 14:12:18 -03:00
Gabriel Luiz Freitas Almeida
09aa796af0
Changes to accomodate new vector stores (#366) 2023-05-27 14:10:54 -03:00
Gabriel Luiz Freitas Almeida
c224608601
🔨 refactor(base.py): refactor FrontendNode.format_field() method to improve readability and maintainability (#363) 2023-05-27 14:10:38 -03:00
Gabriel Almeida
de0a581031 🔥 refactor(nodes.py): remove unused import of deepcopy
🔥 refactor(custom_lists.py): remove unused import of vectorstores
The import of deepcopy in nodes.py and vectorstores in custom_lists.py are not used in the codebase and can be safely removed to improve code readability and maintainability.
2023-05-27 12:14:50 -03:00
Gabriel Almeida
9cb52994ad 🔧 chore(langflow): add Weaviate to vectorstores and add TODO comment to fix Weaviate integration
Weaviate has been added to the list of vectorstores in the config.yaml file. A TODO comment has been added to the nodes.py file to fix the integration with Weaviate. Weaviate requires the weaviate_url to be passed as it is not part of the class or from_texts method. The add_extra_fields method needs to be fixed to include the weaviate_url parameter.
2023-05-27 11:03:06 -03:00
Gabriel Almeida
297c518c3b Merge remote-tracking branch 'origin/dev' into new_vec_stores 2023-05-27 09:43:13 -03:00
Gabriel Almeida
b42b4e5868 Merge remote-tracking branch 'origin/main' into dev 2023-05-27 09:38:52 -03:00
Gabriel Almeida
56da636915 🔨 refactor(nodes.py): extract common field attributes to variables and set them accordingly
This commit extracts common field attributes to variables and sets them accordingly. The basic_fields and advanced_fields variables are used to set the show and advanced attributes of the fields. The API Key field is now displayed as "API Key" and its value is hidden. The location field now has a default value of ":memory:" and its placeholder is also set to ":memory:". The password attribute of the key fields is set to False.

Issue Implement Qdrant #361
2023-05-26 23:09:56 -03:00
Gabriel Luiz Freitas Almeida
12c23408e0
Merge branch 'dev' into 335-implement-docarray-vectorstore 2023-05-26 22:50:16 -03:00
Gabriel Almeida
e10a21f824 🐛 fix(langflow): add type ignore to node variable in LangChainTypeCreator
🐛 fix(langflow): remove unused imports in base.py files
The variable node in LangChainTypeCreator was causing a type error, so a type ignore was added to fix the issue. Additionally, unused imports were removed from both base.py files.
2023-05-26 22:34:53 -03:00
Gabriel Almeida
bd9d90786a 🔥 chore(base.py): remove unused process_field method from TemplateFieldCreator
The process_field method in the TemplateFieldCreator class is not used anywhere in the codebase and is therefore removed to improve code readability and maintainability.
2023-05-26 22:29:52 -03:00
Gabriel Almeida
342c2eaec7 🔨 refactor(base.py): refactor FrontendNode.format_field() method to improve readability and maintainability
This commit refactors the FrontendNode.format_field() method to improve its readability and maintainability. The method now uses helper methods to handle specific field types and values, and to determine whether a field should be shown, be a password field, or be multiline. The method also uses a dictionary to handle special fields and their respective handlers.
2023-05-26 22:20:08 -03:00
Gabriel Almeida
04579a25a2 🚀 chore(config.yaml): update config.yaml file with new documentloaders, memories, prompts, textsplitters, toolkits, utilities, and vectorstores
 feat(config.yaml): add Qdrant vectorstore and RequestsWrapper to the config.yaml file
The config.yaml file has been updated with new documentloaders, memories, prompts, textsplitters, toolkits, utilities, and vectorstores. The Qdrant vectorstore has been added to the vectorstores section. The RequestsWrapper has been added to the wrappers section.
2023-05-26 18:23:15 -03:00
Gabriel Almeida
3029fe029f 🐛 fix(chat_manager.py): fix is_first_message logic to correctly identify first message
🐛 fix(nodes.py): remove deepcopying of certain objects to improve performance
🐛 fix(loading.py): add error handling for empty documents in instantiate_textsplitter
The is_first_message logic in chat_manager.py was not correctly identifying the first message. The fix in this commit changes the comparison to <= 1 instead of == 0. In nodes.py, deepcopying of certain objects was removed to improve performance. This was done because deepcopying was not necessary for these objects. In loading.py, error handling was added to handle empty documents in instantiate_textsplitter. This was done to prevent errors when the source provided did not load correctly or was empty.
2023-05-25 10:10:56 -03:00
Gabriel Almeida
d89e4bc985 🐛 fix(__main__.py): pass dev flag to update_settings function
 feat(__main__.py): add serve_on_jcloud function to deploy Langflow server on Jina AI Cloud
🐛 fix(config.yaml): remove duplicate entries and fix indentation
The update_settings function now accepts a dev flag to enable running the app in development mode. The serve_on_jcloud function has been added to deploy the Langflow server on Jina AI Cloud. The config.yaml file has been cleaned up by removing duplicate entries and fixing indentation.
2023-05-25 09:03:28 -03:00
Gabriel Almeida
a66adff004 🔥 refactor(custom_lists.py): remove unused vectorstores_type_to_cls_dict variable
🔨 refactor(vector_store/base.py): refactor VectorstoreCreator to use import_class from langflow.interface.importing.utils
The `vectorstores_type_to_cls_dict` variable was not being used, so it was removed. The `VectorstoreCreator` class was refactored to use the `import_class` function from `langflow.interface.importing.utils` instead of importing it directly. This improves the code's readability and maintainability.
2023-05-24 09:27:00 -03:00
Gabriel Almeida
e597a6e20a 🔀 chore(config): add DocArrayHnswSearch and DocArrayInMemorySearch to vectorstores
🐛 fix(base.py): correctly handle nested lists in Node.build() method
 feat(vector_store): add VectorStoreFrontendNode to handle vector store templates
🐛 fix(util.py): add build_template_from_method to correctly build templates from class methods
The configuration file now includes two new vector stores, DocArrayHnswSearch and DocArrayInMemorySearch. The Node.build() method now correctly handles nested lists. A new VectorStoreFrontendNode has been added to handle vector store templates. The build_template_from_method function has been added to correctly build templates from class methods.

Issue #335
2023-05-23 16:51:29 -03:00
Gabriel Almeida
ddf75d7eb9 🔥 refactor(run.py): remove NotEnoughElementsException import and exception handling
Chroma implemented a fix for this so this exception won't be thrown anymore.
2023-05-23 12:02:55 -03:00
anovazzi1
e3656f7998 update display_name of llm to LLM 2023-05-22 23:41:07 -03:00
Gabriel Almeida
aeba16fa8a 🔥 chore(lcserve.py): remove unused import statements
The import statements for pathlib.Path and fastapi.staticfiles.StaticFiles were not used in the code and were therefore removed to improve code readability and maintainability.
2023-05-22 07:46:40 -03:00
Deepankar Mahapatro
18aaede030 chore: lint fix 2023-05-18 16:55:40 +05:30
Deepankar Mahapatro
fd638994cb
Merge branch 'logspace-ai:dev' into dev 2023-05-18 12:06:14 +05:30
Gabriel Almeida
1338fa3521 refactor(embeddings/base.py): add EmbeddingFrontendNode as a property of EmbeddingCreator
fix(loading.py): remove headers from params before instantiating embedding
refactor(nodes.py): add EmbeddingFrontendNode and hide headers field in it
2023-05-17 15:14:06 -03:00
Gabriel Almeida
f6d977f139 style(nodes, GenericNode): fix indentation and add line breaks for readability 2023-05-17 14:46:36 -03:00
Gabriel Almeida
3810589876 format 2023-05-17 12:54:10 -03:00
Gabriel Almeida
0e200d8992 fix(validate.py): return exception message in response when validation fails 2023-05-17 12:19:24 -03:00
Deepankar Mahapatro
a2e5fab637 ci: trigger workflow during release 2023-05-17 16:36:13 +05:30
Deepankar Mahapatro
fb9c76e610
Merge branch 'dev' into dev 2023-05-16 21:22:49 +05:30
Gabriel Almeida
5e7ce9dc7b feat(langflow): add /health endpoint to API
refactor(langflow): remove redundant /health endpoint from main.py
2023-05-16 11:41:40 -03:00
Gabriel Almeida
e3f27aaebf chore(custom.py): update import for langchain 0.0.170 2023-05-16 10:44:02 -03:00
Gabriel Almeida
712d212b82 feat(endpoints.py): add get_version endpoint to return version of langflow 2023-05-16 10:43:52 -03:00
Deepankar Mahapatro
2eec5fb3a7 build: make langchain-serve optional 2023-05-16 16:17:30 +05:30
Deepankar Mahapatro
943d3aa4a6
Merge branch 'logspace-ai:dev' into dev 2023-05-16 14:46:44 +05:30
Deepankar Mahapatro
54da71cc0a build: make langchain-serve optional 2023-05-16 13:34:34 +05:30
Filipe Caixeta
cba7f31d6f
Add health check endpoint 2023-05-15 23:01:07 -03:00
Gabriel Almeida
eb86c8be64 refactor(loading.py): swap parameters order in instantiate_prompt function to match other functions 2023-05-15 14:12:12 -03:00
Deepankar Mahapatro
916e4dfa80 feat: deploy langflow using langchain-serve 2023-05-15 19:57:48 +05:30
Deepankar Mahapatro
5d8f18f046 feat: deploy langflow using langchain-serve 2023-05-15 18:17:14 +05:30
Deepankar Mahapatro
e4f99b7971 feat: deploy langflow using langchain-serve 2023-05-15 17:56:26 +05:30
Deepankar Mahapatro
9bbd013dcb
Merge branch 'logspace-ai:dev' into dev 2023-05-15 17:48:52 +05:30
Deepankar Mahapatro
52093240b1 feat: deploy langflow using langchain-serve 2023-05-15 17:48:02 +05:30
Gabriel Almeida
9627005f8d refactor(loading.py): change instantiate_prompt function signature to include class_object parameter and use it to instantiate the prompt object 2023-05-14 20:21:42 -03:00
Gabriel Almeida
2bc7d3afd8 temporary fix for intermediate steps 2023-05-13 21:49:06 -03:00
Gabriel Almeida
4853a701d3 refactor(validate.py): add error handling and logging to post_validate_node function
feat(graph/base.py): add _built_object_repr method to Node class
feat(graph/nodes.py): add _built_object_repr method to DocumentLoaderNode, VectorStoreNode, and TextSplitterNode classes
2023-05-12 09:39:35 -03:00
Gabriel Almeida
d55d209dc3 formatting 2023-05-11 14:33:52 -03:00
Lucas Oliveira
97c60eaa5d Merge branch 'dev' into frontChanges 2023-05-11 13:59:12 -03:00
Gabriel Almeida
2e16618e47 refactor(chat_manager.py): use dict.pop() method to remove client_id from active_connections dictionary 2023-05-11 11:15:51 -03:00