PaperShow / Paper2Video /src /evaluation /PresentQuiz /create_paper_questions.py
ZaynZhu
Clean version without large assets
7c08dc3
from utils.poster_eval_utils import *
import argparse
import os
import json
os.environ["OPENAI_API_KEY"] = ""
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--paper_folder', type=str, default="path/to/data")
parser.add_argument('--model_name', type=str, default='4o')
args = parser.parse_args()
paper_text = get_poster_text(os.path.join(args.paper_folder, 'pdf', 'paper.pdf'))
if args.model_name == '4o':
model_type = ModelType.GPT_4O
elif args.model_name == 'o3':
model_type = ModelType.O3
elif args.model_name == 'gemini':
model_type = ModelType.GEMINI_2_5_PRO
detail_qa = get_questions(paper_text, 'detail', model_type)
understanding_qa = get_questions(paper_text, 'understanding', model_type)
detail_q, detail_a, detail_aspects = get_answers_and_remove_answers(detail_qa)
understanding_q, understanding_a, understanding_aspects = get_answers_and_remove_answers(understanding_qa)
final_qa = {}
detail_qa = {
'questions': detail_q,
'answers': detail_a,
'aspects': detail_aspects,
}
understanding_qa = {
'questions': understanding_q,
'answers': understanding_a,
'aspects': understanding_aspects,
}
final_qa['detail'] = detail_qa
final_qa['understanding'] = understanding_qa
with open(os.path.join(args.paper_folder, f'{args.model_name}_qa.json'), 'w') as f:
json.dump(final_qa, f, indent=4)