def get_problem_from_model(task_json, model, size): p = Problem() data = dict() data["train"] = [] data["test"] = [] for pair in task_json['train']: inp = pair["input"] oup = predict(inp, model, size) data["train"].append({"input": oup, "output": pair["output"]}) for pair in task_json['test']: inp = pair["input"] oup = predict(inp, model, size) data["test"].append({"input": oup}) p.initialize(data) return p
def load_file(self, i, file_list): """load and initialize(pre solve) problem""" p = Problem() if file_list == "train": with open(os.path.join(os.path.dirname(__file__), f"../../input/training/{train_file_list[i]}"), "r") as f: data = json.load(f) self.task_json = data self.json_name = train_file_list[i][:-5] if self.verbose: print("train", i) p.initialize(data) for j in range(len(data["test"])): answer_arr = data["test"][j]["output"] answer_str = "|" + "|".join(["".join(map(str, x)) for x in answer_arr]) + "|" self.answer_list.append(answer_str) else: with open(os.path.join(os.path.dirname(__file__), f"../../input/evaluation/{eval_file_list[i]}"), "r") as f: data = json.load(f) self.task_json = data self.json_name = eval_file_list[i][:-5] if self.verbose: print("eval", i) p.initialize(data) for j in range(len(data["test"])): answer_arr = data["test"][j]["output"] answer_str = "|" + "|".join(["".join(map(str, x)) for x in answer_arr]) + "|" self.answer_list.append(answer_str) self.original_problem = p self.problem_hand = p # static solvers for op in static_solvers: self.pre_solve(op) return None
def initialize_from_data(self, data): p = Problem() p.initialize(data) self.original_problem = p self.problem_hand = p return None