Spaces:
Running
Running
import gradio as gr | |
def get_process_config(): | |
return { | |
"process.numactl": gr.Checkbox( | |
value=True, | |
label="process.numactl", | |
info="Runs the model with numactl", | |
), | |
"process.numactl_kwargs": gr.Textbox( | |
label="process.numactl_kwargs", | |
value="{'cpunodebind': 0, 'membind': 0}", | |
info="Additional python dict of kwargs to pass to numactl", | |
), | |
} | |
def get_inference_config(): | |
return { | |
"inference.warmup_runs": gr.Slider( | |
step=1, | |
value=10, | |
minimum=0, | |
maximum=10, | |
label="inference.warmup_runs", | |
info="Number of warmup runs", | |
), | |
"inference.duration": gr.Slider( | |
step=1, | |
value=10, | |
minimum=0, | |
maximum=10, | |
label="inference.duration", | |
info="Minimum duration of the benchmark in seconds", | |
), | |
"inference.iterations": gr.Slider( | |
step=1, | |
value=10, | |
minimum=0, | |
maximum=10, | |
label="inference.iterations", | |
info="Minimum number of iterations of the benchmark", | |
), | |
"inference.latency": gr.Checkbox( | |
value=True, | |
label="inference.latency", | |
info="Measures the latency of the model", | |
), | |
"inference.memory": gr.Checkbox( | |
value=True, | |
label="inference.memory", | |
info="Measures the peak memory consumption", | |
), | |
"inference.input_shapes": gr.Textbox( | |
label="inference.input_shapes", | |
value="{'batch_size': 2, 'sequence_length': 16}", | |
info="Input shapes to use for the benchmark", | |
), | |
"inference.generate_kwargs": gr.Textbox( | |
label="inference.generate_kwargs", | |
value="{'max_new_tokens': 32, 'min_new_tokens': 32}", | |
info="Additional python dict of kwargs to pass to the generate function", | |
), | |
} | |
def get_pytorch_config(): | |
return { | |
"pytorch.torch_dtype": gr.Dropdown( | |
value="float32", | |
label="pytorch.torch_dtype", | |
choices=["bfloat16", "float16", "float32", "auto"], | |
info="The dtype to use for the model", | |
), | |
"pytorch.torch_compile": gr.Checkbox( | |
value=False, | |
label="pytorch.torch_compile", | |
info="Compiles the model with torch.compile", | |
), | |
} | |
def get_openvino_config(): | |
return { | |
"openvino.export": gr.Checkbox( | |
value=True, | |
label="openvino.export", | |
info="Exports the model to OpenVINO", | |
), | |
"openvino.use_cache": gr.Checkbox( | |
value=True, | |
label="openvino.use_cache", | |
info="Uses the decoder with cache if available", | |
), | |
"openvino.use_merged": gr.Checkbox( | |
value=True, | |
label="openvino.use_merged", | |
info="Uses merged model if available", | |
), | |
"openvino.reshape": gr.Checkbox( | |
value=False, | |
label="openvino.reshape", | |
info="Reshapes the model to the input shape", | |
), | |
"openvino.half": gr.Checkbox( | |
value=False, | |
label="openvino.half", | |
info="Converts model to half precision", | |
), | |
} | |