class_docstr: Abstract superclass for binding pocket detectors
  
  Many times when working with a new protein or other macromolecule,
  it's not clear what zones of the macromolecule may be good targets
  for potential ligands or other molecules to interact with. This
  abstract class provides a template for child classes that
  algorithmically locate potential binding pockets that are good
  potential interaction sites.
  
  Note that potential interactions sites can be found by many
  different methods, and that this abstract class doesn't specify the
  technique to be used.
docstr: Finds potential binding pockets in proteins.
  
  Parameters
  ----------
  molecule: object
      Some representation of a molecule.
docstr_tok: ["Finds","potential","binding","pockets","in","proteins",".","Parameters","--","--","--","--","--","molecule",":","object","Some","representation","of","a","molecule","."]
code: def find_pockets(self, molecule: Any):
      """Finds potential binding pockets in proteins.
  
      Parameters
      ----------
      molecule: object
          Some representation of a molecule.
      """
      raise NotImplementedError
  
file_path: deepchem/deepchem/dock/binding_pocket.py
imports: import logging
  import numpy
  from typing import Any, List, Optional, Tuple
  from deepchem.models import Model
  from deepchem.utils.rdkit_utils import load_molecule
  from deepchem.utils.coordinate_box_utils import CoordinateBox, get_face_boxes, merge_overlapping_boxes
  from deepchem.utils.fragment_utils import get_contact_atom_indices
label_desc: Use image node_id 1 for calling the BindingPocketFinder obj's underlying member method code with example usage: obj.find_pockets(molecule) without return types