Spaces:
Running
Running
### Helper function | |
import os, requests, json | |
hf_api_key = os.environ['HF_API_KEY'] | |
ENDPOINT_URL=os.environ['HF_API_SUMMARY_BASE'] | |
#Summarization endpoint | |
def get_completion(inputs, parameters=None): | |
headers = { | |
"Authorization": f"Bearer {hf_api_key}", | |
"Content-Type": "application/json" | |
} | |
payload = { "inputs": inputs } | |
if parameters is not None: | |
payload.update({"parameters": parameters}) | |
response = requests.post(ENDPOINT_URL, | |
headers=headers, | |
data=json.dumps(payload)) | |
return json.loads(response.content.decode("utf-8")) | |
### Gradio App | |
import gradio as gr | |
def summarize(input): | |
output = get_completion(inputs = input, parameters = {"max_length" : 256}) | |
return output[0]['summary_text'] | |
gr.close_all() | |
demo = gr.Interface(fn = summarize, | |
inputs = [gr.Textbox(label = "Text to summarise", lines = 3)], | |
outputs = [gr.Textbox(label = "Summary", lines = 3)], | |
title = "Text Summarisation Demo", | |
description = "Summarise text with `bart-large-cnn` model under the hood!", | |
allow_flagging = "never", | |
) | |
demo.launch() |