Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
File size: 1,086 Bytes
dc944d5 0a632f8 dc944d5 0a632f8 cbe21ec 0a632f8 cbe21ec bc9e4ea 0a632f8 bc9e4ea |
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 |
from typing import Callable, Literal
import gradio as gr
def get_app(
models: list[str],
default_model: str,
src: Callable[[str, str | None], gr.Blocks] | Literal["models"],
accept_token: bool = False,
**kwargs,
) -> gr.Blocks:
def update_model(new_model: str) -> list[gr.Column]:
return [gr.Column(visible=model_name == new_model) for model_name in models]
with gr.Blocks() as demo:
model = gr.Dropdown(label="Select Model", choices=models, value=default_model)
columns = []
for model_name in models:
with gr.Column(visible=model_name == default_model) as column:
gr.load(name=model_name, src=src, accept_token=accept_token, **kwargs)
columns.append(column)
model.change(
fn=update_model,
inputs=model,
outputs=columns,
api_name=False,
queue=False,
)
for k, v in list(demo.fns.items()):
if isinstance(v.api_name, str) and "chat" in v.api_name:
del demo.fns[k]
return demo
|