Spaces:
Paused
Paused
alessandro trinca tornidor
commited on
Commit
·
8e6ebf2
1
Parent(s):
cd399d1
remove use of @session_logger.set_uuid_logging decorator
Browse files- app.py +1 -12
- lisa_on_cuda/__init__.py +16 -0
- lisa_on_cuda/routes.py +1 -9
- lisa_on_cuda/utils/app_helpers.py +3 -13
app.py
CHANGED
@@ -5,31 +5,20 @@ import sys
|
|
5 |
from pathlib import Path
|
6 |
|
7 |
import gradio as gr
|
8 |
-
import structlog
|
9 |
import uvicorn
|
10 |
-
from dotenv import load_dotenv
|
11 |
from fastapi import FastAPI
|
12 |
from fastapi.responses import FileResponse
|
13 |
from fastapi.staticfiles import StaticFiles
|
14 |
from fastapi.templating import Jinja2Templates
|
15 |
from samgis_core.utilities import create_folders_if_not_exists
|
16 |
from samgis_core.utilities import frontend_builder
|
17 |
-
from samgis_core.utilities.session_logger import setup_logging
|
18 |
# for some reason this do
|
19 |
from spaces import GPU as SPACES_GPU
|
20 |
|
|
|
21 |
from lisa_on_cuda.utils import app_helpers
|
22 |
-
from lisa_on_cuda import routes
|
23 |
|
24 |
|
25 |
-
load_dotenv()
|
26 |
-
project_root_folder = Path(globals().get("__file__", "./_")).absolute().parent
|
27 |
-
workdir = os.getenv("WORKDIR", project_root_folder)
|
28 |
-
model_folder = Path(project_root_folder / "machine_learning_models")
|
29 |
-
|
30 |
-
log_level = os.getenv("LOG_LEVEL", "INFO")
|
31 |
-
setup_logging(log_level=log_level)
|
32 |
-
app_logger = structlog.stdlib.get_logger()
|
33 |
app_logger.info(f"PROJECT_ROOT_FOLDER:{project_root_folder}, WORKDIR:{workdir}.")
|
34 |
|
35 |
folders_map = os.getenv("FOLDERS_MAP", "{}")
|
|
|
5 |
from pathlib import Path
|
6 |
|
7 |
import gradio as gr
|
|
|
8 |
import uvicorn
|
|
|
9 |
from fastapi import FastAPI
|
10 |
from fastapi.responses import FileResponse
|
11 |
from fastapi.staticfiles import StaticFiles
|
12 |
from fastapi.templating import Jinja2Templates
|
13 |
from samgis_core.utilities import create_folders_if_not_exists
|
14 |
from samgis_core.utilities import frontend_builder
|
|
|
15 |
# for some reason this do
|
16 |
from spaces import GPU as SPACES_GPU
|
17 |
|
18 |
+
from lisa_on_cuda import routes, app_logger, project_root_folder, workdir
|
19 |
from lisa_on_cuda.utils import app_helpers
|
|
|
20 |
|
21 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
app_logger.info(f"PROJECT_ROOT_FOLDER:{project_root_folder}, WORKDIR:{workdir}.")
|
23 |
|
24 |
folders_map = os.getenv("FOLDERS_MAP", "{}")
|
lisa_on_cuda/__init__.py
CHANGED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
from pathlib import Path
|
3 |
+
|
4 |
+
import structlog
|
5 |
+
from dotenv import load_dotenv
|
6 |
+
from samgis_core.utilities.session_logger import setup_logging
|
7 |
+
|
8 |
+
|
9 |
+
load_dotenv()
|
10 |
+
project_root_folder = Path(globals().get("__file__", "./_")).absolute().parent
|
11 |
+
workdir = os.getenv("WORKDIR", project_root_folder)
|
12 |
+
model_folder = Path(project_root_folder / "machine_learning_models")
|
13 |
+
|
14 |
+
log_level = os.getenv("LOG_LEVEL", "INFO")
|
15 |
+
setup_logging(log_level=log_level)
|
16 |
+
app_logger = structlog.stdlib.get_logger()
|
lisa_on_cuda/routes.py
CHANGED
@@ -1,18 +1,10 @@
|
|
1 |
import json
|
2 |
-
import os
|
3 |
|
4 |
-
import structlog
|
5 |
-
from dotenv import load_dotenv
|
6 |
from fastapi import APIRouter
|
7 |
|
8 |
-
from
|
9 |
|
10 |
|
11 |
-
load_dotenv()
|
12 |
-
|
13 |
-
log_level = os.getenv("LOG_LEVEL", "INFO")
|
14 |
-
setup_logging(log_level=log_level)
|
15 |
-
app_logger = structlog.stdlib.get_logger()
|
16 |
router = APIRouter()
|
17 |
|
18 |
|
|
|
1 |
import json
|
|
|
2 |
|
|
|
|
|
3 |
from fastapi import APIRouter
|
4 |
|
5 |
+
from lisa_on_cuda import app_logger
|
6 |
|
7 |
|
|
|
|
|
|
|
|
|
|
|
8 |
router = APIRouter()
|
9 |
|
10 |
|
lisa_on_cuda/utils/app_helpers.py
CHANGED
@@ -3,6 +3,7 @@ import logging
|
|
3 |
import os
|
4 |
import re
|
5 |
from typing import Callable
|
|
|
6 |
import cv2
|
7 |
import gradio as gr
|
8 |
import nh3
|
@@ -11,18 +12,16 @@ import torch
|
|
11 |
import torch.nn.functional as F
|
12 |
from transformers import AutoTokenizer, BitsAndBytesConfig, CLIPImageProcessor
|
13 |
|
14 |
-
from
|
15 |
from lisa_on_cuda.LISA import LISAForCausalLM
|
16 |
from lisa_on_cuda.llava import conversation as conversation_lib
|
17 |
from lisa_on_cuda.llava.mm_utils import tokenizer_image_token
|
18 |
from lisa_on_cuda.segment_anything.utils.transforms import ResizeLongestSide
|
19 |
-
|
20 |
|
21 |
placeholders = utils.create_placeholder_variables()
|
22 |
-
app_logger = logging.getLogger(__name__)
|
23 |
|
24 |
|
25 |
-
@session_logger.set_uuid_logging
|
26 |
def parse_args(args_to_parse, internal_logger=None):
|
27 |
if internal_logger is None:
|
28 |
internal_logger = app_logger
|
@@ -56,7 +55,6 @@ def parse_args(args_to_parse, internal_logger=None):
|
|
56 |
return parser.parse_args(args_to_parse)
|
57 |
|
58 |
|
59 |
-
@session_logger.set_uuid_logging
|
60 |
def get_cleaned_input(input_str, internal_logger=None):
|
61 |
if internal_logger is None:
|
62 |
internal_logger = app_logger
|
@@ -89,7 +87,6 @@ def get_cleaned_input(input_str, internal_logger=None):
|
|
89 |
return input_str
|
90 |
|
91 |
|
92 |
-
@session_logger.set_uuid_logging
|
93 |
def set_image_precision_by_args(input_image, precision):
|
94 |
if precision == "bf16":
|
95 |
input_image = input_image.bfloat16()
|
@@ -100,7 +97,6 @@ def set_image_precision_by_args(input_image, precision):
|
|
100 |
return input_image
|
101 |
|
102 |
|
103 |
-
@session_logger.set_uuid_logging
|
104 |
def preprocess(
|
105 |
x,
|
106 |
pixel_mean=torch.Tensor([123.675, 116.28, 103.53]).view(-1, 1, 1),
|
@@ -120,7 +116,6 @@ def preprocess(
|
|
120 |
return x
|
121 |
|
122 |
|
123 |
-
@session_logger.set_uuid_logging
|
124 |
def load_model_for_causal_llm_pretrained(
|
125 |
version, torch_dtype, load_in_8bit, load_in_4bit, seg_token_idx, vision_tower,
|
126 |
internal_logger: logging = None
|
@@ -166,7 +161,6 @@ def load_model_for_causal_llm_pretrained(
|
|
166 |
return _model
|
167 |
|
168 |
|
169 |
-
@session_logger.set_uuid_logging
|
170 |
def get_model(args_to_parse, internal_logger: logging = None, inference_decorator: Callable = None):
|
171 |
if internal_logger is None:
|
172 |
internal_logger = app_logger
|
@@ -238,7 +232,6 @@ def get_model(args_to_parse, internal_logger: logging = None, inference_decorato
|
|
238 |
return _model, _clip_image_processor, _tokenizer, _transform
|
239 |
|
240 |
|
241 |
-
@session_logger.set_uuid_logging
|
242 |
def prepare_model_vision_tower(_model, args_to_parse, torch_dtype, internal_logger: logging = None):
|
243 |
if internal_logger is None:
|
244 |
internal_logger = app_logger
|
@@ -272,7 +265,6 @@ def prepare_model_vision_tower(_model, args_to_parse, torch_dtype, internal_logg
|
|
272 |
return _model, vision_tower
|
273 |
|
274 |
|
275 |
-
@session_logger.set_uuid_logging
|
276 |
def get_inference_model_by_args(args_to_parse, internal_logger0: logging = None, inference_decorator: Callable = None):
|
277 |
if internal_logger0 is None:
|
278 |
internal_logger0 = app_logger
|
@@ -281,7 +273,6 @@ def get_inference_model_by_args(args_to_parse, internal_logger0: logging = None,
|
|
281 |
internal_logger0.info("created model, preparing inference function")
|
282 |
no_seg_out = placeholders["no_seg_out"]
|
283 |
|
284 |
-
@session_logger.set_uuid_logging
|
285 |
def inference(
|
286 |
input_str: str,
|
287 |
input_image: str | np.ndarray,
|
@@ -408,7 +399,6 @@ def get_inference_model_by_args(args_to_parse, internal_logger0: logging = None,
|
|
408 |
return inference
|
409 |
|
410 |
|
411 |
-
@session_logger.set_uuid_logging
|
412 |
def get_gradio_interface(
|
413 |
fn_inference: Callable,
|
414 |
args: str = None
|
|
|
3 |
import os
|
4 |
import re
|
5 |
from typing import Callable
|
6 |
+
|
7 |
import cv2
|
8 |
import gradio as gr
|
9 |
import nh3
|
|
|
12 |
import torch.nn.functional as F
|
13 |
from transformers import AutoTokenizer, BitsAndBytesConfig, CLIPImageProcessor
|
14 |
|
15 |
+
from lisa_on_cuda import app_logger
|
16 |
from lisa_on_cuda.LISA import LISAForCausalLM
|
17 |
from lisa_on_cuda.llava import conversation as conversation_lib
|
18 |
from lisa_on_cuda.llava.mm_utils import tokenizer_image_token
|
19 |
from lisa_on_cuda.segment_anything.utils.transforms import ResizeLongestSide
|
20 |
+
from . import constants, utils
|
21 |
|
22 |
placeholders = utils.create_placeholder_variables()
|
|
|
23 |
|
24 |
|
|
|
25 |
def parse_args(args_to_parse, internal_logger=None):
|
26 |
if internal_logger is None:
|
27 |
internal_logger = app_logger
|
|
|
55 |
return parser.parse_args(args_to_parse)
|
56 |
|
57 |
|
|
|
58 |
def get_cleaned_input(input_str, internal_logger=None):
|
59 |
if internal_logger is None:
|
60 |
internal_logger = app_logger
|
|
|
87 |
return input_str
|
88 |
|
89 |
|
|
|
90 |
def set_image_precision_by_args(input_image, precision):
|
91 |
if precision == "bf16":
|
92 |
input_image = input_image.bfloat16()
|
|
|
97 |
return input_image
|
98 |
|
99 |
|
|
|
100 |
def preprocess(
|
101 |
x,
|
102 |
pixel_mean=torch.Tensor([123.675, 116.28, 103.53]).view(-1, 1, 1),
|
|
|
116 |
return x
|
117 |
|
118 |
|
|
|
119 |
def load_model_for_causal_llm_pretrained(
|
120 |
version, torch_dtype, load_in_8bit, load_in_4bit, seg_token_idx, vision_tower,
|
121 |
internal_logger: logging = None
|
|
|
161 |
return _model
|
162 |
|
163 |
|
|
|
164 |
def get_model(args_to_parse, internal_logger: logging = None, inference_decorator: Callable = None):
|
165 |
if internal_logger is None:
|
166 |
internal_logger = app_logger
|
|
|
232 |
return _model, _clip_image_processor, _tokenizer, _transform
|
233 |
|
234 |
|
|
|
235 |
def prepare_model_vision_tower(_model, args_to_parse, torch_dtype, internal_logger: logging = None):
|
236 |
if internal_logger is None:
|
237 |
internal_logger = app_logger
|
|
|
265 |
return _model, vision_tower
|
266 |
|
267 |
|
|
|
268 |
def get_inference_model_by_args(args_to_parse, internal_logger0: logging = None, inference_decorator: Callable = None):
|
269 |
if internal_logger0 is None:
|
270 |
internal_logger0 = app_logger
|
|
|
273 |
internal_logger0.info("created model, preparing inference function")
|
274 |
no_seg_out = placeholders["no_seg_out"]
|
275 |
|
|
|
276 |
def inference(
|
277 |
input_str: str,
|
278 |
input_image: str | np.ndarray,
|
|
|
399 |
return inference
|
400 |
|
401 |
|
|
|
402 |
def get_gradio_interface(
|
403 |
fn_inference: Callable,
|
404 |
args: str = None
|