File size: 1,529 Bytes
4930a1c 9754519 4930a1c |
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 |
import gradio as gr
from gradio_huggingfacehub_search import HuggingfaceHubSearch
from transformers import pipeline
with gr.Blocks() as demo:
gr.Markdown("## π Transformers Pipeline Playground")
gr.Markdown(
"Search for a model on the Hub en explore its output performance on CPU. Some interesting categories are [Text Classification](https://huggingface.co/models?pipeline_tag=image-classification&sort=trending), [Token Classification](https://huggingface.co/models?pipeline_tag=token-classification&sort=trending), [Question Answering](https://huggingface.co/models?pipeline_tag=question-answering&sort=trending) or [Image Classification](https://huggingface.co/models?pipeline_tag=image-classification&sort=trending)."
)
search_in = HuggingfaceHubSearch(
label="Hub Search",
placeholder="Search for a model",
search_type="model",
sumbit_on_select=True,
)
@gr.render(inputs=[search_in], triggers=[search_in.submit])
def get_interface_from_repo(repo_id: str, progress: gr.Progress = gr.Progress()):
try:
progress(0.0, desc="Loading model")
pipe = pipeline(model=repo_id)
progress(1.0, desc="Model loaded")
gr.Interface.from_pipeline(pipe, flagging_mode="never")
except Exception as e:
gr.Markdown(f"This model is not supported. It might be too large or it does not work with Gradio. Try another model. Failed with expection: {e}")
if __name__ == "__main__":
demo.launch()
|