Spaces:
Sleeping
Sleeping
import streamlit as st | |
from persist import persist, load_widget_state | |
import json | |
import requests | |
#from specific_extraction import extract_it | |
# global variable_output | |
def get_cached_data(): | |
# json.load(open('file_TG263.json')) | |
struct_dict = {"Target":["GTV","CTV","PTV"],"Anatomy":["SpinalCord","BrainStem"]} | |
r = requests.get('https://huggingface.co/api/models-tags-by-type') | |
tags_data = r.json() | |
libraries = [x['id'] for x in tags_data['library']] | |
return struct_dict, libraries | |
def main(): | |
cs_body() | |
def cs_body(): | |
struct_dict, libraries = get_cached_data() | |
st.header('Technical Specifications') | |
st.write("Provide an overview of any additional technical specifications for this model") | |
st.markdown('##### Model architecture') | |
st.number_input("Total number of trainable parameters [million]",value=5,key=persist("nb_parameters")) | |
left, middle, right = st.columns(3) | |
nlines = int(left.number_input("Input channels", 0, 20, 1)) | |
for i in range(nlines): | |
type_input = middle.selectbox(f"Input type # {i}", list(struct_dict.keys())) | |
right.selectbox("Input",struct_dict[type_input], key=i, help="From https://aapm.onlinelibrary.wiley.com/doi/pdf/10.1002/acm2.12701") | |
st.text_input("Loss function",placeholder="MSE", key=persist("loss_function")) | |
st.number_input("Batch size",value=1,key=persist("batch_size")) | |
left, right = st.columns(2) | |
nlines = int(left.number_input("Patch dimension", 2, 3, 3)) | |
# cols = st.columns(ncol) | |
for i in range(nlines): | |
right.number_input(f"Dim [px] # {i}", key=i,value=128) | |
arch_fig = st.file_uploader("Figure of the architecture",type=['png','jpg']) | |
if arch_fig is not None: | |
st.image(arch_fig) | |
st.multiselect("Library/Dependencies", libraries, default=[libraries[0]], help="The name of the library this model came from (Ex. pytorch, timm, spacy, keras, etc.). This is usually automatically detected in model repos, so it is not required.", key=persist('libraries')) | |
st.text_input("Hardware recommended", placeholder="GPU 20Gb RAM", key=persist("hardware")) | |
st.number_input("Inference time for recommended hardware [seconds]",value=10, key=persist("inference_time")) | |
st.text_area("Installation / Getting started", placeholder="Installation procedure / code to run inference", key=persist("get_started_code")) | |
if __name__ == '__main__': | |
load_widget_state() | |
main() |