The code below works is consistently failing -
model = ChatOpenAI(model=“gpt-5.1”, use_responses_api = True, reasoning = {“effort”: effort, “summary”: “auto” }).bind_tools(all_tools, strict=True)
all_messages = [{“role”: “system”, “content”: system_prompt}, *state.messages]
trimmed_messages = trim_messages(
all_messages,
strategy = “last”,
token_counter = ChatOpenAI(model=“gpt-5.1”, reasoning={ “effort” : “low” }),
max_tokens = 400000,
start_on = “human”,
end_on = (“human”, “tool”),
include_system = True,
allow_partial = False
)
await model.ainvoke(trimmed_messages, runnable_config)
Error trace:
Traceback (most recent call last):
File "graph.py", line 57, in _invoke_model
trimmed_messages = trim_messages(
^^^^^^^^^^^^^^
File "...langchain_core/messages/utils.py", line 409, in wrapped
return func(messages, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "...langchain_core/messages/utils.py", line 1006, in trim_messages
return _last_max_tokens(
^^^^^^^^^^^^^^^^^
File "...langchain_core/messages/utils.py", line 1552, in _last_max_tokens
reversed_result = _first_max_tokens(
^^^^^^^^^^^^^^^^^^
File "...langchain_core/messages/utils.py", line 1412, in _first_max_tokens
if token_counter(messages) <= max_tokens:
^^^^^^^^^^^^^^^^^^^^^^^
File "...langchain_openai/chat_models/base.py", line 1754, in get_num_tokens_from_messages
raise ValueError(msg)
ValueError: Unrecognized content block type
{'id': 'rs_026075ce08c0201e006922928f9d60819cbe4399423e3e6f8b', 'summary': [{'index': 0, 'type': 'summary_text', 'text': '...'}], 'type': 'reasoning', 'index': 0}
Using:
langchain = “1.0.8”
langchain-openai = “1.0.3”