arabicPhilo / app.py
methodya's picture
Update app.py
5ff0d79 verified
import gradio as gr
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
# ุชู‡ูŠุฆุฉ ุงู„ู†ู…ูˆุฐุฌ
model = AutoModelForSeq2SeqLM.from_pretrained("methodya/arabic-summarizer-philosophy")
tokenizer = AutoTokenizer.from_pretrained("methodya/arabic-summarizer-philosophy")
def summarize(text, max_length=150, num_beams=7, length_penalty=0.8):
# ุชุญูˆูŠู„ ุงู„ู‚ูŠู… ุฅู„ู‰ ุงู„ู†ูˆุน ุงู„ู…ู†ุงุณุจ
max_length = int(max_length)
num_beams = int(num_beams)
length_penalty = float(length_penalty)
# ุชุฌู‡ูŠุฒ ุงู„ุจูŠุงู†ุงุช ู„ู„ู†ู…ูˆุฐุฌ
inputs = tokenizer(text, return_tensors="pt", max_length=2048, truncation=True)
outputs = model.generate(
**inputs,
max_length=max_length,
num_beams=num_beams,
length_penalty=length_penalty,
early_stopping=True
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
interface = gr.Interface(
fn=summarize,
inputs=[
gr.Textbox(lines=8, label="ุงู„ู†ุต", elem_classes="rtl-text"),
gr.Slider(50, 250, value=150, label="ุทูˆู„ ุงู„ุชูˆู„ูŠุฏ"),
gr.Slider(1, 10, value=7, step=1, label="ุฏู‚ุฉ ุงู„ุชูˆู„ูŠุฏ (num_beams)"),
gr.Slider(0.1, 2.0, value=0.8, step=0.1, label="ู…ุนุงู…ู„ ุงู„ุทูˆู„")
],
outputs=gr.Textbox(label="ุงู„ู†ุต ุงู„ู…ูˆู„ู‘ูŽุฏ", elem_classes="rtl-text"),
title="ุชูˆู„ูŠุฏ ุงู„ู†ุตูˆุต ุงู„ูู„ุณููŠุฉ",
theme=gr.themes.Soft(), # ุงุญุชูุธ ุจุงู„ุซูŠู… ุงู„ู†ุงุนู… ูƒู‚ุงุนุฏุฉ
css="file.css" # ู‡ู†ุง ุณู†ุฑุจุทู‡ ุจู…ู„ู ุงู„ู€ CSS ุงู„ุฎุงุฑุฌูŠ
)
interface.launch()