mirror of
https://github.com/open-webui/open-webui.git
synced 2026-07-16 23:21:44 -05:00
[GH-ISSUE #24855] feat: Add Responses type for direct OpenAI connections #123724
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @JKGeovision on GitHub (May 17, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/24855
Check Existing Issues
Verify Feature Scope
Problem Description
Good day
I have the particular situation that I want to enable each user to use their own local Hermes runtime which is hosted with docker. Therefore, I cannot configure the OpenAI connection in the Admin Settings and need to enable direct connections for the users. That works fine, but direct connections can only use the Chat Completions API type which does not show the current Tool usage used by Hermes and makes for an untransparent chatting experience. Would it be possible to also add the Responses type for direct connections?
Thank you very much and have a great day,
Joshua Krimmer
Desired Solution you'd like
Add the responses type for direct connection
Alternatives Considered
No response
Additional Context
No response
@XidaoApi commented on GitHub (May 18, 2026):
This is a great feature request. A few technical notes that might help implementation:
The Responses API (
/v1/responses) vs Chat Completions (/v1/chat/completions) have different request/response shapes:input(string or array) instead ofmessagesoutput(array of items) instead ofchoicesoutputitems withtype: "function_call"— which is why tool usage appears more transparentProvider support landscape (as of May 2026):
/v1/responsesas a passthrough/v1/responsespassthroughFor the direct connection use case, the challenge is that the Responses API response format is significantly different from Chat Completions, so the frontend rendering logic needs a separate code path. The
outputarray can contain text, function calls, and tool results interleaved — it's not a simplechoices[0].messageextraction.A pragmatic approach might be to detect the API type from the response shape (if it has
outputarray → Responses format, if it haschoices→ Chat Completions) rather than requiring manual configuration per connection.