Home / Function/ _prepare() — langchain Function Reference

_prepare() — langchain Function Reference

Architecture documentation for the _prepare() function in configurable.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  b220c1ae_9f13_47b1_0fe5_9730a47ac9f2["_prepare()"]
  2b6bd8a1_0810_3be0_c02d_ad7e25c2a53b["RunnableConfigurableAlternatives"]
  b220c1ae_9f13_47b1_0fe5_9730a47ac9f2 -->|defined in| 2b6bd8a1_0810_3be0_c02d_ad7e25c2a53b
  0f7c3278_9074_b281_9e8e_b32e354fcc43["_strremoveprefix()"]
  b220c1ae_9f13_47b1_0fe5_9730a47ac9f2 -->|calls| 0f7c3278_9074_b281_9e8e_b32e354fcc43
  d9882f52_ecfa_0ec4_5ce7_dd612f73757f["_prepare()"]
  b220c1ae_9f13_47b1_0fe5_9730a47ac9f2 -->|calls| d9882f52_ecfa_0ec4_5ce7_dd612f73757f
  style b220c1ae_9f13_47b1_0fe5_9730a47ac9f2 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/core/langchain_core/runnables/configurable.py lines 612–638

    def _prepare(
        self, config: RunnableConfig | None = None
    ) -> tuple[Runnable[Input, Output], RunnableConfig]:
        config = ensure_config(config)
        which = config.get("configurable", {}).get(self.which.id, self.default_key)
        # remap configurable keys for the chosen alternative
        if self.prefix_keys:
            config = cast(
                "RunnableConfig",
                {
                    **config,
                    "configurable": {
                        _strremoveprefix(k, f"{self.which.id}=={which}/"): v
                        for k, v in config.get("configurable", {}).items()
                    },
                },
            )
        # return the chosen alternative
        if which == self.default_key:
            return (self.default, config)
        if which in self.alternatives:
            alt = self.alternatives[which]
            if isinstance(alt, Runnable):
                return (alt, config)
            return (alt(), config)
        msg = f"Unknown alternative: {which}"
        raise ValueError(msg)

Domain

Subdomains

Frequently Asked Questions

What does _prepare() do?
_prepare() is a function in the langchain codebase, defined in libs/core/langchain_core/runnables/configurable.py.
Where is _prepare() defined?
_prepare() is defined in libs/core/langchain_core/runnables/configurable.py at line 612.
What does _prepare() call?
_prepare() calls 2 function(s): _prepare, _strremoveprefix.

Analyze Your Own Codebase

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

Try Supermodel Free