class_docstr: RPC Client session module
  
  Do not directly create the object, call connect
class_docstr_tok: ["RPC","Client","session","module","Do","not","directly","create","the","object",",","call","connect"]
docstr: Construct a remote device.
  
  Parameters
  ----------
  dev_type: int or str
  
  dev_id: int, optional
  
  Returns
  -------
  dev: Device
      The corresponding encoded remote device.
docstr_tok: ["Construct","a","remote","device",".","Parameters","--","--","--","--","--","dev_type",":","int","or","str","dev_id",":","int",",","optional","Returns","--","--","--","-","dev",":","Device","The","corresponding","encoded","remote","device","."]
code: def device(self, dev_type, dev_id=0):
      """Construct a remote device.
  
      Parameters
      ----------
      dev_type: int or str
  
      dev_id: int, optional
  
      Returns
      -------
      dev: Device
          The corresponding encoded remote device.
      """
      dev = nd.device(dev_type, dev_id)
      encode = (self._tbl_index + 1) * base.RPC_SESS_MASK
      dev.device_type += encode
      dev._rpc_sess = self
      return dev
  
imports: import os
  import socket
  import stat
  import struct
  import time
  import tvm._ffi
  from tvm._ffi.base import TVMError
  from tvm.contrib import utils
  from tvm.runtime import ndarray
  from tvm._ffi.runtime_ctypes import Device
  from .None import _ffi_api, base, server
label_desc: Use image node_id 4 for calling the RPCSession obj's underlying member method code with example usage: obj.device(dev_type, dev_id) and returns: dev