docstr: Converts the ECD model as a TorchScript model.
docstr_tok: ["Converts","the","ECD","model","as","a","TorchScript","model","."]
code: def to_torchscript(self, device: Optional[TorchDevice] = None):
      """Converts the ECD model as a TorchScript model."""
      with self.compile():
          # Disable gradient calculation for hummingbird Parameter nodes.
          device = torch.device(get_torch_device())
          self.compiled_model.to(device)
          self.compiled_model.requires_grad_(False)
          trace = super().to_torchscript(device)
      return trace
  
imports: import os
  from contextlib import contextmanager
  from typing import Dict, Optional, Tuple, Union
  import lightgbm
  import numpy
  import torch
  from hummingbird.ml import convert
  from ludwig.accounting.used_tokens import get_used_tokens_for_gbm
  from ludwig.constants import BINARY, LOGITS, MODEL_GBM, NUMBER, USED_TOKENS
  from ludwig.features.base_feature import OutputFeature
  from ludwig.globals import MODEL_WEIGHTS_FILE_NAME
  from ludwig.models.base import BaseModel
  from ludwig.schema.features.base import BaseOutputFeatureConfig, FeatureCollection
  from ludwig.schema.model_config import ModelConfig
  from ludwig.utils import output_feature_utils
  from ludwig.utils.fs_utils import path_exists
  from ludwig.utils.gbm_utils import reshape_logits
  from ludwig.utils.torch_utils import get_torch_device
  from ludwig.utils.types import TorchDevice
label_desc: Use image node_id 8 for calling the GBM obj's underlying member method code with example usage: obj.to_torchscript(device) and returns: trace