def METHOD_NAME():
    # Build output folders
    os.makedirs('model_zoo', exist_ok=True)
    os.makedirs('model_zoo_papers', exist_ok=True)
    # Collect all document contents
    model_doc_list = _get_model_docs()
    model_docs = Addict()
    for path in model_doc_list:
        task, dataset, keywords = _parse_model_doc_path(path)
        with open(path, 'r', encoding='utf-8') as f:
            doc = {
                'task': task,
                'dataset': dataset,
                'keywords': keywords,
                'path': path,
                'content': f.read()
            }
        model_docs[task][dataset][keywords] = doc
    # Write files by task
    for task, dataset_dict in model_docs.items():
        lines = [f'# {task}', '']
        for dataset, keywords_dict in dataset_dict.items():
            lines += [
                '<hr/>', '<br/><br/>', '', f'## {titlecase(dataset)} Dataset',
                ''
            ]
            for keywords, doc in keywords_dict.items():
                keyword_strs = [
                    titlecase(x.replace('_', ' ')) for x in keywords
                ]
                dataset_str = titlecase(dataset)
                if dataset_str in keyword_strs:
                    keyword_strs.remove(dataset_str)
                lines += [
                    '<br/>', '',
                    (f'### {" + ".join(keyword_strs)}'
                     f' on {dataset_str}'), '', doc['content'], ''
                ]
        fn = osp.join('model_zoo', f'{task.replace(" ", "_").lower()}.md')
        with open(fn, 'w', encoding='utf-8') as f:
            f.write('\n'.join(lines))
    # Write files by paper
    paper_refs = _get_paper_refs()
    for paper_cat, paper_list in paper_refs.items():
        lines = []
        for paper_fn in paper_list:
            paper_name, indicator = _parse_paper_ref(paper_fn)
            paperlines = []
            for task, dataset_dict in model_docs.items():
                for dataset, keywords_dict in dataset_dict.items():
                    for keywords, doc_info in keywords_dict.items():
                        if indicator not in doc_info['content']:
                            continue
                        keyword_strs = [
                            titlecase(x.replace('_', ' ')) for x in keywords
                        ]
                        dataset_str = titlecase(dataset)
                        if dataset_str in keyword_strs:
                            keyword_strs.remove(dataset_str)
                        paperlines += [
                            '<br/>', '',
                            (f'### {" + ".join(keyword_strs)}'
                             f' on {dataset_str}'), '', doc_info['content'], ''
                        ]
            if paperlines:
                lines += ['<hr/>', '<br/><br/>', '', f'## {paper_name}', '']
                lines += paperlines
        if lines:
            lines = [f'# {titlecase(paper_cat)}', ''] + lines
            with open(
                    osp.join('model_zoo_papers', f'{paper_cat.lower()}.md'),
                    'w',
                    encoding='utf-8') as f:
                f.write('\n'.join(lines))