MCPcopy
hub / github.com/langchain-ai/langchain / patch_config

Function patch_config

libs/core/langchain_core/runnables/config.py:206–250  ·  view source on GitHub ↗

Patch a config with new values. Args: config (Optional[RunnableConfig]): The config to patch. copy_locals (bool, optional): Whether to copy locals. Defaults to False. callbacks (Optional[BaseCallbackManager], optional): The callbacks to set. Defaults to None.

(
    config: Optional[RunnableConfig],
    *,
    callbacks: Optional[BaseCallbackManager] = None,
    recursion_limit: Optional[int] = None,
    max_concurrency: Optional[int] = None,
    run_name: Optional[str] = None,
    configurable: Optional[Dict[str, Any]] = None,
)

Source from the content-addressed store, hash-verified

204
205
206def patch_config(
207 config: Optional[RunnableConfig],
208 *,
209 callbacks: Optional[BaseCallbackManager] = None,
210 recursion_limit: Optional[int] = None,
211 max_concurrency: Optional[int] = None,
212 run_name: Optional[str] = None,
213 configurable: Optional[Dict[str, Any]] = None,
214) -> RunnableConfig:
215 """Patch a config with new values.
216
217 Args:
218 config (Optional[RunnableConfig]): The config to patch.
219 copy_locals (bool, optional): Whether to copy locals. Defaults to False.
220 callbacks (Optional[BaseCallbackManager], optional): The callbacks to set.
221 Defaults to None.
222 recursion_limit (Optional[int], optional): The recursion limit to set.
223 Defaults to None.
224 max_concurrency (Optional[int], optional): The max concurrency to set.
225 Defaults to None.
226 run_name (Optional[str], optional): The run name to set. Defaults to None.
227 configurable (Optional[Dict[str, Any]], optional): The configurable to set.
228 Defaults to None.
229
230 Returns:
231 RunnableConfig: The patched config.
232 """
233 config = ensure_config(config)
234 if callbacks is not None:
235 # If we're replacing callbacks, we need to unset run_name
236 # As that should apply only to the same run as the original callbacks
237 config["callbacks"] = callbacks
238 if "run_name" in config:
239 del config["run_name"]
240 if "run_id" in config:
241 del config["run_id"]
242 if recursion_limit is not None:
243 config["recursion_limit"] = recursion_limit
244 if max_concurrency is not None:
245 config["max_concurrency"] = max_concurrency
246 if run_name is not None:
247 config["run_name"] = run_name
248 if configurable is not None:
249 config["configurable"] = {**config.get("configurable", {}), **configurable}
250 return config
251
252
253def merge_configs(*configs: Optional[RunnableConfig]) -> RunnableConfig:

Callers 15

runMethod · 0.90
arunMethod · 0.90
_config_with_contextFunction · 0.90
_patch_configMethod · 0.90
_call_with_configMethod · 0.90
_acall_with_configMethod · 0.90
_batch_with_configMethod · 0.90
_abatch_with_configMethod · 0.90
invokeMethod · 0.90
ainvokeMethod · 0.90

Calls 2

ensure_configFunction · 0.85
getMethod · 0.45

Tested by

no test coverage detected