Researcher / survey.py
sidphbot's picture
arxiv id list support
f310b8b
from src.Surveyor import Surveyor
import logging
logging.basicConfig()
logging.getLogger().setLevel(logging.ERROR)
if __name__ == '__main__':
import argparse
parser = argparse.ArgumentParser(description='Generate a survey just from a query !!')
data = parser.add_mutually_exclusive_group(required=True)
data.add_argument('--query', type=str, help='your research query/keywords')
data.add_argument('--arxiv_ids', nargs='+', help='arxiv ids for your curated set of papers')
parser.add_argument('--max_search', metavar='max_metadata_papers', type=int, default=None,
help='maximium number of papers to gaze at - defaults to 100')
parser.add_argument('--num_papers', metavar='max_num_papers', type=int, default=None,
help='maximium number of papers to download and analyse - defaults to 25')
parser.add_argument('--pdf_dir', metavar='pdf_dir', type=str, default=None,
help='pdf paper storage directory - defaults to arxiv_data/tarpdfs/')
parser.add_argument('--txt_dir', metavar='txt_dir', type=str, default=None,
help='text-converted paper storage directory - defaults to arxiv_data/fulltext/')
parser.add_argument('--img_dir', metavar='img_dir', type=str, default=None,
help='image storage directory - defaults to arxiv_data/images/')
parser.add_argument('--tab_dir', metavar='tab_dir', type=str, default=None,
help='tables storage directory - defaults to arxiv_data/tables/')
parser.add_argument('--dump_dir', metavar='dump_dir', type=str, default=None,
help='all_output_dir - defaults to arxiv_dumps/')
parser.add_argument('--models_dir', metavar='save_models_dir', type=str, default=None,
help='directory to save models (> 5GB) - defaults to saved_models/')
parser.add_argument('--title_model_name', metavar='title_model_name', type=str, default=None,
help='title model name/tag in hugging-face, defaults to \'Callidior/bert2bert-base-arxiv-titlegen\'')
parser.add_argument('--ex_summ_model_name', metavar='extractive_summ_model_name', type=str, default=None,
help='extractive summary model name/tag in hugging-face, defaults to \'allenai/scibert_scivocab_uncased\'')
parser.add_argument('--ledmodel_name', metavar='ledmodel_name', type=str, default=None,
help='led model(for abstractive summary) name/tag in hugging-face, defaults to \'allenai/led-large-16384-arxiv\'')
parser.add_argument('--embedder_name', metavar='sentence_embedder_name', type=str, default=None,
help='sentence embedder name/tag in hugging-face, defaults to \'paraphrase-MiniLM-L6-v2\'')
parser.add_argument('--nlp_name', metavar='spacy_model_name', type=str, default=None,
help='spacy model name/tag in hugging-face (if changed - needs to be spacy-installed prior), defaults to \'en_core_sci_scibert\'')
parser.add_argument('--similarity_nlp_name', metavar='similarity_nlp_name', type=str, default=None,
help='spacy downstream model(for similarity) name/tag in hugging-face (if changed - needs to be spacy-installed prior), defaults to \'en_core_sci_lg\'')
parser.add_argument('--kw_model_name', metavar='kw_model_name', type=str, default=None,
help='keyword extraction model name/tag in hugging-face, defaults to \'distilbert-base-nli-mean-tokens\'')
parser.add_argument('--refresh_models', metavar='refresh_models', type=str, default=None,
help='Refresh model downloads with given names (needs atleast one model name param above), defaults to False')
parser.add_argument('--high_gpu', metavar='high_gpu', type=str, default=None,
help='High GPU usage permitted, defaults to False')
args = parser.parse_args()
surveyor = Surveyor(
pdf_dir=args.pdf_dir,
txt_dir=args.txt_dir,
img_dir=args.img_dir,
tab_dir=args.tab_dir,
dump_dir=args.dump_dir,
models_dir=args.models_dir,
title_model_name=args.title_model_name,
ex_summ_model_name=args.ex_summ_model_name,
ledmodel_name=args.ledmodel_name,
embedder_name=args.embedder_name,
nlp_name=args.nlp_name,
similarity_nlp_name=args.similarity_nlp_name,
kw_model_name=args.kw_model_name,
refresh_models=args.refresh_models,
high_gpu=args.high_gpu
)
surveyor.survey(query=args.query, id_list=args.arxiv_ids, max_search=args.max_search, num_papers=args.num_papers,
debug=False, weigh_authors=False)