# -*-coding:utf-8 -*- """ Dump Instruction Data for SELF """ import json from ape.instance import LoadFactory def make_instruct_data(instruction, input_output_list): data = { 'instruction': instruction, 'instances': [] } for i, j in input_output_list: data['instances'].append({'input': i, 'output': j}) return data def seed_file(file_name='./ape/data/seed_task.json', n_instances=5): instruction = { 'paraphase': '将医学手术名称的术语表述标准化。输入是医学手术的名称,输出是对该手术的名称进行修正、标准化,以供医学专业人员更好地理解', 'search_intent': '生成医学相关问题的答案。给定一个输入问题,需要根据问题生成相应的输出答案。答案包括临床表现、病因、治疗方法、作用、定义等等,如果有多个问题,返回多问', 'qa_generation': '训练一个问答系统,给定一些医学文本,能够回答用户提问关于该文本内容的问题。每个输入-输出对是一组文本和对应的问题及答案。输出的形式是以下Json格式{"问题":$问题, "回答":$回答}', 'entity': '给定药品信息和用途说明,根据用途说明提取出药品的主治功能' } with open(file_name, 'w', encoding='UTF8') as f: for task, instruct in instruction.items(): sample = LoadFactory[task]()[:n_instances] data = make_instruct_data(instruct, sample) f.write(json.dumps(data, ensure_ascii=False) + '\n') if __name__ == '__main__': seed_file()