|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import argparse |
|
|
import json |
|
|
import os |
|
|
|
|
|
""" |
|
|
Create a dataset with five Lambada test examples for functional testing. Each line |
|
|
contains a dictionary with a "text_before_last_word" and "last_word" keys. |
|
|
""" |
|
|
|
|
|
|
|
|
def create_sample_lambada(output_file: str, overwrite: bool = False): |
|
|
"""Create JSON file with a few Lambada examples.""" |
|
|
if os.path.isfile(output_file) and not overwrite: |
|
|
print(f"File {output_file} exists and overwrite flag is not set so exiting.") |
|
|
return |
|
|
|
|
|
texts = [ |
|
|
{ |
|
|
"text_before_last_word": "In my palm is a clear stone , and inside it is a small ivory statuette . A guardian angel .\n\n\" Figured if you re going to be out at night getting hit by cars , you might as well have some backup .\"\n\n I look at him , feeling stunned . Like this is some sort of sign . But as I stare at Harlin , his mouth curved in a confident grin , I don t care about", |
|
|
"last_word": "signs", |
|
|
}, |
|
|
{ |
|
|
"text_before_last_word": "Give me a minute to change and I ll meet you at the docks .\" She d forced those words through her teeth .\n\n\" No need to change . We won t be that long .\"\n\n Shane gripped her arm and started leading her to the dock .\n\n\" I can make it there on my own ,", |
|
|
"last_word": "Shane", |
|
|
}, |
|
|
{ |
|
|
"text_before_last_word": "\" Only one source I know of that would be likely to cough up enough money to finance a phony sleep research facility and pay people big bucks to solve crimes in their dreams ,\" Farrell concluded dryly .\n\n\" What can I say ?\" Ellis unfolded his arms and widened his hands . \" Your tax dollars at work .\"\n\n Before Farrell could respond , Leila s voice rose from inside the house .\n\n\" No insurance ?\" she wailed . \" What do you mean you don t have any", |
|
|
"last_word": "insurance", |
|
|
}, |
|
|
{ |
|
|
"text_before_last_word": "Helen s heart broke a little in the face of Miss Mabel s selfless courage . She thought that because she was old , her life was of less value than the others . For all Helen knew , Miss Mabel had a lot more years to live than she did . \" Not going to happen ,\" replied", |
|
|
"last_word": "Helen", |
|
|
}, |
|
|
{ |
|
|
"text_before_last_word": "Preston had been the last person to wear those chains , and I knew what I d see and feel if they were slipped onto my skin the Reaper s unending hatred of me . I d felt enough of that emotion already in the amphitheater . I didn t want to feel anymore .\n\n\" Don t put those on me ,\" I whispered . \" Please .\"\n\n Sergei looked at me , surprised by my low , raspy please , but he put down the", |
|
|
"last_word": "chains", |
|
|
}, |
|
|
] |
|
|
|
|
|
print(f"Writing {len(texts)} line(s) to {output_file}...") |
|
|
os.makedirs(os.path.dirname(os.path.abspath(output_file)), exist_ok=True) |
|
|
with open(output_file, mode="w", encoding="utf-8") as f: |
|
|
json.dump(texts, f) |
|
|
print("OK.") |
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
parser = argparse.ArgumentParser("Create a sample from Lambada test dataset.") |
|
|
parser.add_argument("--output_file", required=True, help="Output file name") |
|
|
parser.add_argument("--overwrite", action="store_true", help="Overwrite file if it exists") |
|
|
args = parser.parse_args() |
|
|
create_sample_lambada(args.output_file, args.overwrite) |
|
|
|