code: def test_score_model_gateway_chat():
      expected_output = {
          "choices": [
              {
                  "message": {
                      "role": "assistant",
                      "content": "The core of the sun is estimated to have a temperature of about "
                      "15 million degrees Celsius (27 million degrees Fahrenheit).",
                  },
                  "metadata": {"finish_reason": "stop"},
              }
          ],
          "metadata": {
              "input_tokens": 17,
              "output_tokens": 24,
              "total_tokens": 41,
              "model": "gpt-3.5-turbo-0301",
              "endpoint_type": "llm/v1/chat",
          },
      }
  
      with mock.patch(
          "mlflow.gateway.get_route",
          return_value=Route(
              name="my-route",
              route_type="llm/v1/chat",
              model=RouteModelInfo(provider="openai"),
              route_url="my-route",
          ).to_endpoint(),
      ):
          with mock.patch(
              "mlflow.gateway.query", return_value=expected_output
          ):
              response = score_model_on_payload("gateway:/my-route", {})
              assert (
                  response
                  == expected_output["choices"][0]["message"]["content"]
              )
  
imports: from unittest import mock
  import pytest
  from mlflow.exceptions import MlflowException
  from mlflow.gateway.config import Route, RouteModelInfo
  from mlflow.metrics.genai.model_utils import _parse_model_uri, score_model_on_payload
label_desc: Use image node_id 15 for calling a global function with example usage: test_score_model_gateway_chat() without return types