refactor(github-copilot-sdk): synchronize tool extra_params with OpenWebUI 0.8.x standards
This commit is contained in:
@@ -2259,6 +2259,7 @@ class Pipe:
|
|||||||
request = self._build_openwebui_request(user_data, token=token)
|
request = self._build_openwebui_request(user_data, token=token)
|
||||||
|
|
||||||
# Pass OAuth/Auth details in extra_params
|
# Pass OAuth/Auth details in extra_params
|
||||||
|
chat_ctx = self._get_chat_context(body, __metadata__, __event_call__)
|
||||||
extra_params = {
|
extra_params = {
|
||||||
"__request__": request,
|
"__request__": request,
|
||||||
"__user__": user_data,
|
"__user__": user_data,
|
||||||
@@ -2266,14 +2267,34 @@ class Pipe:
|
|||||||
"__event_call__": __event_call__,
|
"__event_call__": __event_call__,
|
||||||
"__messages__": messages,
|
"__messages__": messages,
|
||||||
"__metadata__": __metadata__ or {},
|
"__metadata__": __metadata__ or {},
|
||||||
"__chat_id__": None,
|
"__chat_id__": chat_ctx.get("chat_id"),
|
||||||
"__message_id__": None,
|
"__message_id__": (__metadata__ or {}).get("message_id")
|
||||||
"__model_knowledge__": [],
|
or (body or {}).get("message_id"),
|
||||||
|
"__session_id__": chat_ctx.get("session_id")
|
||||||
|
or (__metadata__ or {}).get("session_id"),
|
||||||
|
"__files__": (__metadata__ or {}).get("files", []),
|
||||||
|
"__task__": (__metadata__ or {}).get("task"),
|
||||||
|
"__task_body__": (__metadata__ or {}).get("task_body"),
|
||||||
|
"__model_knowledge__": (body or {})
|
||||||
|
.get("metadata", {})
|
||||||
|
.get("knowledge", []),
|
||||||
"__oauth_token__": (
|
"__oauth_token__": (
|
||||||
{"access_token": token} if token else None
|
{"access_token": token} if token else None
|
||||||
), # Mock OAuth token structure
|
), # Mock OAuth token structure
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Try to inject __model__ if available
|
||||||
|
model_id = (body or {}).get("model")
|
||||||
|
if model_id:
|
||||||
|
try:
|
||||||
|
from open_webui.models.models import Models as _Models
|
||||||
|
|
||||||
|
model_record = _Models.get_model_by_id(model_id)
|
||||||
|
if model_record:
|
||||||
|
extra_params["__model__"] = {"info": model_record.model_dump()}
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
# Fetch User/Server Tools (OpenWebUI Native)
|
# Fetch User/Server Tools (OpenWebUI Native)
|
||||||
tools_dict = {}
|
tools_dict = {}
|
||||||
if tool_ids:
|
if tool_ids:
|
||||||
|
|||||||
Reference in New Issue
Block a user