memit
1.0.0
수천 개의 사실을 한 번에 변환기 메모리로 편집합니다.
Python, CUDA 및 PyTorch를 관리하려면 conda
권장합니다. pip
다른 모든 것을 위한 것입니다. 시작하려면 간단히 conda
설치하고 다음을 실행하세요.
CONDA_HOME= $CONDA_HOME ./scripts/setup_conda.sh
$CONDA_HOME
conda
설치 경로여야 합니다(예: ~/miniconda3
.
notebooks/memit.ipynb
MEMIT를 보여줍니다. API는 간단합니다. 다음 형식의 요청된 재작성을 지정하기만 하면 됩니다.
request = [
{
"prompt" : "{} plays the sport of" ,
"subject" : "LeBron James" ,
"target_new" : {
"str" : "football"
}
},
{
"prompt" : "{} plays the sport of" ,
"subject" : "Michael Jordan" ,
"target_new" : {
"str" : "baseball"
}
},
]
다른 유사한 예가 노트북에 포함되어 있습니다.
experiments/evaluate.py
사용하면 baselines/
의 모든 방법을 평가할 수 있습니다.
예를 들어:
python3 -m experiments.evaluate
--alg_name=MEMIT
--model_name=EleutherAI/gpt-j-6B
--hparams_fname=EleutherAI_gpt-j-6B.json
--num_edits=10000
--use_cache
각 실행의 결과는 results/<method_name>/run_<run_id>
에 특정 형식으로 저장됩니다.
results/
| __ MEMIT/
| __ run_ < run_id > /
| __ params.json
| __ case_0.json
| __ case_1.json
| __ ...
| __ case_10000.json
결과를 요약하려면 experiments/summarize.py
사용하면 됩니다.
python3 -m experiments.summarize --dir_name=MEMIT --runs=run_ < run 1> ,run_ < run 2>
python3 -m experiments.evaluate -h
또는 python3 -m experiments.summarize -h
실행하면 명령줄 플래그에 대한 세부정보가 제공됩니다.
@article { meng2022memit ,
title = { Mass Editing Memory in a Transformer } ,
author = { Kevin Meng and Sen Sharma, Arnab and Alex Andonian and Yonatan Belinkov and David Bau } ,
journal = { arXiv preprint arXiv:2210.07229 } ,
year = { 2022 }
}