File size: 1,454 Bytes
cfbe98d
 
3f8dd98
 
cfbe98d
 
6d06448
3f8dd98
cfbe98d
 
 
 
3f8dd98
 
 
cfbe98d
 
 
3f8dd98
4e8c8b5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3f8dd98
cfbe98d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import json
import gradio as gr


with open("default_inputs.json", "r") as default_inputs_file:
    DEFAULT_INPUTS = json.load(default_inputs_file)


def set_default_inputs():
    return (DEFAULT_INPUTS["dna_sequence"],
            DEFAULT_INPUTS["latitude"],
            DEFAULT_INPUTS["longitude"])


with gr.Blocks() as demo:
    # Header section
    gr.Markdown("# DNA Identifier Tool")
    gr.Markdown("TODO short description of the tool...")

    with gr.Tab("Genus prediction"):
        # Collect inputs for app (DNA and location)
        with gr.Row():
            inp_dna = gr.Textbox(label="DNA", placeholder="e.g. AACAATGTA... (will be automatically truncated to 660 characters)")
        with gr.Row():
            inp_lat = gr.Textbox(label="Latitude", placeholder="e.g. -3.009083")
            inp_lng = gr.Textbox(label="Longitude", placeholder="e.g. -58.68281")

        with gr.Row():
            btn_run = gr.Button("Run")

            btn_defaults = gr.Button("I'm feeling lucky")
            btn_defaults.click(fn=set_default_inputs, outputs=[inp_dna, inp_lat, inp_lng])
        
        with gr.Row():
            gr.Markdown('Make plot or table for Top 5 species')
    
    with gr.Tab('DNA Embedding Space Similarity Visualizer'):
        gr.Markdown("If the highest genus probability is very low for your DNA sequence, we can still examine the DNA embedding of the sequence in relation to known samples or clues.")

demo.launch()