[FEATURE] Add tools in a semi-automated manner
Describe the feature you'd like
According to the source code, I saw the nodes of tools were developed individually and most codes are similar. I guess you can import all the tools from LangChain, and create a new Node automatically by parsing the required parameters and their types from the tool's constructor. Ideally, you only need to design an icon for each tool.
Right now adding a tool and model is easy enough. However, it loses flexibility since a tool/model may have a lot of extra parameters, which are not added to this project.
Using the parse-auto-generate way could solve this problem. Some tricky design to enable all the parameter config is also needed.
Yeah I agree. Some simple components like tools, document loaders can definitely be imported from LangChain instead of creating one by one, and other more complex components like agents and chains can be standalone components as some of the fields are customized for UI purpose.
This wasn't possible previously when LangChainJS only allows dynamic import for CommonJS project, but it is now possible (https://github.com/FlowiseAI/Flowise/pull/4). Can mostly likely use a json or yml file to configure the components and parameters to be imported. Will make some POC and see