rikunarita-2 commited on
Commit
cd8de0d
·
verified ·
1 Parent(s): 95f4708

Update backend/worker.py

Browse files
Files changed (1) hide show
  1. backend/worker.py +5 -9
backend/worker.py CHANGED
@@ -3,10 +3,10 @@ import json
3
  import tempfile
4
  import shutil
5
  import traceback
6
- from .merge_engines.linear import merge_models
7
- from .merge_engines.evolutionary import evolutionary_merge
8
- from .uploader import upload_to_hf
9
- from .memory_manager import estimate_memory, check_memory_safe
10
  import asyncio
11
 
12
  async def run_job_async(job_id: str, params: dict):
@@ -20,7 +20,7 @@ def run_job(job_id, params):
20
  if not check_memory_safe(model_a_id, model_b_id, params.get("evo_params")):
21
  raise RuntimeError("Insufficient memory for this merge. Job rejected.")
22
 
23
- from .model_loader import prepare_model
24
  path_a = prepare_model(params["model_a_source"], params["model_a_id"], params.get("civitai_key"))
25
  path_b = prepare_model(params["model_b_source"], params["model_b_id"], params.get("civitai_key"))
26
 
@@ -33,18 +33,15 @@ def run_job(job_id, params):
33
  dataset_path = params.get("dataset")
34
  evolutionary_merge(path_a, path_b, dataset_path, output_dir, evo_params)
35
  else:
36
- # 線形系マージ(linear, slerp, franken)
37
  merge_type = params.get("merge_type", "linear")
38
  alpha = params.get("linear_alpha", 0.5)
39
  layers_from_a = params.get("franken_layers", None)
40
  merge_models(path_a, path_b, output_dir, method=merge_type,
41
  alpha=alpha, layers_from_a=layers_from_a)
42
 
43
- # HFへアップロード
44
  repo_name = params.get("output_repo_name") or f"merge-{job_id[:8]}"
45
  upload_to_hf(output_dir, repo_name, params["hf_token"])
46
 
47
- # ★ メモリ最適化:不要な出力ディレクトリを削除
48
  if os.path.exists(output_dir):
49
  shutil.rmtree(output_dir)
50
 
@@ -53,6 +50,5 @@ def run_job(job_id, params):
53
  traceback.print_exc()
54
  raise
55
  finally:
56
- # 安全のためトークン情報を破棄
57
  params["hf_token"] = None
58
  params["civitai_key"] = None
 
3
  import tempfile
4
  import shutil
5
  import traceback
6
+ from merge_engines.linear import merge_models
7
+ from merge_engines.evolutionary import evolutionary_merge
8
+ from uploader import upload_to_hf
9
+ from memory_manager import estimate_memory, check_memory_safe
10
  import asyncio
11
 
12
  async def run_job_async(job_id: str, params: dict):
 
20
  if not check_memory_safe(model_a_id, model_b_id, params.get("evo_params")):
21
  raise RuntimeError("Insufficient memory for this merge. Job rejected.")
22
 
23
+ from model_loader import prepare_model
24
  path_a = prepare_model(params["model_a_source"], params["model_a_id"], params.get("civitai_key"))
25
  path_b = prepare_model(params["model_b_source"], params["model_b_id"], params.get("civitai_key"))
26
 
 
33
  dataset_path = params.get("dataset")
34
  evolutionary_merge(path_a, path_b, dataset_path, output_dir, evo_params)
35
  else:
 
36
  merge_type = params.get("merge_type", "linear")
37
  alpha = params.get("linear_alpha", 0.5)
38
  layers_from_a = params.get("franken_layers", None)
39
  merge_models(path_a, path_b, output_dir, method=merge_type,
40
  alpha=alpha, layers_from_a=layers_from_a)
41
 
 
42
  repo_name = params.get("output_repo_name") or f"merge-{job_id[:8]}"
43
  upload_to_hf(output_dir, repo_name, params["hf_token"])
44
 
 
45
  if os.path.exists(output_dir):
46
  shutil.rmtree(output_dir)
47
 
 
50
  traceback.print_exc()
51
  raise
52
  finally:
 
53
  params["hf_token"] = None
54
  params["civitai_key"] = None