class_docstr: Client for the Microsoft's Megatron-Turing NLG models (https://arxiv.org/abs/2201.11990).
  
  According to the internal documentation: https://github.com/microsoft/turing-academic-TNLG,
  "the model will generate roughly 3 tokens per second. The response will be returned once
  all tokens have been generated."
code: def convert_to_raw_request(request: Request) -> Dict:
      return {
          "engine": request.model_engine,
          "prompt": request.prompt,
          "temperature": request.temperature,
          "max_tokens": request.max_tokens,
          "best_of": request.top_k_per_token,
          "logprobs": request.top_k_per_token,
          # Despite what was stated here: https://github.com/microsoft/turing-academic-TNLG#api-parameters,
          # their API supports at most one stop sequence. Pass in the first one for now and handle the rest
          # of the stop sequences during post processing (see `truncate_sequence` below).
          "stop": None
          if len(request.stop_sequences) == 0
          else request.stop_sequences[0],
          "top_p": request.top_p,
          "echo": request.echo_prompt,
      }
  
file_path: H2O/h2o_hf/helm/src/helm/proxy/clients/microsoft_client.py
imports: from typing import List, Optional, Dict
  from filelock import FileLock
  from openai.api_resources.abstract import engine_api_resource
  import openai
  from helm.common.cache import Cache, CacheConfig
  from helm.common.request import EMBEDDING_UNAVAILABLE_REQUEST_RESULT, Request, RequestResult, Sequence, Token
  from helm.common.tokenization_request import TokenizationRequest, TokenizationRequestResult, DecodeRequest, DecodeRequestResult
  from .client import Client, wrap_request_time, truncate_sequence
  from .openai_client import ORIGINAL_COMPLETION_ATTRIBUTES
label_desc: Use image node_id 1 for calling the MicrosoftClient obj's underlying member method code with example usage: obj.convert_to_raw_request(request) and returns: dict