Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
tool.py35 linesDownload Raw Back to human
1"""Tool for asking human input."""2 3from typing import Callable, Optional4 5from langchain_core.callbacks import CallbackManagerForToolRun6from langchain_core.tools import BaseTool7from pydantic import Field8 9 10def _print_func(text: str) -> None:11    print("\n")  # noqa: T20112    print(text)  # noqa: T20113 14 15class HumanInputRun(BaseTool):16    """Tool that asks user for input."""17 18    name: str = "human"19    description: str = (20        "You can ask a human for guidance when you think you "21        "got stuck or you are not sure what to do next. "22        "The input should be a question for the human."23    )24    prompt_func: Callable[[str], None] = Field(default_factory=lambda: _print_func)25    input_func: Callable = Field(default_factory=lambda: input)26 27    def _run(28        self,29        query: str,30        run_manager: Optional[CallbackManagerForToolRun] = None,31    ) -> str:32        """Use the Human input tool."""33        self.prompt_func(query)34        return self.input_func()35 
codekingpro/portable-devtools · Team Ai