File size: 1,208 Bytes
a5784e9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from typing import cast

from logging_utils import set_request_id
from models import ChatCompletionRequest

from .context_types import RequestContext


async def initialize_request_context(
    req_id: str, request: ChatCompletionRequest
) -> RequestContext:
    from api_utils.server_state import state

    set_request_id(req_id)
    state.logger.debug(
        f"[Request] Parameters: Model={request.model}, Stream={request.stream}"
    )

    context: RequestContext = cast(
        RequestContext,
        {
            "logger": state.logger,
            "page": state.page_instance,
            "is_page_ready": state.is_page_ready,
            "parsed_model_list": state.parsed_model_list,
            "current_ai_studio_model_id": state.current_ai_studio_model_id,
            "model_switching_lock": state.model_switching_lock,
            "page_params_cache": state.page_params_cache,
            "params_cache_lock": state.params_cache_lock,
            "is_streaming": request.stream,
            "model_actually_switched": False,
            "requested_model": request.model,
            "model_id_to_use": None,
            "needs_model_switching": False,
        },
    )

    return context