From 1f877c48721739771a93206cc83065e31bf6b6b7 Mon Sep 17 00:00:00 2001 From: YetheSamartaka <55753928+YetheSamartaka@users.noreply.github.com> Date: Wed, 22 Oct 2025 15:48:29 +0200 Subject: [PATCH 1/2] Added: Support for GPT-5 input/output tokens from Responses API Adds Support for GPT-5 input/output tokens from Responses API (Using this manifold: https://github.com/jrkropp/open-webui-developer-toolkit/tree/main/functions/pipes/openai_responses_manifold) but it will work for other functions that are using the Responses API --- examples/filters/langfuse_v3_filter_pipeline.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/filters/langfuse_v3_filter_pipeline.py b/examples/filters/langfuse_v3_filter_pipeline.py index a046eeea..47ba5cdb 100644 --- a/examples/filters/langfuse_v3_filter_pipeline.py +++ b/examples/filters/langfuse_v3_filter_pipeline.py @@ -317,8 +317,8 @@ async def outlet(self, body: dict, user: Optional[dict] = None) -> dict: if assistant_message_obj: info = assistant_message_obj.get("usage", {}) if isinstance(info, dict): - input_tokens = info.get("prompt_eval_count") or info.get("prompt_tokens") - output_tokens = info.get("eval_count") or info.get("completion_tokens") + input_tokens = info.get("prompt_eval_count") or info.get("prompt_tokens") or info.get("input_tokens") + output_tokens = info.get("eval_count") or info.get("completion_tokens") or info.get("output_tokens") if input_tokens is not None and output_tokens is not None: usage = { "input": input_tokens, From 884f06dc3a05959d0c81849552eeb472c3366088 Mon Sep 17 00:00:00 2001 From: YetheSamartaka <55753928+YetheSamartaka@users.noreply.github.com> Date: Wed, 22 Oct 2025 15:50:59 +0200 Subject: [PATCH 2/2] Added: Support for GPT-5 input/output tokens from Responses API Adds Support for GPT-5 input/output tokens from Responses API (Using this manifold: https://github.com/jrkropp/open-webui-developer-toolkit/tree/main/functions/pipes/openai_responses_manifold) but it will work for other functions that are using the Responses API --- examples/filters/langfuse_filter_pipeline.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/filters/langfuse_filter_pipeline.py b/examples/filters/langfuse_filter_pipeline.py index 2d73e5de..ab930305 100644 --- a/examples/filters/langfuse_filter_pipeline.py +++ b/examples/filters/langfuse_filter_pipeline.py @@ -266,8 +266,8 @@ async def outlet(self, body: dict, user: Optional[dict] = None) -> dict: if assistant_message_obj: info = assistant_message_obj.get("usage", {}) if isinstance(info, dict): - input_tokens = info.get("prompt_eval_count") or info.get("prompt_tokens") - output_tokens = info.get("eval_count") or info.get("completion_tokens") + input_tokens = info.get("prompt_eval_count") or info.get("prompt_tokens") or info.get("input_tokens") + output_tokens = info.get("eval_count") or info.get("completion_tokens") or info.get("output_tokens") if input_tokens is not None and output_tokens is not None: usage = { "input": input_tokens,