code: def boxlist_nms(boxlist, nms_thresh, max_proposals=-1, score_field="scores"):
      
      if nms_thresh <= 0:
          return boxlist
      mode = boxlist.mode
      boxlist = boxlist.convert("xyxy")
      boxes = boxlist.bbox
      score = boxlist.get_field(score_field)
      keep = _box_nms(boxes, score, nms_thresh)
      if max_proposals > 0:
          keep = keep[: max_proposals]
      boxlist = boxlist[keep]
      return boxlist.convert(mode)
docs: Performs non-maximum suppression on a boxlist, with scores specified
      in a boxlist field via score_field.
  
      Arguments:
          boxlist(BoxList)
          nms_thresh (float)
          max_proposals (int): if > 0, then only the top max_proposals are kept
              after non-maximum suppression
          score_field (str)