From 3e31d6e35f5f7c5409732758019fcaa2f8efd878 Mon Sep 17 00:00:00 2001 From: Eugene Yurtsev Date: Thu, 5 Oct 2023 12:48:22 -0400 Subject: [PATCH] Start deprecation of LLMBashChain (#11300) In preparation for migration LLMBashChain and related tools add a derprecation warning to the code. --- libs/langchain/langchain/chains/llm_bash/base.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/libs/langchain/langchain/chains/llm_bash/base.py b/libs/langchain/langchain/chains/llm_bash/base.py index 3d885a4bd44..0dc4c413cf5 100644 --- a/libs/langchain/langchain/chains/llm_bash/base.py +++ b/libs/langchain/langchain/chains/llm_bash/base.py @@ -5,6 +5,7 @@ import logging import warnings from typing import Any, Dict, List, Optional +from langchain._api import warn_deprecated from langchain.callbacks.manager import CallbackManagerForChainRun from langchain.chains.base import Chain from langchain.chains.llm import LLMChain @@ -20,7 +21,12 @@ logger = logging.getLogger(__name__) class LLMBashChain(Chain): """Chain that interprets a prompt and executes bash operations. + Warning: + This chain can execute arbitrary code using bash. + This can be dangerous if not properly sandboxed. + Example: + .. code-block:: python from langchain.chains import LLMBashChain @@ -84,6 +90,14 @@ class LLMBashChain(Chain): inputs: Dict[str, Any], run_manager: Optional[CallbackManagerForChainRun] = None, ) -> Dict[str, str]: + warn_deprecated( + since="0.0.308", + message=( + "On 2023-10-12 the LLMBashChain " + "will be moved to langchain-experimental" + ), + pending=True, + ) _run_manager = run_manager or CallbackManagerForChainRun.get_noop_manager() _run_manager.on_text(inputs[self.input_key], verbose=self.verbose)