raylim commited on
Commit
c53a6f1
·
1 Parent(s): fe8b721

use optimus pkl

Browse files
Files changed (2) hide show
  1. app.py +5 -1
  2. data/paladin_model_map.csv +0 -133
app.py CHANGED
@@ -6,6 +6,7 @@ import pandas as pd
6
  from PIL import Image
7
  import torch
8
  import spaces
 
9
 
10
  from mussel.utils import get_features, segment_tissue
11
  from mussel.models import ModelType
@@ -14,14 +15,17 @@ from paladin_inference import run_paladin
14
 
15
  NUM_WORKERS = 0
16
 
 
17
  GIT_TOKEN = os.environ.get("GH_TOKEN")
18
  subprocess.run(f"pip install git+https://{GIT_TOKEN}@github.com/pathology-data-mining/paladin.git@dev", shell=True)
19
 
 
 
20
 
21
  @spaces.GPU(duration=300)
22
  def get_features_and_infer(coords, slide_path, attrs, site_type):
23
  use_gpu = torch.cuda.is_available()
24
- features, _ = get_features(coords, slide_path, attrs, model_type=ModelType.OPTIMUS, use_gpu=use_gpu, batch_size=256, num_workers=NUM_WORKERS)
25
 
26
  # Step 3: Run Aeon to predict histology
27
  aeon_results, _ = run_aeon(
 
6
  from PIL import Image
7
  import torch
8
  import spaces
9
+ from huggingface_hub import snapshot_download
10
 
11
  from mussel.utils import get_features, segment_tissue
12
  from mussel.models import ModelType
 
15
 
16
  NUM_WORKERS = 0
17
 
18
+ # Install Paladin from GitHub
19
  GIT_TOKEN = os.environ.get("GH_TOKEN")
20
  subprocess.run(f"pip install git+https://{GIT_TOKEN}@github.com/pathology-data-mining/paladin.git@dev", shell=True)
21
 
22
+ # Download pre-trained models if not present
23
+ local_repo_path = snapshot_download(repo_id="PDM-Group/paladin-aeon-models", local_dir="data")
24
 
25
  @spaces.GPU(duration=300)
26
  def get_features_and_infer(coords, slide_path, attrs, site_type):
27
  use_gpu = torch.cuda.is_available()
28
+ features, _ = get_features(coords, slide_path, attrs, model_type=ModelType.OPTIMUS, model_path="data/optimus.pkl", use_gpu=use_gpu, batch_size=256, num_workers=NUM_WORKERS)
29
 
30
  # Step 3: Run Aeon to predict histology
31
  aeon_results, _ = run_aeon(
data/paladin_model_map.csv DELETED
@@ -1,133 +0,0 @@
1
- histology,target_name,model_path
2
- AASTR,IDH1.R132H,data/paladin/xf9lhkpd.epoch=12-step=13.model.pkl
3
- AASTR,ATRX_TRUNC,data/paladin/nghmtwqq.epoch=12-step=13.model.pkl
4
- AASTR,ATRX_ONCOGENIC,data/paladin/j3pgp96i.epoch=14-step=15.model.pkl
5
- ADNOS,Del_17p,data/paladin/x474gdo3.epoch=16-step=51.model.pkl
6
- ASTR,TP53_hotspot,data/paladin/ed73u1uo.epoch=7-step=16.model.pkl
7
- ASTR,IDH1.R132H,data/paladin/7cxzdxfb.epoch=10-step=22.model.pkl
8
- ASTR,ATRX_ONCOGENIC,data/paladin/gq60pnxn.epoch=9-step=20.model.pkl
9
- ASTR,ATRX_TRUNC,data/paladin/0frn4tny.epoch=9-step=20.model.pkl
10
- ASTR,TP53_ONCOGENIC,data/paladin/ww18g380.epoch=17-step=36.model.pkl
11
- ASTR,IDH1_hotspot,data/paladin/uhfe7p8r.epoch=16-step=34.model.pkl
12
- ASTR,IDH1_ONCOGENIC,data/paladin/3ar8pu9i.epoch=16-step=34.model.pkl
13
- ASTR,RTK_RAS_PATHWAY,data/paladin/u91fy5r0.epoch=7-step=16.model.pkl
14
- BLCA,Del_6q,data/paladin/eqtpu2m2.epoch=6-step=91.model.pkl
15
- BLCA,TP53_PATHWAY,data/paladin/jaoqa2w3.epoch=7-step=104.model.pkl
16
- BLCA,RB1_TRUNC,data/paladin/v5yz6ndf.epoch=7-step=104.model.pkl
17
- BLCA,RB1_ONCOGENIC,data/paladin/54uvrvff.epoch=6-step=91.model.pkl
18
- BLCA,FGFR3_ONCOGENIC,data/paladin/jchzcaq5.epoch=4-step=65.model.pkl
19
- CCRCC,Del_14q,data/paladin/kr2wtldy.epoch=13-step=56.model.pkl
20
- COAD,NKX3-1_HomDel,data/paladin/cwh3r34l.epoch=12-step=104.model.pkl
21
- COAD,NKX3-1_ONCOGENIC,data/paladin/ji4ankxk.epoch=12-step=104.model.pkl
22
- COAD,Amp_10p,data/paladin/9lt8fu1i.epoch=17-step=144.model.pkl
23
- COAD,Del_5q,data/paladin/e3owivcb.epoch=11-step=96.model.pkl
24
- COAD,BRAF_hotspot,data/paladin/gi1mikgg.epoch=19-step=300.model.pkl
25
- COAD,Amp_13q,data/paladin/5fr6k4aq.epoch=2-step=45.model.pkl
26
- COAD,Amp_17q,data/paladin/gs0nknp6.epoch=17-step=270.model.pkl
27
- COAD,Del_18p,data/paladin/i9f8ace7.epoch=6-step=105.model.pkl
28
- COAD,SRC_Amp,data/paladin/nz6n2i3j.epoch=13-step=210.model.pkl
29
- COAD,Del_18q,data/paladin/46zyn9jd.epoch=5-step=48.model.pkl
30
- COAD,ASXL1_Amp,data/paladin/jtjvnzv8.epoch=13-step=210.model.pkl
31
- COAD,Del_21p,data/paladin/6m0qjb6j.epoch=16-step=255.model.pkl
32
- COAD,KRAS_hotspot,data/paladin/9y9vj6vn.epoch=5-step=90.model.pkl
33
- COAD,Del_21p,data/paladin/qih446gc.epoch=16-step=136.model.pkl
34
- COAD,DNMT3B_Amp,data/paladin/3cb7sra7.epoch=14-step=225.model.pkl
35
- COAD,SRC_ONCOGENIC,data/paladin/l4v77tuf.epoch=13-step=210.model.pkl
36
- COAD,Del_18q,data/paladin/5x3oo7bu.epoch=6-step=105.model.pkl
37
- COAD,Del_5q,data/paladin/aupfdkmm.epoch=8-step=135.model.pkl
38
- COAD,TOP1_Amp,data/paladin/llb4wrf5.epoch=17-step=270.model.pkl
39
- COAD,DNMT3B_ONCOGENIC,data/paladin/84q4qtj2.epoch=16-step=238.model.pkl
40
- COAD,Amp_20q,data/paladin/lvgc5hf4.epoch=9-step=80.model.pkl
41
- COAD,Amp_20q,data/paladin/3z7m1yvu.epoch=3-step=60.model.pkl
42
- COAD,BRAF.V600E,data/paladin/hszhjtww.epoch=19-step=300.model.pkl
43
- COAD,MSI_TYPE,data/paladin/7zkj9sa3.epoch=10-step=187.model.pkl
44
- COADREAD,MSI_TYPE,data/paladin/ef9g2g05.epoch=19-step=80.model.pkl
45
- GBM,TERT_ONCOGENIC,data/paladin/d2nctcc7.epoch=3-step=24.model.pkl
46
- GBM,EGFR_Amp,data/paladin/3ym64o1g.epoch=12-step=78.model.pkl
47
- GBM,EGFR_SV,data/paladin/c0piw4ym.epoch=14-step=90.model.pkl
48
- GIST,EPIGENETIC_PATHWAY,data/paladin/imjphv1j.epoch=17-step=72.model.pkl
49
- GIST,Del_10q,data/paladin/9c1quhjf.epoch=14-step=30.model.pkl
50
- GIST,Del_1p,data/paladin/711sspdl.epoch=7-step=32.model.pkl
51
- GIST,CELL_CYCLE_PATHWAY,data/paladin/tbty48me.epoch=13-step=56.model.pkl
52
- GIST,CDKN2B_HomDel,data/paladin/bvo5yd3x.epoch=19-step=80.model.pkl
53
- GIST,CDKN2B_ONCOGENIC,data/paladin/hchh1kxy.epoch=19-step=80.model.pkl
54
- GIST,KIT_ONCOGENIC,data/paladin/5qv1l577.epoch=16-step=68.model.pkl
55
- GIST,Del_9q,data/paladin/js5kwd8h.epoch=14-step=60.model.pkl
56
- HCC,Del_8p,data/paladin/414aigjv.epoch=13-step=28.model.pkl
57
- HGSOC,ZRSR2_HomDel,data/paladin/f49bti0v.epoch=18-step=152.model.pkl
58
- HGSOC,ZRSR2_ONCOGENIC,data/paladin/w65puu1d.epoch=18-step=152.model.pkl
59
- IDC,Del_14q,data/paladin/0332pa6g.epoch=4-step=80.model.pkl
60
- IDC,NBN_Amp,data/paladin/3dckgf7z.epoch=19-step=320.model.pkl
61
- IDC,Amp_10p,data/paladin/86dw519k.epoch=8-step=144.model.pkl
62
- IDC,TP53_PATHWAY,data/paladin/nnpm1j02.epoch=5-step=96.model.pkl
63
- IDC,Del_5q,data/paladin/qmd3pzkq.epoch=5-step=96.model.pkl
64
- IDC,TP53_ONCOGENIC,data/paladin/vreyb1om.epoch=6-step=112.model.pkl
65
- IDC,Amp_9p,data/paladin/03ag726b.epoch=18-step=304.model.pkl
66
- LUAD,ALK_ONCOGENIC,data/paladin/ovyxd2ob.epoch=19-step=520.model.pkl
67
- LUAD,CDKN2A_HomDel,data/paladin/jjzra532.epoch=8-step=243.model.pkl
68
- LUAD,Del_8p,data/paladin/50r2qwax.epoch=4-step=135.model.pkl
69
- LUAD,ALK_fusion,data/paladin/9yhryzl3.epoch=19-step=540.model.pkl
70
- LUAD,EGFR.L858R,data/paladin/m5ryhg9a.epoch=10-step=297.model.pkl
71
- LUAD,Amp_14q,data/paladin/ngn9k9im.epoch=10-step=297.model.pkl
72
- LUAD,Del_10q,data/paladin/zb1foppw.epoch=15-step=432.model.pkl
73
- LUAD,TP53_PATHWAY,data/paladin/1h5j6lcv.epoch=3-step=108.model.pkl
74
- LUAD,Del_19p,data/paladin/eqkh5ixz.epoch=7-step=216.model.pkl
75
- LUAD,STK11_TRUNC,data/paladin/k60w4up0.epoch=12-step=208.model.pkl
76
- LUAD,EGFR_hotspot,data/paladin/8chbkvr2.epoch=3-step=108.model.pkl
77
- LUAD,STK11_ONCOGENIC,data/paladin/0g4nz14y.epoch=6-step=112.model.pkl
78
- LUAD,Del_21q,data/paladin/f1vh8j1d.epoch=11-step=324.model.pkl
79
- LUAD,Amp_1q,data/paladin/nkik9rcn.epoch=6-step=189.model.pkl
80
- LUAD,NRF2_PATHWAY,data/paladin/yqlfdrvs.epoch=8-step=243.model.pkl
81
- LUAD,Del_21p,data/paladin/3szdaukp.epoch=16-step=459.model.pkl
82
- LUAD,STK11_ONCOGENIC,data/paladin/uanm5qpb.epoch=6-step=189.model.pkl
83
- LUSC,Del_10q,data/paladin/gbsuatlf.epoch=12-step=65.model.pkl
84
- LUSC,Del_5q,data/paladin/otxp4y9q.epoch=15-step=80.model.pkl
85
- LUSC,Del_3p,data/paladin/1gkyhld8.epoch=8-step=45.model.pkl
86
- NBL,Del_Xp,data/paladin/7y3lp7vw.epoch=14-step=45.model.pkl
87
- NBL,Del_Xq,data/paladin/ludvrs24.epoch=19-step=60.model.pkl
88
- NBL,Amp_17q,data/paladin/qia84b7i.epoch=11-step=36.model.pkl
89
- NBL,RTK_RAS_PATHWAY,data/paladin/wyd7ada7.epoch=0-step=2.model.pkl
90
- NBL,MYCN_Amp,data/paladin/k88gw2io.epoch=14-step=45.model.pkl
91
- NBL,MYCN_ONCOGENIC,data/paladin/sp7lpt88.epoch=14-step=45.model.pkl
92
- NBL,MYC_PATHWAY,data/paladin/1onmwcqf.epoch=11-step=36.model.pkl
93
- PAAD,Del_12p,data/paladin/cofs6tb2.epoch=14-step=210.model.pkl
94
- PAAD,Del_15q,data/paladin/4366o7so.epoch=19-step=280.model.pkl
95
- PAAD,MTAP_ONCOGENIC,data/paladin/h14fuggs.epoch=13-step=70.model.pkl
96
- PAAD,CDKN2B_ONCOGENIC,data/paladin/c9onh7cc.epoch=5-step=54.model.pkl
97
- PAAD,CDKN2B_HomDel,data/paladin/e6y1suye.epoch=5-step=54.model.pkl
98
- PAAD,CDKN2A_HomDel,data/paladin/yci9dso2.epoch=5-step=54.model.pkl
99
- PAAD,Del_21p,data/paladin/p3sgty9x.epoch=17-step=162.model.pkl
100
- PANET,Amp_7q,data/paladin/8w0pcfqg.epoch=3-step=8.model.pkl
101
- PANET,Amp_14q,data/paladin/kvqfszzv.epoch=11-step=24.model.pkl
102
- PANET,Amp_17q,data/paladin/n05xwpfv.epoch=1-step=4.model.pkl
103
- PANET,Del_2q,data/paladin/iway7gvk.epoch=19-step=40.model.pkl
104
- PANET,Del_1q,data/paladin/nnv3biwl.epoch=14-step=30.model.pkl
105
- PANET,Del_10p,data/paladin/ivcnueik.epoch=15-step=32.model.pkl
106
- PANET,Del_3p,data/paladin/i18cwtml.epoch=10-step=22.model.pkl
107
- PANET,Del_10q,data/paladin/lhdb8n6t.epoch=15-step=32.model.pkl
108
- PANET,Del_2p,data/paladin/simlsmym.epoch=18-step=38.model.pkl
109
- PANET,Del_3q,data/paladin/z9pxdil3.epoch=10-step=22.model.pkl
110
- PRAD,Amp_11q,data/paladin/rlppqzob.epoch=19-step=300.model.pkl
111
- PRAD,Del_15q,data/paladin/8y9cu8ti.epoch=5-step=90.model.pkl
112
- PRAD,Amp_7q,data/paladin/4z9wd7oh.epoch=15-step=240.model.pkl
113
- PRAD,SPOP_hotspot,data/paladin/tyqig7ov.epoch=14-step=225.model.pkl
114
- SARCNOS,TP53_ONCOGENIC,data/paladin/xvpxs12a.epoch=12-step=39.model.pkl
115
- SKCM,Del_10p,data/paladin/9dadxrr4.epoch=11-step=60.model.pkl
116
- SKCM,Del_10q,data/paladin/f6l6c2v8.epoch=9-step=50.model.pkl
117
- STAD,MSI_TYPE,data/paladin/kmi9hl2z.epoch=19-step=80.model.pkl
118
- THPA,BRAF_hotspot,data/paladin/u0ec035p.epoch=13-step=28.model.pkl
119
- UEC,ARID1A_ONCOGENIC,data/paladin/hrn4ehsm.epoch=11-step=108.model.pkl
120
- UEC,Amp_10q,data/paladin/0kh0uesc.epoch=10-step=99.model.pkl
121
- UEC,CTNNB1_ONCOGENIC,data/paladin/rmg2u8mw.epoch=12-step=26.model.pkl
122
- UEC,CTNNB1_hotspot,data/paladin/0y5oa83k.epoch=13-step=28.model.pkl
123
- UEC,KRAS_ONCOGENIC,data/paladin/wc3cv24o.epoch=12-step=117.model.pkl
124
- UEC,Amp_10p,data/paladin/cpq494o0.epoch=18-step=171.model.pkl
125
- UEC,TP53_hotspot,data/paladin/52dr57pb.epoch=14-step=135.model.pkl
126
- UEC,TGF_BETA_PATHWAY,data/paladin/8uxv3vc8.epoch=17-step=162.model.pkl
127
- UEC,Amp_8q,data/paladin/uzp4fgfa.epoch=14-step=135.model.pkl
128
- UEC,Amp_1q,data/paladin/ce6wob99.epoch=14-step=135.model.pkl
129
- UEC,MSI_TYPE,data/paladin/zrsfn6kz.epoch=13-step=126.model.pkl
130
- UEC,CTNNB1_ONCOGENIC,data/paladin/lrfqme6d.epoch=11-step=108.model.pkl
131
- UEC,CTNNB1_hotspot,data/paladin/hf3samzm.epoch=13-step=126.model.pkl
132
- USC,Del_16q,data/paladin/eq6jer0f.epoch=9-step=30.model.pkl
133
- UTUC,FGFR3_hotspot,data/paladin/qgajjknw.epoch=10-step=33.model.pkl