The code for paper: "Think-on-Graph: Deep and Responsible Reasoning of Large Language Model on Knowledge Graph".
requirements.txt
: Pip environment file.data/
: Evaluation datasets. Seedata/README.md
for details.CoT/
: CoT methods. SeeCoT/README.md
for details.eval/
: Evaluation script. Seeeval/README.md
for details.Freebase/
: Freebase environment setting. SeeFreebase/README.md
for details.Wikidata/
: Wikidata environment setting. SeeWikidata/README.md
for details.tools/
: Common tools used in ToG. Seetools/README.md
for details.ToG/
: Source codes.client.py
: Pre-defined Wikidata APIs, copy fromWikidata/
.server_urls.txt
: Wikidata server urls, copy fromWikidata/
.main_freebase.py
: The main file of ToG where Freebase as KG source. SeeREADME.md
for details.main_wiki.py
: Same as above but using Wikidata as KG source. SeeREADME.md
for details.prompt_list.py
: The prompts for the ToG to pruning, reasoning and generating.freebase_func.py
: All the functions used inmain_freebase.py
.wiki_func.py
: All the functions used inmain_wiki.py
.utils.py
: All the functions used in ToG.
Before running ToG, please ensure that you have successfully installed either Freebase or Wikidata on your local machine. The comprehensive installation instructions and necessary configuration details can be found in the README.md
file located within the respective folder.
The required libraries for running ToG can be found in requirements.txt
.
When using the Wikidata service, copy the client.py
and server_urls.txt
files from the Wikidata
directory into the ToG
folder.
See ToG/
README.md
Upon obtaining the result file, such as ToG_cwq.jsonl
, you should using the jsonl2json.py
script from the tools
directory to convert the ToG_cwq.jsonl
to ToG_cwq.json
. Then, evaluate using the script in the eval
folder (see README.md
in eval
folder).
If you interested or inspired by this work, you can cite us by:
@misc{sun2023thinkongraph,
title={Think-on-Graph: Deep and Responsible Reasoning of Large Language Model with Knowledge Graph},
author={Jiashuo Sun and Chengjin Xu and Lumingyuan Tang and Saizhuo Wang and Chen Lin and Yeyun Gong and Heung-Yeung Shum and Jian Guo},
year={2023},
eprint={2307.07697},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
This project uses the Apache 2.0 protocol. The project assumes no legal responsibility for any of the model's output and will not be held liable for any damages that may result from the use of the resources and output.