Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -1,11 +1,13 @@
|
|
| 1 |
import torch
|
| 2 |
import gradio as gr
|
| 3 |
from PIL import Image
|
|
|
|
| 4 |
|
| 5 |
import janus # noqa: F401
|
| 6 |
from janus.models import VLChatProcessor
|
| 7 |
from transformers import AutoModelForCausalLM
|
| 8 |
from peft import PeftModel
|
|
|
|
| 9 |
|
| 10 |
BASE_MODEL = "deepseek-ai/Janus-Pro-1B"
|
| 11 |
ADAPTER_REPO = "Branis333/Janus_grade_final"
|
|
@@ -15,6 +17,19 @@ dtype = torch.float16 if device == "cuda" else torch.float32
|
|
| 15 |
|
| 16 |
processor = VLChatProcessor.from_pretrained(BASE_MODEL)
|
| 17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
def _load_base_model():
|
| 19 |
return AutoModelForCausalLM.from_pretrained(
|
| 20 |
BASE_MODEL,
|
|
@@ -34,9 +49,19 @@ except RuntimeError as err:
|
|
| 34 |
|
| 35 |
original_linspace = torch.linspace
|
| 36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
def _safe_linspace(*args, **kwargs):
|
| 38 |
-
kwargs
|
| 39 |
-
|
|
|
|
|
|
|
|
|
|
| 40 |
|
| 41 |
torch.linspace = _safe_linspace
|
| 42 |
try:
|
|
|
|
| 1 |
import torch
|
| 2 |
import gradio as gr
|
| 3 |
from PIL import Image
|
| 4 |
+
import numpy as np
|
| 5 |
|
| 6 |
import janus # noqa: F401
|
| 7 |
from janus.models import VLChatProcessor
|
| 8 |
from transformers import AutoModelForCausalLM
|
| 9 |
from peft import PeftModel
|
| 10 |
+
from transformers.modeling_utils import PreTrainedModel
|
| 11 |
|
| 12 |
BASE_MODEL = "deepseek-ai/Janus-Pro-1B"
|
| 13 |
ADAPTER_REPO = "Branis333/Janus_grade_final"
|
|
|
|
| 17 |
|
| 18 |
processor = VLChatProcessor.from_pretrained(BASE_MODEL)
|
| 19 |
|
| 20 |
+
|
| 21 |
+
_original_adjust_tied = PreTrainedModel._adjust_tied_keys_with_tied_pointers
|
| 22 |
+
|
| 23 |
+
|
| 24 |
+
def _safe_adjust_tied_keys_with_tied_pointers(self, tied_weights_keys_by_pointers):
|
| 25 |
+
if not hasattr(self, "all_tied_weights_keys"):
|
| 26 |
+
self.all_tied_weights_keys = set(getattr(self, "_tied_weights_keys", []) or [])
|
| 27 |
+
return _original_adjust_tied(self, tied_weights_keys_by_pointers)
|
| 28 |
+
|
| 29 |
+
|
| 30 |
+
PreTrainedModel._adjust_tied_keys_with_tied_pointers = _safe_adjust_tied_keys_with_tied_pointers
|
| 31 |
+
|
| 32 |
+
|
| 33 |
def _load_base_model():
|
| 34 |
return AutoModelForCausalLM.from_pretrained(
|
| 35 |
BASE_MODEL,
|
|
|
|
| 49 |
|
| 50 |
original_linspace = torch.linspace
|
| 51 |
|
| 52 |
+
class _ScalarFloat:
|
| 53 |
+
def __init__(self, value):
|
| 54 |
+
self._value = float(value)
|
| 55 |
+
|
| 56 |
+
def item(self):
|
| 57 |
+
return self._value
|
| 58 |
+
|
| 59 |
def _safe_linspace(*args, **kwargs):
|
| 60 |
+
start = kwargs.get("start", args[0] if len(args) > 0 else 0.0)
|
| 61 |
+
end = kwargs.get("end", args[1] if len(args) > 1 else 1.0)
|
| 62 |
+
steps = kwargs.get("steps", args[2] if len(args) > 2 else 100)
|
| 63 |
+
values = np.linspace(float(start), float(end), int(steps), dtype=np.float32)
|
| 64 |
+
return [_ScalarFloat(v) for v in values]
|
| 65 |
|
| 66 |
torch.linspace = _safe_linspace
|
| 67 |
try:
|