From 3241d6429f756ffacec92cab464ec0291990e60e Mon Sep 17 00:00:00 2001 From: "langchain-model-profile-bot[bot]" <262694797+langchain-model-profile-bot[bot]@users.noreply.github.com> Date: Fri, 6 Mar 2026 10:14:14 -0500 Subject: [PATCH] chore(model-profiles): refresh model profile data (#35593) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the `refresh_model_profiles` workflow. Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> --- .../openai/langchain_openai/data/_profiles.py | 40 ++++++++++++++++ .../langchain_openrouter/data/_profiles.py | 48 +++++++++++++++++++ 2 files changed, 88 insertions(+) diff --git a/libs/partners/openai/langchain_openai/data/_profiles.py b/libs/partners/openai/langchain_openai/data/_profiles.py index 78e5611f243..0ee45a7357c 100644 --- a/libs/partners/openai/langchain_openai/data/_profiles.py +++ b/libs/partners/openai/langchain_openai/data/_profiles.py @@ -595,6 +595,46 @@ _PROFILES: dict[str, dict[str, Any]] = { "image_tool_message": True, "tool_choice": True, }, + "gpt-5.4": { + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "text_inputs": True, + "image_inputs": True, + "audio_inputs": False, + "video_inputs": False, + "text_outputs": True, + "image_outputs": False, + "audio_outputs": False, + "video_outputs": False, + "reasoning_output": True, + "tool_calling": True, + "structured_output": True, + "image_url_inputs": True, + "pdf_inputs": True, + "pdf_tool_message": True, + "image_tool_message": True, + "tool_choice": True, + }, + "gpt-5.4-pro": { + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "text_inputs": True, + "image_inputs": True, + "audio_inputs": False, + "video_inputs": False, + "text_outputs": True, + "image_outputs": False, + "audio_outputs": False, + "video_outputs": False, + "reasoning_output": True, + "tool_calling": True, + "structured_output": False, + "image_url_inputs": True, + "pdf_inputs": True, + "pdf_tool_message": True, + "image_tool_message": True, + "tool_choice": True, + }, "o1": { "max_input_tokens": 200000, "max_output_tokens": 100000, diff --git a/libs/partners/openrouter/langchain_openrouter/data/_profiles.py b/libs/partners/openrouter/langchain_openrouter/data/_profiles.py index ca5f4aa603c..92ac5832284 100644 --- a/libs/partners/openrouter/langchain_openrouter/data/_profiles.py +++ b/libs/partners/openrouter/langchain_openrouter/data/_profiles.py @@ -1778,6 +1778,54 @@ _PROFILES: dict[str, dict[str, Any]] = { "tool_calling": True, "structured_output": True, }, + "openai/gpt-5.3-codex": { + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "text_inputs": True, + "image_inputs": True, + "audio_inputs": False, + "pdf_inputs": True, + "video_inputs": False, + "text_outputs": True, + "image_outputs": False, + "audio_outputs": False, + "video_outputs": False, + "reasoning_output": True, + "tool_calling": True, + "structured_output": True, + }, + "openai/gpt-5.4": { + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "text_inputs": True, + "image_inputs": True, + "audio_inputs": False, + "pdf_inputs": True, + "video_inputs": False, + "text_outputs": True, + "image_outputs": False, + "audio_outputs": False, + "video_outputs": False, + "reasoning_output": True, + "tool_calling": True, + "structured_output": True, + }, + "openai/gpt-5.4-pro": { + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "text_inputs": True, + "image_inputs": True, + "audio_inputs": False, + "pdf_inputs": True, + "video_inputs": False, + "text_outputs": True, + "image_outputs": False, + "audio_outputs": False, + "video_outputs": False, + "reasoning_output": True, + "tool_calling": True, + "structured_output": False, + }, "openai/gpt-oss-120b": { "max_input_tokens": 131072, "max_output_tokens": 32768,