diff --git a/poetry.lock b/poetry.lock index b53c4820e..5564c1fdd 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2890,6 +2890,20 @@ openai = ["openai (>=0,<1)", "tiktoken (>=0.3.2,<0.4.0)"] qdrant = ["qdrant-client (>=1.3.1,<2.0.0)"] text-helpers = ["chardet (>=5.1.0,<6.0.0)"] +[[package]] +name = "langchain-experimental" +version = "0.0.8" +description = "Building applications with LLMs through composability" +optional = false +python-versions = ">=3.8.1,<4.0" +files = [ + {file = "langchain_experimental-0.0.8-py3-none-any.whl", hash = "sha256:34cf202ba29fdef178c5d68772cf2fa08dd2a0fad588ca3ef324ae71e596cc21"}, + {file = "langchain_experimental-0.0.8.tar.gz", hash = "sha256:35d198f8e70a053ccd84273198ff08b4b700ac03ec5f43ba9b7ef797dd42ad14"}, +] + +[package.dependencies] +langchain = ">=0.0.239" + [[package]] name = "langchain-serve" version = "0.0.58" @@ -7564,4 +7578,4 @@ local = ["ctransformers", "llama-cpp-python", "sentence-transformers"] [metadata] lock-version = "2.0" python-versions = ">=3.9,<3.11" -content-hash = "154238df4e8b249196011f592d63e2fad0e18316960e400037f54453c813d47a" +content-hash = "57abce2ebcdc3cd7e359c36805822b9398d3bfb500c175b173a6d784d1276df6" diff --git a/pyproject.toml b/pyproject.toml index 849130a74..ef5360662 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -76,6 +76,7 @@ google-cloud-aiplatform = "^1.26.1" psycopg = "^3.1.9" psycopg-binary = "^3.1.9" fastavro = "^1.8.0" +langchain-experimental = "^0.0.8" [tool.poetry.group.dev.dependencies] black = "^23.1.0" diff --git a/src/backend/langflow/interface/chains/base.py b/src/backend/langflow/interface/chains/base.py index 67d31308f..3ec8b9e4d 100644 --- a/src/backend/langflow/interface/chains/base.py +++ b/src/backend/langflow/interface/chains/base.py @@ -8,6 +8,7 @@ from langflow.template.frontend_node.chains import ChainFrontendNode from langflow.utils.logger import logger from langflow.utils.util import build_template_from_class, build_template_from_method from langchain import chains +from langchain_experimental.sql import SQLDatabaseChain # Assuming necessary imports for Field, Template, and FrontendNode classes @@ -35,6 +36,8 @@ class ChainCreator(LangChainTypeCreator): } from langflow.interface.chains.custom import CUSTOM_CHAINS + self.type_dict["SQLDatabaseChain"] = SQLDatabaseChain + self.type_dict.update(CUSTOM_CHAINS) # Filter according to settings.chains self.type_dict = {