Download TaskSolver/tasksolver/keychain.py from yiranranranra/blender: direct link, hf CLI and curl.
- Browser
- Download file 780 Bytes
-
https://huggingface.co/yiranranranra/blender/resolve/main/TaskSolver/tasksolver/keychain.py
- Command line
-
hf download hf://yiranranranra/blender/TaskSolver/tasksolver/keychain.py
-
curl -L -o keychain.py https://huggingface.co/yiranranranra/blender/resolve/main/TaskSolver/tasksolver/keychain.py
780 Bytes
| import os | |
| from typing import Union, Dict | |
| class KeyChain(object): | |
| def __init__(self,keys:Union[None, Dict[str, str]]=None): | |
| if keys is None: | |
| self.keys = {} | |
| else: | |
| assert isinstance(keys, dict), "Keys should be dict." | |
| def add_key(self, service:str, key:str): | |
| if os.path.exists(key): # it's a file | |
| with open(key, "r") as f: | |
| key = f.readline().strip() | |
| self.keys.update({service: key}) | |
| return self | |
| def get_key(self, service:str ): | |
| if service not in self.keys: | |
| raise ValueError(f"No keys associated with '{service}'") | |
| return self.keys[service] | |
| def __getitem__(self, service:str): | |
| return self.get_key(service) | |