Spaces:
No application file
No application file
File size: 856 Bytes
5a1b165 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
from abc import ABC, abstractmethod
class Prompt(ABC):
def load_prompt(path):
with open(path) as f:
lines = f.readlines()
return "".join(lines)
@abstractmethod
def load(self, path):
pass
class QuestionAnsweringPrompt(Prompt):
def __init__(self, result, question):
result = result
question = question
def load(self, path):
prompt = (
self.load_prompt(path)
.replace("<<PASSAGE>>", self.result["index"]["content"])
.replace("<<QUESTION>>", self.question)
)
return prompt
class PassageSummarizationPrompt(Prompt):
def __init__(self, answers):
self.answers = answers
def load(self, path):
prompt = self.load_prompt(path).replace("<<PASSAGE>>", "\n".join(self.answers))
return prompt
|