Spaces:
Paused
Paused
| import os | |
| import gradio as gr | |
| from utils import get_model_summary, install_flash_attn, authenticate_hf | |
| # Install required package | |
| install_flash_attn() | |
| # Authenticate with Hugging Face | |
| HF_TOKEN = os.getenv("HF_TOKEN") | |
| authenticate_hf(HF_TOKEN) | |
| # Create the Gradio Blocks interface | |
| with gr.Blocks(theme="sudeepshouche/minimalist") as demo: | |
| with gr.Row(): | |
| with gr.Column(): | |
| textbox = gr.Textbox(label="Model Name", placeholder="Enter the model name here OR select example below...", lines=1) | |
| gr.Markdown("### Vision Models") | |
| vision_examples = gr.Examples( | |
| examples=[ | |
| ["google/paligemma-3b-mix-224"], | |
| ["google/paligemma-3b-ft-refcoco-seg-224"], | |
| ["llava-hf/llava-v1.6-mistral-7b-hf"], | |
| ["xtuner/llava-phi-3-mini-hf"], | |
| ["xtuner/llava-llama-3-8b-v1_1-transformers"], | |
| ["vikhyatk/moondream2"], | |
| ["openbmb/MiniCPM-Llama3-V-2_5"], | |
| ["microsoft/Phi-3-vision-128k-instruct"], | |
| ["HuggingFaceM4/idefics2-8b-chatty"], | |
| ["microsoft/llava-med-v1.5-mistral-7b"] | |
| ], | |
| inputs=textbox | |
| ) | |
| gr.Markdown("### Other Models") | |
| other_examples = gr.Examples( | |
| examples=[ | |
| ["dwb2023/mistral-7b-instruct-quantized"], | |
| ["mistralai/Mistral-7B-Instruct-v0.2"], | |
| ["mistralai/Mistral-7B-Instruct-v0.3"], | |
| ["google/gemma-7b"], | |
| ["microsoft/Phi-3-mini-4k-instruct"], | |
| ["meta-llama/Meta-Llama-3-8B"] | |
| ], | |
| inputs=textbox | |
| ) | |
| submit_button = gr.Button("Submit") | |
| with gr.Column(): | |
| output = gr.Textbox(label="Model Architecture", lines=20, placeholder="Model architecture will appear here...", show_copy_button=True) | |
| error_output = gr.Textbox(label="Error", lines=10, placeholder="Exceptions will appear here...", show_copy_button=True) | |
| def handle_click(model_name): | |
| model_summary, error_message = get_model_summary(model_name) | |
| return model_summary, error_message | |
| submit_button.click(fn=handle_click, inputs=textbox, outputs=[output, error_output]) | |
| # Launch the interface | |
| demo.launch() | |