Spaces:
Sleeping
Sleeping
| import os | |
| import gradio as gr | |
| from transformers import pipeline | |
| # ----------------------------- | |
| # CONFIG | |
| # ----------------------------- | |
| BASE_MODEL_ID = os.getenv("BASE_MODEL_ID", "google/flan-t5-small") | |
| FINETUNED_MODEL_ID = os.getenv("FINETUNED_MODEL_ID", "KB-Infinity-Tech/t5-samsum-mini") # <-- change to your real repo | |
| TASK_PREFIX = os.getenv("TASK_PREFIX", "summarize: ") | |
| HF_TOKEN = os.getenv("HF_TOKEN") | |
| # ----------------------------- | |
| # LOAD MODELS (NEW API) | |
| # ----------------------------- | |
| base_pipe = pipeline( | |
| "text2text-generation", | |
| model=BASE_MODEL_ID, | |
| token=HF_TOKEN, | |
| ) | |
| finetuned_pipe = pipeline( | |
| "text2text-generation", | |
| model=FINETUNED_MODEL_ID, | |
| token=HF_TOKEN, | |
| ) | |
| # ----------------------------- | |
| # FUNCTION | |
| # ----------------------------- | |
| def summarize(text): | |
| prompt = TASK_PREFIX + text | |
| base_output = base_pipe(prompt, max_length=60, min_length=10, do_sample=False) | |
| finetuned_output = finetuned_pipe(prompt, max_length=60, min_length=10, do_sample=False) | |
| base_summary = base_output[0]["generated_text"] | |
| finetuned_summary = finetuned_output[0]["generated_text"] | |
| return base_summary, finetuned_summary | |
| # ----------------------------- | |
| # UI | |
| # ----------------------------- | |
| iface = gr.Interface( | |
| fn=summarize, | |
| inputs=gr.Textbox(lines=8, label="Dialogue"), | |
| outputs=[ | |
| gr.Textbox(label=f"Base ({BASE_MODEL_ID})"), | |
| gr.Textbox(label=f"Fine-tuned ({FINETUNED_MODEL_ID})"), | |
| ], | |
| title="T5 SAMSum Demo", | |
| description="Compare base vs fine-tuned summarization", | |
| ) | |
| # ----------------------------- | |
| # RUN | |
| # ----------------------------- | |
| if __name__ == "__main__": | |
| iface.launch() | |