class_docstr: Base Task superclass used to implement new tasks.
  
  Attributes:
      model: Model name string for the task in use.
      local: Run locally. Defaults to False.
      api_key: Backprop API key for non-local inference.
      device: Device to run inference on. Defaults to "cuda" if available.
      models: All supported models for a given task (pulls from config).
      default_local_model: Which model the task will default to if initialized with none provided: Defined per-task.
class_docstr_tok: ["Base","Task","superclass","used","to","implement","new","tasks",".","Attributes",":","model",":","Model","name","string","for","the","task","in","use",".","local",":","Run","locally",".","Defaults","to","False",".","api_key",":","Backprop","API","key","for","non-local","inference",".","device",":","Device","to","run","inference","on",".","Defaults","to","``","cuda","''","if","available",".","models",":","All","supported","models","for","a","given","task","(","pulls","from","config",")",".","default_local_model",":","Which","model","the","task","will","default","to","if","initialized","with","none","provided",":","Defined","per-task","."]
docstr: Saves the model used by task to ``~/.cache/backprop/name``
  
  Args:
      name: string identifier for the model. Lowercase letters and numbers.
          No spaces/special characters except dashes.
      description: String description of the model.
      details: Valid json dictionary of additional details about the model
docstr_tok: ["Saves","the","model","used","by","task","to","``","~\/.cache\/backprop\/name","``","Args",":","name",":","string","identifier","for","the","model",".","Lowercase","letters","and","numbers",".","No","spaces\/special","characters","except","dashes",".","description",":","String","description","of","the","model",".","details",":","Valid","json","dictionary","of","additional","details","about","the","model"]
code: def save(
      self, name: str, description: str = None, details: Dict = None
  ):
      """
      Saves the model used by task to ``~/.cache/backprop/name``
  
      Args:
          name: string identifier for the model. Lowercase letters and numbers.
              No spaces/special characters except dashes.
          description: String description of the model.
          details: Valid json dictionary of additional details about the model
      """
      return backprop.save(
          self.model,
          name=name,
          description=description,
          details=details,
      )
  
imports: from typing import Dict, List, Union, Tuple
  import logging
  import backprop
  from backprop.models import AutoModel
  import pytorch_lightning
  from torch.utils.data.dataloader import DataLoader
  import os
  import torch
  from torch.utils.data import Subset, Dataset
  from pytorch_lightning.utilities.memory import garbage_collection_cuda
  from pytorch_lightning.callbacks import EarlyStopping
label_desc: Use image node_id 3 for calling the Task obj's underlying member method code with example usage: obj.save(name, description, details) and returns: backprop