Inspiration
With the increased consumption of short form videos from the younger generations, we hoped that we could make this consumption of these videos a positive.
What it does
It allows the user to choose a video on any broad topic and then generates relevant clips according to a more specific topic provided by the user. It is able to save the user time and help them learn the specified information efficiently.
How we built it
We built the product with the help of many different python libraries such as moviepy and SentenceTransformers. To start, we use a YouTube API key to generate a list of videos for the user to pick from. Once the user picks the video, we segment it into parts and generate transcripts for them. It then asks the user for a more particular topic. We take that particular topic and create similar sentences using google's generative AI machine - gemini, and then used cosine similarity to pick the most relevant segments. By creating similar sentences, we are able to ensure the cosine similarity understands the topic word has other meanings (i.e. how to find an integral can also be interpreted as area under the curve). Then the program clips the given segments for the user to watch. In order to practice their knowledge and test themselves, it also allows the user to ask questions on the given topic.
Challenges we ran into
Aside from general debugging issues, we ran into issues with cosine similarity while comparing the two strings. Implementing the change from finding similarities between the content of the provided sentences to finding similarities between the meaning of the provided sentences was a challenge that required us to use the help of generative AI. Another challenge which we found was finding a middle ground for segmenting videos, so it would still be comprehensive and wouldn't lose its meaning in the short form video. After a lot of experimenting, we came to a conclusion that these segments should be 25-50 second s long.
Accomplishments that we're proud of
Being able to reach the goals we set for ourself for this hackathon is something that we are certainly proud of. By working as a team, we were all able to make our idea come to fruition through extensive debugging and problem solving. Building a product that we truly believe in and wish to continue to take forward is important to us and doing it in less than 24 hours is something all of us are proud about.
What we learned
We were able to learn a lot more about how APIs can be implemented in the programs through the use of Youtube API and gemini. We were also able to understand more about cosine similarities through our sentence comparison, and we were able to explore video segmentation to use in the cosine comparison. We also gained good experience for further Computer Science and AI projects through our overall growth as a team with brainstorming, planning, presenting. As we grow more comfortable with the implementation of generative AI, we hope to build more projects similar to this one.
What's next for EduClip
Implementing more functionalities and making a changes to make it a more efficient product are the next step in developing EduClip into what we imagine it can be.
Log in or sign up for Devpost to join the conversation.