English
naveensp commited on
Commit
939f1f4
·
verified ·
1 Parent(s): 3e3e14c

Delete utils.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. utils.py +0 -126
utils.py DELETED
@@ -1,126 +0,0 @@
1
- import datetime
2
- import logging
3
- import logging.handlers
4
- import os
5
- import sys
6
-
7
- import requests
8
-
9
- from llava.constants import LOGDIR
10
-
11
- server_error_msg = "**NETWORK ERROR DUE TO HIGH TRAFFIC. PLEASE REGENERATE OR REFRESH THIS PAGE.**"
12
- moderation_msg = "YOUR INPUT VIOLATES OUR CONTENT MODERATION GUIDELINES. PLEASE TRY AGAIN."
13
-
14
- handler = None
15
-
16
-
17
- def build_logger(logger_name, logger_filename):
18
- global handler
19
-
20
- formatter = logging.Formatter(
21
- fmt="%(asctime)s | %(levelname)s | %(name)s | %(message)s",
22
- datefmt="%Y-%m-%d %H:%M:%S",
23
- )
24
-
25
- # Set the format of root handlers
26
- if not logging.getLogger().handlers:
27
- logging.basicConfig(level=logging.INFO)
28
- logging.getLogger().handlers[0].setFormatter(formatter)
29
-
30
- # Redirect stdout and stderr to loggers
31
- stdout_logger = logging.getLogger("stdout")
32
- stdout_logger.setLevel(logging.INFO)
33
- sl = StreamToLogger(stdout_logger, logging.INFO)
34
- sys.stdout = sl
35
-
36
- stderr_logger = logging.getLogger("stderr")
37
- stderr_logger.setLevel(logging.ERROR)
38
- sl = StreamToLogger(stderr_logger, logging.ERROR)
39
- sys.stderr = sl
40
-
41
- # Get logger
42
- logger = logging.getLogger(logger_name)
43
- logger.setLevel(logging.INFO)
44
-
45
- # Add a file handler for all loggers
46
- if handler is None:
47
- os.makedirs(LOGDIR, exist_ok=True)
48
- filename = os.path.join(LOGDIR, logger_filename)
49
- handler = logging.handlers.TimedRotatingFileHandler(
50
- filename, when='D', utc=True, encoding='UTF-8')
51
- handler.setFormatter(formatter)
52
-
53
- for name, item in logging.root.manager.loggerDict.items():
54
- if isinstance(item, logging.Logger):
55
- item.addHandler(handler)
56
-
57
- return logger
58
-
59
-
60
- class StreamToLogger(object):
61
- """
62
- Fake file-like stream object that redirects writes to a logger instance.
63
- """
64
- def __init__(self, logger, log_level=logging.INFO):
65
- self.terminal = sys.stdout
66
- self.logger = logger
67
- self.log_level = log_level
68
- self.linebuf = ''
69
-
70
- def __getattr__(self, attr):
71
- return getattr(self.terminal, attr)
72
-
73
- def write(self, buf):
74
- temp_linebuf = self.linebuf + buf
75
- self.linebuf = ''
76
- for line in temp_linebuf.splitlines(True):
77
- # From the io.TextIOWrapper docs:
78
- # On output, if newline is None, any '\n' characters written
79
- # are translated to the system default line separator.
80
- # By default sys.stdout.write() expects '\n' newlines and then
81
- # translates them so this is still cross platform.
82
- if line[-1] == '\n':
83
- self.logger.log(self.log_level, line.rstrip())
84
- else:
85
- self.linebuf += line
86
-
87
- def flush(self):
88
- if self.linebuf != '':
89
- self.logger.log(self.log_level, self.linebuf.rstrip())
90
- self.linebuf = ''
91
-
92
-
93
- def disable_torch_init():
94
- """
95
- Disable the redundant torch default initialization to accelerate model creation.
96
- """
97
- import torch
98
- setattr(torch.nn.Linear, "reset_parameters", lambda self: None)
99
- setattr(torch.nn.LayerNorm, "reset_parameters", lambda self: None)
100
-
101
-
102
- def violates_moderation(text):
103
- """
104
- Check whether the text violates OpenAI moderation API.
105
- """
106
- url = "https://api.openai.com/v1/moderations"
107
- headers = {"Content-Type": "application/json",
108
- "Authorization": "Bearer " + os.environ["OPENAI_API_KEY"]}
109
- text = text.replace("\n", "")
110
- data = "{" + '"input": ' + f'"{text}"' + "}"
111
- data = data.encode("utf-8")
112
- try:
113
- ret = requests.post(url, headers=headers, data=data, timeout=5)
114
- flagged = ret.json()["results"][0]["flagged"]
115
- except requests.exceptions.RequestException as e:
116
- flagged = False
117
- except KeyError as e:
118
- flagged = False
119
-
120
- return flagged
121
-
122
-
123
- def pretty_print_semaphore(semaphore):
124
- if semaphore is None:
125
- return "None"
126
- return f"Semaphore(value={semaphore._value}, locked={semaphore.locked()})"