Home / Function/ _validate_inputs() — langchain Function Reference

_validate_inputs() — langchain Function Reference

Architecture documentation for the _validate_inputs() function in base.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  1fae3e72_380c_c210_1baa_d5fe1506cde1["_validate_inputs()"]
  f3cef70e_11b0_61c9_7ec0_7308f4b45056["Chain"]
  1fae3e72_380c_c210_1baa_d5fe1506cde1 -->|defined in| f3cef70e_11b0_61c9_7ec0_7308f4b45056
  cbab652e_92a7_bf56_f96d_801fd5f6dacd["invoke()"]
  cbab652e_92a7_bf56_f96d_801fd5f6dacd -->|calls| 1fae3e72_380c_c210_1baa_d5fe1506cde1
  3d0312e3_a4c5_8ae3_1487_fac6e14b7ae4["ainvoke()"]
  3d0312e3_a4c5_8ae3_1487_fac6e14b7ae4 -->|calls| 1fae3e72_380c_c210_1baa_d5fe1506cde1
  style 1fae3e72_380c_c210_1baa_d5fe1506cde1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain/langchain_classic/chains/base.py lines 289–309

    def _validate_inputs(self, inputs: Any) -> None:
        """Check that all inputs are present."""
        if not isinstance(inputs, dict):
            _input_keys = set(self.input_keys)
            if self.memory is not None:
                # If there are multiple input keys, but some get set by memory so that
                # only one is not set, we can still figure out which key it is.
                _input_keys = _input_keys.difference(self.memory.memory_variables)
            if len(_input_keys) != 1:
                msg = (
                    f"A single string input was passed in, but this chain expects "
                    f"multiple inputs ({_input_keys}). When a chain expects "
                    f"multiple inputs, please call it by passing in a dictionary, "
                    "eg `chain({'foo': 1, 'bar': 2})`"
                )
                raise ValueError(msg)

        missing_keys = set(self.input_keys).difference(inputs)
        if missing_keys:
            msg = f"Missing some input keys: {missing_keys}"
            raise ValueError(msg)

Subdomains

Called By

Frequently Asked Questions

What does _validate_inputs() do?
_validate_inputs() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/chains/base.py.
Where is _validate_inputs() defined?
_validate_inputs() is defined in libs/langchain/langchain_classic/chains/base.py at line 289.
What calls _validate_inputs()?
_validate_inputs() is called by 2 function(s): ainvoke, invoke.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free