from transformers import pipeline from youtube_transcript_api import YouTubeTranscriptApi def summarize(youtube_video): video_id = youtube_video.split("=")[1] transcript = YouTubeTranscriptApi.get_transcript(video_id) summarizer = pipeline('summarization') result = "" for i in transcript: result += ' ' + i['text'] num_iters = int(len(result)/1000) summarized_text = [] for i in range(0, num_iters + 1): start = 0 start = i * 1000 end = (i + 1) * 1000 print("input text \n" + result[start:end]) out = summarizer(result[start:end]) out = out[0] out = out['summary_text'] print("Summarized text\n"+out) summarized_text.append(out) inp = result.replace('\n','') summary = summarizer(inp) return summary import gradio as gr grad= gr.Interface(fn=summarize, inputs="text", outputs="text") grad.launch()