
pip install -r requirements.txtmain.pyExécutez des expériences de temps
python main.py
--prompt_file timeqa.json
--given_context 1
--dataset timeqa
--data_file test_hard.jsonl
--max_slice_length 512
--slice_stride 384
--return_search_passage content
--model_name gpt-3.5-turbo
--resume_id -1
Exécutez des expériences de températures et de questions temporelles
python main.py
--prompt_file timequestions.json
--given_context 0
--dataset tempquestion
--data_file test.jsonl
--max_slice_length 512
--slice_stride 384
--return_search_passage content
--model_name gpt-3.5-turbo
--resume_id -1
La sortie doit ressembler
0 Joachim Löw was the coach of which team between Jan 1997 and Aug 1997?
'''python
query = {"subject": "Joachim Löw", "relation": "coach of", "object": None, "time": {"start": datetime(1997, 1, 1), "end": datetime(1997, 8, 31)}}
answer_key = "object"
'''
Search:
'''python
entities_to_search = ["Joachim Löw"]
'''
--------------------------------------------------
Generate a background document from Wikipedia to answer the given question:Joachim Löw is a German football coach and former player. He was the head coach of VfB Stuttgart from July 1996 to October 1998.
Extract information relevant to the query:
'''python
information.append({"subject": "Joachim Löw", "relation": "coach of", "object": "VfB Stuttgart", "time": {"start": datetime(1996, 7, 1), "end": datetime(1998, 10, 31)}})
'''
**************************************************
Extract information relevant to the query:
'''python
information.append({"subject": "Joachim Löw", "relation": "coach of", "object": None, "time": {"start": datetime(1997, 1, 1), "end": datetime(1997, 8, 31)}})
'''
...
Définissez le file_path dans calc_metrics_with_check_and_match.py et exécutez-le.
Dans ce travail, nous nous concentrons sur la QA limitée dans le temps. Cependant, notre cadre peut être modifié pour généraliser à d'autres tâches d'AQ contraints. La clé consiste à définir la contrainte comme une classe Python, qui devrait être mesurée dans quelle mesure la contrainte est satisfaite et redéfinir la fonction match dans calc_metrics_with_check_and_match.py .
Nous exécutons toutes les expériences avec gpt-3.5-turbo-0301 . Cependant, nous avons trouvé que les versions mises à jour comme gpt-3.5-turbo-0613 et gpt-3.5-turbo-1106 ont un comportement différent, leur capacité d'apprentissage dans le contexte se dégrade et ne peut pas effectuer correctement la tâche.
Veuillez citer le papier et jouer ce dépôt si vous trouvez QAAP intéressant ou utile, merci! N'hésitez pas à contacter [email protected] ou ouvrir un problème si vous avez des questions.
@article { zhu2023qaap ,
title = { Question Answering as Programming for Solving Time-Sensitive Questions } ,
author = { Zhu, Xinyu and Yang, Cheng and Chen, Bei and Li, Siheng and Lou, Jian-Guang and Yang, Yujiu } ,
journal = { arXiv preprint arXiv:2305.14221 } ,
year = { 2023 }
}