- 
                Notifications
    You must be signed in to change notification settings 
- Fork 19.5k
Open
Description
Privileged issue
- I am a LangChain maintainer, or was asked directly by a LangChain maintainer to create an issue here.
Issue Content
SummarizationMiddleware has a max_tokens_before_summary parameter that says "If None, summarization is disabled": 
| max_tokens_before_summary: Token threshold to trigger summarization. | |
| If `None`, summarization is disabled. | 
there is a test case against this here:
langchain/libs/langchain_v1/tests/unit_tests/agents/test_middleware_agent.py
Lines 1059 to 1063 in 3286a98
| # Test when summarization is disabled | |
| middleware_disabled = SummarizationMiddleware(model=model, max_tokens_before_summary=None) | |
| state = {"messages": [HumanMessage(content="Hello"), AIMessage(content="Hi")]} | |
| result = middleware_disabled.before_model(state, None) | |
| assert result is None | 
but the number of messages (two) in the test is below the default messages_to_keep of 20. if you pass in more messages, summarization happens— I've pushed up a failing test case at 0c2def8.
What is the expected behavior when we set max_tokens_before_summary=None, but the number of input messages exceeds messages_to_keep?
Metadata
Metadata
Assignees
Labels
No labels