mirror of
https://github.com/hwchase17/langchain.git
synced 2025-06-22 14:49:29 +00:00
core: In ensure_config don't copy dunder configurable keys to metadata (#24420)
This commit is contained in:
parent
ef22ebe431
commit
62b6965d2a
@ -154,7 +154,11 @@ def ensure_config(config: Optional[RunnableConfig] = None) -> RunnableConfig:
|
|||||||
cast(RunnableConfig, {k: v for k, v in config.items() if v is not None})
|
cast(RunnableConfig, {k: v for k, v in config.items() if v is not None})
|
||||||
)
|
)
|
||||||
for key, value in empty.get("configurable", {}).items():
|
for key, value in empty.get("configurable", {}).items():
|
||||||
if isinstance(value, (str, int, float, bool)) and key not in empty["metadata"]:
|
if (
|
||||||
|
not key.startswith("__")
|
||||||
|
and isinstance(value, (str, int, float, bool))
|
||||||
|
and key not in empty["metadata"]
|
||||||
|
):
|
||||||
empty["metadata"][key] = value
|
empty["metadata"][key] = value
|
||||||
return empty
|
return empty
|
||||||
|
|
||||||
|
@ -1271,7 +1271,11 @@ async def test_with_config_metadata_passthrough(mocker: MockerFixture) -> None:
|
|||||||
|
|
||||||
assert (
|
assert (
|
||||||
fakew.with_config(tags=["a-tag"]).invoke(
|
fakew.with_config(tags=["a-tag"]).invoke(
|
||||||
"hello", {"configurable": {"hello": "there"}, "metadata": {"bye": "now"}}
|
"hello",
|
||||||
|
{
|
||||||
|
"configurable": {"hello": "there", "__secret_key": "nahnah"},
|
||||||
|
"metadata": {"bye": "now"},
|
||||||
|
},
|
||||||
)
|
)
|
||||||
== 5
|
== 5
|
||||||
)
|
)
|
||||||
@ -1281,7 +1285,7 @@ async def test_with_config_metadata_passthrough(mocker: MockerFixture) -> None:
|
|||||||
tags=["a-tag"],
|
tags=["a-tag"],
|
||||||
callbacks=None,
|
callbacks=None,
|
||||||
recursion_limit=25,
|
recursion_limit=25,
|
||||||
configurable={"hello": "there"},
|
configurable={"hello": "there", "__secret_key": "nahnah"},
|
||||||
metadata={"hello": "there", "bye": "now"},
|
metadata={"hello": "there", "bye": "now"},
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user