Spaces:
Build error
Build error
| import cv2 | |
| import pytube | |
| import gradio as gr | |
| from main import predict_mcq | |
| from youtube_transcript_api import YouTubeTranscriptApi as yt | |
| def YtToQuizz(link): | |
| video_id=pytube.extract.video_id(link) | |
| transcript=yt.get_transcript(video_id) | |
| data="" | |
| for text in transcript: | |
| data+=text.get('text') | |
| return data | |
| def put_in_single_list(data): | |
| result=[] | |
| final_result=[] | |
| for i in data: | |
| result.append(i.get("question_statement")) | |
| result.append(i.get("answer")) | |
| result.append(i.get("options")) | |
| final_result.append(result) | |
| return final_result | |
| def MCQGenerator(url): | |
| I_text=YtToQuizz(url) | |
| text={ | |
| "input_text":I_text | |
| } | |
| Mcqs=predict_mcq(text) | |
| data=Mcqs.get('questions') | |
| print(data) | |
| if data is not None: | |
| #final_result=put_in_single_list(data) | |
| statement="" | |
| answer="" | |
| options="" | |
| for mcq in data: | |
| statement+=mcq.get('question_statement')+',' | |
| answer+=mcq.get('answer')+',' | |
| options+=mcq.get('options')[0]+','+mcq.get('options')[1]+','+mcq.get('options')[2]+',' | |
| return statement,answer,options | |
| else: | |
| return "Null","Null","Null" | |
| iface=gr.Interface(fn=MCQGenerator,inputs=[gr.components.Textbox(label="Enter YouTube Link")],outputs=[gr.components.Textbox(label="Question"),gr.components.Textbox(label="Answer"),gr.components.Textbox(label="Options")], | |
| ) | |
| iface.launch(debug=True) |