in coreml/export.py [0:0]
def parse_args(parser: argparse.ArgumentParser) -> argparse.ArgumentParser:
parser.add_argument(
"--output-dir",
type=str,
default=".",
help="Provide location to save exported models.",
)
parser.add_argument(
"--variant",
type=lambda x: getattr(SAM2Variant, x),
choices=[variant for variant in SAM2Variant],
default=SAM2Variant.Small,
help="SAM2 variant to export.",
)
parser.add_argument(
"--points",
type=str,
help="List of 2D points, e.g., '[[10,20], [30,40]]'",
)
parser.add_argument(
"--boxes",
type=str,
help="List of 2D bounding boxes, e.g., '[[10,20,30,40], [50,60,70,80]]'",
)
parser.add_argument(
"--labels",
type=str,
help="List of binary labels for each points entry, denoting foreground (1) or background (0).",
)
parser.add_argument(
"--min-deployment-target",
type=lambda x: getattr(AvailableTarget, x),
choices=[target for target in AvailableTarget],
default=AvailableTarget.iOS17,
help="Minimum deployment target for CoreML model.",
)
parser.add_argument(
"--compute-units",
type=lambda x: getattr(ComputeUnit, x),
choices=[cu for cu in ComputeUnit],
default=ComputeUnit.ALL,
help="Which compute units to target for CoreML model.",
)
parser.add_argument(
"--precision",
type=lambda x: getattr(ComputePrecision, x),
choices=[p for p in ComputePrecision],
default=ComputePrecision.FLOAT16,
help="Precision to use for quantization.",
)
return parser