Spaces:
Runtime error
Runtime error
import gradio as gr | |
from langchain.document_loaders import UnstructuredURLLoader | |
import os | |
from langchain import PromptTemplate, HuggingFaceHub, LLMChain | |
from gtts import gTTS | |
from IPython.display import Audio | |
# from dotenv import load_dotenv | |
# load_dotenv() # to load all the env variables | |
api_key = os.getenv("HUGGINGFACE_API_TOKEN") | |
os.environ['HUGGINGFACEHUB_API_TOKEN'] = api_key | |
def get_summary_from_url(url): | |
loaders = UnstructuredURLLoader(urls=[url]) | |
data = loaders.load() | |
question = data[0] | |
template = """{question}""" | |
prompt = PromptTemplate(template=template, input_variables=["question"]) | |
llm_chain = LLMChain(prompt=prompt, | |
llm=HuggingFaceHub(repo_id="Mr-Vicky-01/conversational_sumarization", | |
model_kwargs={"max_length":100, | |
"max_new_tokens":100, | |
"do_sample": False})) | |
answer = llm_chain.run(question) | |
return answer | |
def text_to_speech(text, language='en'): | |
tts = gTTS(text=text, lang=language) | |
tts.save("output.mp3") | |
return "output.mp3" | |
def summarize_and_convert_to_audio(url): | |
summary = get_summary_from_url(url) | |
audio_file = text_to_speech(summary) | |
return audio_file | |
example = [ | |
["https://en.wikipedia.org/wiki/Vijay_(actor)"], | |
["https://en.wikipedia.org/wiki/Sam_Altman"], | |
["https://timesofindia.indiatimes.com/india/air-india-sacks-pilot-found-drunk-after-operating-overseas-flight/articleshow/108829830.cms"] | |
] | |
iface = gr.Interface(fn=summarize_and_convert_to_audio, inputs="text", outputs="audio", title="Text Summarization & Audio Generation", description="Enter the URL of the article to summarize and convert to audio.", examples=example) | |
iface.launch() |