oucgc1996 commited on
Commit
d4eb073
·
verified ·
1 Parent(s): 304df7d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -29
app.py CHANGED
@@ -1,30 +1,4 @@
1
- import random
2
- import torch
3
- import gradio as gr
4
- from gradio_rangeslider import RangeSlider
5
- import pandas as pd
6
- from utils import create_vocab, setup_seed
7
- from dataset_mlm import get_paded_token_idx_gen, add_tokens_to_vocab
8
- import time
9
- seed = random.randint(0,100000)
10
-
11
- setup_seed(seed)
12
- device = torch.device("cpu")
13
- vocab_mlm = create_vocab()
14
- vocab_mlm = add_tokens_to_vocab(vocab_mlm)
15
- save_path = 'mlm-model-27.pt'
16
- train_seqs = pd.read_csv('C0_seq.csv')
17
- train_seq = train_seqs['Seq'].tolist()
18
- model = torch.load(save_path)
19
- model = model.to(device)
20
-
21
- def temperature_sampling(logits, temperature):
22
- logits = logits / temperature
23
- probabilities = torch.softmax(logits, dim=-1)
24
- sampled_token = torch.multinomial(probabilities, 1)
25
- return sampled_token
26
-
27
- def CTXGen(τ, g_num, length_range):
28
  start, end = length_range
29
  X1 = "X"
30
  X2 = "X"
@@ -114,7 +88,8 @@ def CTXGen(τ, g_num, length_range):
114
  out = pd.DataFrame({'Generated_seq': generated_seqs_FINAL, 'Subtype': cls_pos_all, 'Subtype_probability': cls_probability_all, 'Potency': act_pos_all, 'Potency_probability': act_probability_all, 'random_seed': seed})
115
  out.to_csv("output.csv", index=False, encoding='utf-8-sig')
116
  count += 1
117
- return 'output.csv'
 
118
 
119
  iface = gr.Interface(
120
  fn=CTXGen,
@@ -123,6 +98,9 @@ iface = gr.Interface(
123
  gr.Dropdown(choices=[1,10,100], label="Number of generations"),
124
  RangeSlider(minimum=8, maximum=50, step=1, value=(12, 17), label="Length range")
125
  ],
126
- outputs=["file"]
 
 
 
127
  )
128
  iface.launch()
 
1
+ def CTXGen(τ, g_num, length_range, progress=gr.Progress()):
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  start, end = length_range
3
  X1 = "X"
4
  X2 = "X"
 
88
  out = pd.DataFrame({'Generated_seq': generated_seqs_FINAL, 'Subtype': cls_pos_all, 'Subtype_probability': cls_probability_all, 'Potency': act_pos_all, 'Potency_probability': act_probability_all, 'random_seed': seed})
89
  out.to_csv("output.csv", index=False, encoding='utf-8-sig')
90
  count += 1
91
+ progress(count / gen_num, desc="Generating sequences...")
92
+ return 'output.csv', f"Generated {count} sequences."
93
 
94
  iface = gr.Interface(
95
  fn=CTXGen,
 
98
  gr.Dropdown(choices=[1,10,100], label="Number of generations"),
99
  RangeSlider(minimum=8, maximum=50, step=1, value=(12, 17), label="Length range")
100
  ],
101
+ outputs=[
102
+ gr.File(label="Download generated sequences"),
103
+ gr.Textbox(label="Progress")
104
+ ]
105
  )
106
  iface.launch()