from typing import List class PromptBuilder: def __init__(self): self.premise: List[str] = [] self.end: List[str] = [] self.data: List[str] = [] self.data_only = False def add_data(self, data): self.data.append(data) return self def add_end(self, end): self.end.append(end) return self def set_data_only(self, data_only): self.data_only = data_only return self def add_premise(self, premise): self.premise.append(premise) return self def build(self): if len(self.data) == 0: print("This prompt did not contain any data, was it intentional ?") data = "/n".join(self.data) if self.data_only: return data end = "".join(self.end) premise = "".join(self.premise) return f"{premise}\n{data}\n{end}"