def find_dupes(paths, exact=False, ignores=None, min_size=<NUM_LIT:0>):
groups = {'<STR_LIT>': getPaths(paths, ignores)}<EOL>groups = groupBy(groups, sizeClassifier, '<STR_LIT>', min_size=min_size)<EOL>groups = groupBy(groups, hashClassifier, '<STR_LIT>', limit=HEAD_SIZE)<EOL>if exact:<EOL><INDENT>groups = groupBy(groups, groupByContent, fun_desc='<STR_LIT>')<EOL><DEDENT>else:<EOL><INDENT>groups = groupBy(groups, hashClassifier, fun_desc='<STR_LIT>')<EOL><DEDENT>return groups<EOL>
High-level code to walk a set of paths and find duplicate groups.

    :param exact: Whether to compare file contents by hash or by reading
                  chunks in parallel.
    :type exact: :class:`~__builtins__.bool`

    :param paths: See :meth:`~fastdupes.getPaths`
    :param ignores: See :meth:`~fastdupes.getPaths`
    :param min_size: See :meth:`~fastdupes.sizeClassifier`

    :returns: A list of groups of files with identical contents
    :rtype: ``[[path, ...], [path, ...]]``