File size: 850 Bytes
d005419
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
224e4de
d005419
 
 
 
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
import abc


class ModelRoles:
    def __init__(self, system_role: str, user_role: str, ai_role: str):
        self.system_role: str = system_role
        self.user_role: str = user_role
        self.ai_role: str = ai_role


class Model:
    def __init__(self, model_name: str, model_roles: ModelRoles):
        self.name = model_name
        self.roles = model_roles


class Repository(abc.ABC):

    def get_model_info(self) -> Model:
        pass

    def get_model_roles(self) -> ModelRoles:
        pass

    def get_message_history(self) -> list[dict[str, str]]:
        pass

    def send_prompt(self, prompt: str, add_to_history: bool) -> dict[str, str]:
        pass

    def set_message_for_role(self, role: str, message: str):
        self.get_message_history().append({"role": role, "content": message})

    def init(self):
        pass