-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Description
Checked other resources
- This is a bug, not a usage question. For questions, please use the LangChain Forum (https://forum.langchain.com/).
- I added a clear and detailed title that summarizes the issue.
- I read what a minimal reproducible example is (https://stackoverflow.com/help/minimal-reproducible-example).
- I included a self-contained, minimal example that demonstrates the issue INCLUDING all the relevant imports. The code run AS IS to reproduce the issue.
Example Code
from langgraph.config import get_stream_writer
from typing import TypedDict
from langgraph.cache.memory import InMemoryCache
from langgraph.checkpoint.memory import InMemorySaver
from langgraph.graph import StateGraph
from langgraph.types import CachePolicy
class State(TypedDict):
x: int
result: int
def expensive_node(state: State) -> State:
print('NOT CACHED')
writer = get_stream_writer()
writer({
"token_usage": "{'prompt_tokens': 10, 'completion_tokens': 20, 'total_tokens': 30}",
})
return {"result": state["x"] * 2}
def cache_key(state: State):
return str(state["x"])
graph = (
StateGraph(State)
.add_node(expensive_node, cache_policy=CachePolicy(key_func=cache_key))
.set_entry_point("expensive_node")
.set_finish_point("expensive_node")
.compile(cache=InMemoryCache(), checkpointer=InMemorySaver())
)
CONFIG = {'configurable': {'thread_id': 1}}
print(graph.invoke({"x": 5}, config=CONFIG, stream_mode=["updates","custom"]))
print(graph.invoke({"x": 5}, config=CONFIG, stream_mode=["updates","custom"]))
Error Message and Stack Trace (if applicable)
NOT CACHED
[('custom', {'token_usage': "{'prompt_tokens': 10, 'completion_tokens': 20, 'total_tokens': 30}"}), ('updates', {'expensive_node': {'result': 10}})]
[('updates', {'expensive_node': {'result': 10}, '__metadata__': {'cached': True}})]
Description
When langgraph's stream_mode includes custom, the cached results do not contain custom data.
System Info
System Information
OS: Windows
OS Version: 10.0.26100
Python Version: 3.11.13 | packaged by Anaconda, Inc. | (main, Jun 5 2025, 13:03:15) [MSC v.1929 64 bit (AMD64)]
Package Information
langchain_core: 0.3.76
langchain: 0.3.27
langchain_community: 0.3.29
langsmith: 0.4.27
langchain_chroma: 0.2.4
langchain_graph_retriever: 0.8.0
langchain_milvus: 0.2.1
langchain_openai: 0.3.33
langchain_postgres: 0.0.15
langchain_tavily: 0.2.11
langchain_text_splitters: 0.3.11
langgraph_sdk: 0.2.6
Optional packages not installed
langserve
Other Dependencies
aiohttp: 3.12.15
aiohttp<4.0.0,>=3.8.3: Installed. No version info available.
astrapy>=2.0.0;: Installed. No version info available.
async-timeout<5.0.0,>=4.0.0;: Installed. No version info available.
asyncpg>=0.30.0: Installed. No version info available.
backoff>=2.2.1: Installed. No version info available.
beautifulsoup4>=4.12.3;: Installed. No version info available.
cassio>=0.1.10;: Installed. No version info available.
chromadb>=0.5.23;: Installed. No version info available.
chromadb>=1.0.9: Installed. No version info available.
dataclasses-json<0.7,>=0.6.7: Installed. No version info available.
gliner==0.2.13;: Installed. No version info available.
graph-retriever: 0.8.0
httpx-sse<1.0.0,>=0.4.0: Installed. No version info available.
httpx<1,>=0.23.0: Installed. No version info available.
httpx>=0.25.2: Installed. No version info available.
httpx>=0.28.1;: Installed. No version info available.
immutabledict>=4.2.1: Installed. No version info available.
jsonpatch<2.0,>=1.33: Installed. No version info available.
keybert>=0.8.5;: Installed. No version info available.
langchain-anthropic;: Installed. No version info available.
langchain-astradb>=0.6.0;: Installed. No version info available.
langchain-aws;: Installed. No version info available.
langchain-azure-ai;: Installed. No version info available.
langchain-chroma>=0.2.0;: Installed. No version info available.
langchain-cohere;: Installed. No version info available.
langchain-community;: Installed. No version info available.
langchain-community>=0.3.14;: Installed. No version info available.
langchain-core<0.4.0,>=0.2.13: Installed. No version info available.
langchain-core<1.0.0,>=0.3.72: Installed. No version info available.
langchain-core<1.0.0,>=0.3.76: Installed. No version info available.
langchain-core<2.0.0,>=0.3.75: Installed. No version info available.
langchain-core>=0.3.29: Installed. No version info available.
langchain-core>=0.3.60: Installed. No version info available.
langchain-deepseek;: Installed. No version info available.
langchain-fireworks;: Installed. No version info available.
langchain-google-genai;: Installed. No version info available.
langchain-google-vertexai;: Installed. No version info available.
langchain-groq;: Installed. No version info available.
langchain-huggingface;: Installed. No version info available.
langchain-mistralai;: Installed. No version info available.
langchain-ollama;: Installed. No version info available.
langchain-openai;: Installed. No version info available.
langchain-perplexity;: Installed. No version info available.
langchain-text-splitters<1.0.0,>=0.3.9: Installed. No version info available.
langchain-together;: Installed. No version info available.
langchain-xai;: Installed. No version info available.
langchain<2.0.0,>=0.3.27: Installed. No version info available.
langsmith-pyo3>=0.1.0rc2;: Installed. No version info available.
langsmith>=0.1.125: Installed. No version info available.
langsmith>=0.1.17: Installed. No version info available.
langsmith>=0.3.45: Installed. No version info available.
networkx>=3.4.2: Installed. No version info available.
numpy<3,>=1.21: Installed. No version info available.
numpy>=1.26.0;: Installed. No version info available.
numpy>=1.26.2;: Installed. No version info available.
numpy>=2.1.0;: Installed. No version info available.
openai-agents>=0.0.3;: Installed. No version info available.
openai<2.0.0,>=1.104.2: Installed. No version info available.
opensearch-py>=2.8.0;: Installed. No version info available.
opentelemetry-api>=1.30.0;: Installed. No version info available.
opentelemetry-exporter-otlp-proto-http>=1.30.0;: Installed. No version info available.
opentelemetry-sdk>=1.30.0;: Installed. No version info available.
orjson>=3.10.1: Installed. No version info available.
orjson>=3.9.14;: Installed. No version info available.
packaging>=23.2: Installed. No version info available.
pgvector<0.4,>=0.2.5: Installed. No version info available.
psycopg-pool<4,>=3.2.1: Installed. No version info available.
psycopg<4,>=3: Installed. No version info available.
pydantic-settings<3.0.0,>=2.10.1: Installed. No version info available.
pydantic<3,>=1: Installed. No version info available.
pydantic<3.0.0,>=2.7.4: Installed. No version info available.
pydantic>=2.10.4: Installed. No version info available.
pydantic>=2.7.4: Installed. No version info available.
pymilvus: 2.6.1
pytest>=7.0.0;: Installed. No version info available.
PyYAML>=5.3: Installed. No version info available.
requests: 2.32.5
requests-toolbelt>=1.0.0: Installed. No version info available.
requests<3,>=2: Installed. No version info available.
requests<3,>=2.32.5: Installed. No version info available.
requests>=2.0.0: Installed. No version info available.
rich>=13.9.4;: Installed. No version info available.
spacy>=3.8.4;: Installed. No version info available.
SQLAlchemy<3,>=1.4: Installed. No version info available.
sqlalchemy<3,>=2: Installed. No version info available.
tenacity!=8.4.0,<10,>=8.1.0: Installed. No version info available.
tenacity!=8.4.0,<10.0.0,>=8.1.0: Installed. No version info available.
tiktoken<1,>=0.7: Installed. No version info available.
typing-extensions>=4.12.2: Installed. No version info available.
typing-extensions>=4.7: Installed. No version info available.
vcrpy>=7.0.0;: Installed. No version info available.
zstandard>=0.23.0: Installed. No version info available.