Inspiration
The inspiration for SocialSync came from the growing need for content creators to publish engaging social media posts based on various YouTube videos (be it product launches, announcements or tutorials). It is time consuming to craft content for each social media channel that fits its tone of voice and audience preferences. Moreover, these social media channels are usually optimized for consistency, meaning that content creators should post regularly to achieve the broadest reach and engagement.
What it does
The app converts a YouTube video into social media posts for LinkedIn, X (Twitter), and Instagram using novel Snowflake Arctic large language model.
How we built it
I built SocialSync using Streamlit as front end and Snowflake Arctic LLM via the Replicate API to generate content. I used Embedchain to make YouTube transcript available for LLM using YouTube video loader. The loader utilizes local Chroma vector database to store embeddings of a video transcript. After a video is embedded, the Arctic model is prompted with specific guidance on how to write a post for each social media platform. The app uses session state and @st.experimental_fragment to allow a user to easily re-generate posts if needed.
Challenges we ran into
I've run into a couple challenges while building the project. Firstly, the Streamlit Community Cloud offers limited resources which resulted in the app crashing when trying to convert a larger video.
The second challenge was with parallel processing. The idea was that all three posts will be streaming at the same time. However, I could not achieve this functionality to work properly.
Accomplishments that we're proud of
I'm proud to have created a tool that significantly simplifies the content creation with AI. I'm particularly proud of the app's ability to generate platform-specific content that looks professional and engaging.
What we learned
Throughout the development of SocialSync, I learned how to work with Replicate and Snowflake Arctic LLM. In addition, I learned to use Embedchain to load data from YouTube videos. It was truly an exciting learning experience!
What's next for SocialSync: YouTube videos to social media posts
The most immediate things next for SocialSync would be:
- Get feedback from early users and iterate
- Improve content quality by experimenting with various prompts and LLM chains
- Improve user experience in the app
Built With
- embedchain
- python
- snowflake
- streamlit
Log in or sign up for Devpost to join the conversation.