Spaces:
Runtime error
Runtime error
project-baize
commited on
Commit
·
1abe38b
1
Parent(s):
1a3d9a9
Update app_modules/utils.py
Browse files- app_modules/utils.py +22 -21
app_modules/utils.py
CHANGED
@@ -102,8 +102,6 @@ def convert_mdtext(md_text):
|
|
102 |
else:
|
103 |
result.append(mdtex2html.convert(non_code, extensions=["tables"]))
|
104 |
if code.strip():
|
105 |
-
# _, code = detect_language(code) # 暂时去除代码高亮功能,因为在大段代码的情况下会出现问题
|
106 |
-
# code = code.replace("\n\n", "\n") # 暂时去除代码中的空行,因为在大段代码的情况下会出现问题
|
107 |
code = f"\n```{code}\n\n```"
|
108 |
code = markdown_to_html_with_syntax_highlight(code)
|
109 |
result.append(code)
|
@@ -152,10 +150,10 @@ def convert_to_markdown(text):
|
|
152 |
for line in lines:
|
153 |
if in_code_block is False and line.startswith("```"):
|
154 |
in_code_block = True
|
155 |
-
markdown_text += "
|
156 |
elif in_code_block is True and line.startswith("```"):
|
157 |
in_code_block = False
|
158 |
-
markdown_text += "
|
159 |
elif in_code_block:
|
160 |
markdown_text += f"{line}\n"
|
161 |
else:
|
@@ -321,7 +319,7 @@ def is_stop_word_or_prefix(s: str, stop_words: list) -> bool:
|
|
321 |
|
322 |
|
323 |
|
324 |
-
def load_tokenizer_and_model(base_model,adapter_model,load_8bit=False):
|
325 |
if torch.cuda.is_available():
|
326 |
device = "cuda"
|
327 |
else:
|
@@ -340,32 +338,35 @@ def load_tokenizer_and_model(base_model,adapter_model,load_8bit=False):
|
|
340 |
torch_dtype=torch.float16,
|
341 |
device_map="auto",
|
342 |
)
|
343 |
-
|
344 |
-
model
|
345 |
-
|
346 |
-
|
347 |
-
|
|
|
348 |
elif device == "mps":
|
349 |
model = LlamaForCausalLM.from_pretrained(
|
350 |
base_model,
|
351 |
device_map={"": device},
|
352 |
torch_dtype=torch.float16,
|
353 |
)
|
354 |
-
|
355 |
-
model
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
|
|
360 |
else:
|
361 |
model = LlamaForCausalLM.from_pretrained(
|
362 |
base_model, device_map={"": device}, low_cpu_mem_usage=True
|
363 |
)
|
364 |
-
|
365 |
-
model
|
366 |
-
|
367 |
-
|
368 |
-
|
|
|
369 |
|
370 |
if not load_8bit:
|
371 |
model.half() # seems to fix bugs for some users.
|
|
|
102 |
else:
|
103 |
result.append(mdtex2html.convert(non_code, extensions=["tables"]))
|
104 |
if code.strip():
|
|
|
|
|
105 |
code = f"\n```{code}\n\n```"
|
106 |
code = markdown_to_html_with_syntax_highlight(code)
|
107 |
result.append(code)
|
|
|
150 |
for line in lines:
|
151 |
if in_code_block is False and line.startswith("```"):
|
152 |
in_code_block = True
|
153 |
+
markdown_text += f"{line}\n"
|
154 |
elif in_code_block is True and line.startswith("```"):
|
155 |
in_code_block = False
|
156 |
+
markdown_text += f"{line}\n"
|
157 |
elif in_code_block:
|
158 |
markdown_text += f"{line}\n"
|
159 |
else:
|
|
|
319 |
|
320 |
|
321 |
|
322 |
+
def load_tokenizer_and_model(base_model,adapter_model=None,load_8bit=False):
|
323 |
if torch.cuda.is_available():
|
324 |
device = "cuda"
|
325 |
else:
|
|
|
338 |
torch_dtype=torch.float16,
|
339 |
device_map="auto",
|
340 |
)
|
341 |
+
if adapter_model is not None:
|
342 |
+
model = PeftModel.from_pretrained(
|
343 |
+
model,
|
344 |
+
adapter_model,
|
345 |
+
torch_dtype=torch.float16,
|
346 |
+
)
|
347 |
elif device == "mps":
|
348 |
model = LlamaForCausalLM.from_pretrained(
|
349 |
base_model,
|
350 |
device_map={"": device},
|
351 |
torch_dtype=torch.float16,
|
352 |
)
|
353 |
+
if adapter_model is not None:
|
354 |
+
model = PeftModel.from_pretrained(
|
355 |
+
model,
|
356 |
+
adapter_model,
|
357 |
+
device_map={"": device},
|
358 |
+
torch_dtype=torch.float16,
|
359 |
+
)
|
360 |
else:
|
361 |
model = LlamaForCausalLM.from_pretrained(
|
362 |
base_model, device_map={"": device}, low_cpu_mem_usage=True
|
363 |
)
|
364 |
+
if adapter_model is not None:
|
365 |
+
model = PeftModel.from_pretrained(
|
366 |
+
model,
|
367 |
+
adapter_model,
|
368 |
+
device_map={"": device},
|
369 |
+
)
|
370 |
|
371 |
if not load_8bit:
|
372 |
model.half() # seems to fix bugs for some users.
|