kylekylekyle/abstractsum
0
1import os2import io3from IPython.display import Image, display, HTML4from PIL import Image5import base64 6from dotenv import load_dotenv, find_dotenv7_ = load_dotenv(find_dotenv()) # read local .env file8hf_api_key = os.environ['HF_API_KEY']9 10# Helper function11import requests, json12 13#Summarization endpoint14def get_completion(inputs, parameters=None,ENDPOINT_URL=os.environ['HF_API_SUMMARY_BASE']): 15 headers = {16 "Authorization": f"Bearer {hf_api_key}",17 "Content-Type": "application/json"18 }19 data = { "inputs": inputs }20 if parameters is not None:21 data.update({"parameters": parameters})22 response = requests.request("POST",23 ENDPOINT_URL, headers=headers,24 data=json.dumps(data)25 )26 return json.loads(response.content.decode("utf-8"))27 28import gradio as gr29def summarize(input):30 output = get_completion(input)31 return output[0]['summary_text']32 33gr.close_all()34demo = gr.Interface(fn=summarize, inputs=[gr.Textbox(label="Text to Summarize", lines=6)], 35 outputs=[gr.Textbox("Result", lines=3)], 36 title="Text Summarization with distilbart-cnn",37 description="Summarize the text of Research Abstracts!",38 )39demo.launch(share=True)40 