File size: 990 Bytes
21d9a4c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
37
38
39
40
41
42
43
44
45
46
47
48
49
from dataclasses import dataclass
import os


@dataclass
class TgBot:
    token: str
    admin_ids: list[int]


@dataclass
class DataConfig:
    dataset: str
    cls_vec: str


@dataclass
class ModelConfig:
    bi_checkpoint: str
    cross_checkpoint: str
    device: str
    hf_client: str


@dataclass
class Config:
    tg_bot: TgBot
    data: DataConfig
    model: ModelConfig


def load_config(path: str='.env') -> Config:

    return Config(
        tg_bot=TgBot(
            token=os.environ['telegram_token'],
            admin_ids=os.environ['telegram_admin']
        ),
        data=DataConfig(
            dataset='ekaterinatao/house_md_context3',
            cls_vec='ekaterinatao/house_md_cls_embeds'
        ),
        model=ModelConfig(
            bi_checkpoint='ekaterinatao/house-md-bot-bert-bi-encoder',
            cross_checkpoint='ekaterinatao/house-md-bot-bert-cross-encoder',
            device='cpu',
            hf_client='ekaterinatao/house_md_bot'
        )
    )