Spaces:
Running
Running
import gradio as gr | |
from fastapi import FastAPI | |
from typing import List | |
from app import Summarizer, Request, Result | |
from app import EN_SENTIMENT_MODEL, EN_SUMMARY_MODEL, RU_SENTIMENT_MODEL, RU_SUMMARY_MODEL | |
from app import DEFAULT_EN_TEXT, DEFAULT_RU_TEXT | |
app = FastAPI() | |
pipe = Summarizer() | |
async def ru_summ_api(request: Request): | |
results = pipe.summarize(request.text, lang='ru') | |
return results | |
async def ru_summ_api(request: Request): | |
results = pipe.summarize(request.text, lang='en') | |
return results | |
with gr.Blocks() as demo: | |
with gr.Row(): | |
with gr.Column(scale=2, min_width=600): | |
en_sum_description=gr.Markdown(value=f"Model for Summary: {EN_SUMMARY_MODEL}") | |
en_sent_description=gr.Markdown(value=f"Model for Sentiment: {EN_SENTIMENT_MODEL}") | |
en_inputs=gr.Textbox(label="en_input", lines=5, value=DEFAULT_EN_TEXT, placeholder=DEFAULT_EN_TEXT) | |
en_lang=gr.Textbox(value='en',visible=False) | |
en_outputs=gr.Textbox(label="en_output", lines=5, placeholder="Summary and Sentiment would be here...") | |
en_inbtn = gr.Button("Proceed") | |
with gr.Column(scale=2, min_width=600): | |
ru_sum_description=gr.Markdown(value=f"Model for Summary: {RU_SUMMARY_MODEL}") | |
ru_sent_description=gr.Markdown(value=f"Model for Sentiment: {RU_SENTIMENT_MODEL}") | |
ru_inputs=gr.Textbox(label="ru_input", lines=5, value=DEFAULT_RU_TEXT, placeholder=DEFAULT_RU_TEXT) | |
ru_lang=gr.Textbox(value='ru',visible=False) | |
ru_outputs=gr.Textbox(label="ru_output", lines=5, placeholder="Здесь будет обобщение и эмоциональный окрас текста...") | |
ru_inbtn = gr.Button("Запустить") | |
en_inbtn.click( | |
pipe.summ, | |
[en_inputs, en_lang], | |
[en_outputs], | |
) | |
ru_inbtn.click( | |
pipe.summ, | |
[ru_inputs, ru_lang], | |
[ru_outputs], | |
) | |
# demo.launch(show_api=False) | |
# mounting at the root path | |
app = gr.mount_gradio_app(app, demo, path="/") |