import gradio as gr import transformers import youtube_transcript_api from transformers import pipeline from youtube_transcript_api import YouTubeTranscriptApi from datasets import Dataset summarizer = pipeline("summarization",model="facebook/bart-large-cnn") def greet(link): try: unique_id = link.split("=")[-1] sub = YouTubeTranscriptApi.get_transcript(unique_id) subtitle = " ".join([w['text'] for w in sub]) summary = summarizer(subtitle, max_length=180, min_length=30, do_sample=False) return summary[0]['summary_text'] except: return 'Invalid URL' demo=gr.Interface(fn=greet, inputs="text", outputs="text") if __name__ == "__main__": demo.launch()