DEV Community

Cover image for GenLearn - Your Personalized Learning Assistant!
Aravind V for AWS Community Builders

Posted on • Originally published at blog.exploringserverless.com

GenLearn - Your Personalized Learning Assistant!

๐Ÿš€ Introducing: GenLearn โ€“ Your Personalized Learning Assistant! ๐Ÿ“š
Built on PartyRock Playground during #partyrock-hackathon

GenLearn - Your Personalised Learning Assistant!

Get Started with GenLearn today and unlock your full learning potential! ๐ŸŒ

App link
https://partyrock.aws/u/AravindVCyber/2N3IdneP6/GenLearn-Your-Personalised-Learning-Assistant!

Snapshot
https://partyrock.aws/u/AravindVCyber/2N3IdneisP6/GenLearn-Your-Personalised-Learning-Assistant!/snapshot/qDBzjmXhW

Try some experiment with this and share your snapshots or create your own app with Partyrock

Post in Community.AWS

Community | GenLearn - Your Personalised Learning Assistant!

GenLearn helps users learn, summarise, and present any topic with presentation slide notes in language of choice with links to Search, YouTube, Wikipedia, Images to unlock learning possibilities

favicon community.aws

Do like and share my hackathon submission in DEVPOST

GenLearn - Personalised Learning Assistant | Devpost

GenLearn helps users learn, summarise, and present any topic with presentation slide notes in language of choice with links to Search, YouTube, Wikipedia, and Images to unlock learning possibilities

devpost.com

GenLearn

GenLearn helps users learn, summarise, and present any topic with presentation slide notes in language of choice with links to Search, YouTube, Wikipedia, and Images to unlock learning possibilities
Are you tired of spending countless hours scouring through textbooks and online resources to grasp a concept or prepare a presentation? Look no further! GenLearn is here to revolutionize your learning experience.
Say goodbye to tedious research and hello to efficient, personalised learning with GenLearn. Join us in shaping the future of education and empowerment. Let's learn smarter, together! ๐ŸŒŸ

Problem Addressed:

In today's fast-paced world, individuals often struggle to find the time and resources needed to effectively learn and present information. Traditional methods of learning can be time-consuming and inefficient, leaving learners feeling overwhelmed and uninspired.
Solution:
GenLearn offers a comprehensive solution to this problem by leveraging generative technologies to create personalised learning materials and presentation slide notes. By harnessing the power of AI, users can quickly access curated content tailored to their learning preferences, saving time and effort.

Key Features:

  • Personalised Learning: Tailored learning materials and presentation slide notes on any topic. inputs
  • Multi-Language Support: Content available in your preferred language for global accessibility.
  • Actionable Links: Direct access to Google Search, YouTube, Wikipedia, and Images for further exploration.
  • Efficiency: Streamlined learning process, allowing users to focus on understanding and application rather than searching for information.
  • Assistant: Bot is ready to clarify further on the topic requested chat

Interesting Hacks:

I also used some simple hacks to let the LLM know how to format the search links under different languages, and the results are amazing, with a few snippets of code like the below the LLM is able to understand how to generate links

import wikipedia

def generate_google_search_link (query):
    return f"https://www.google.com/search?q={'+'.join(query.split())}"

def generate_google_image_search_url (query):
    base_url = "https://www.google.com/search" 
    params = { "tbm": "isch", "q":query }
    url = base_url + "?" + "&".join([f"{key}={value}" for key, value in params.items()]) 
    return url 

def generate_youtube_links(query, num_links=1): 
    youtube_links = [] 
    for i in range(1, num_links + 1): 
        youtube_links.append(f"[YouTube Video {i}](https://www.youtube.com/results?search_query={'+'.join(query.split())}&page={i})") 
    return youtube_links 

def generate_wikipedia_links(query, num_links=1): 
    wikipedia_links = [] 
    search_results = wikipedia.search(query, results=num_links) 
    for result in search_results: 
         page_title = wikipedia.page(result).title 
         wikipedia_links.append(f"[{page_title}](https://en.wikipedia.org/wiki/{'_'.join(page_title.split())})") 
    return wikipedia_links

def generate_combo_links(query, google_links=1, youtube_links=1, wikipedia_links=1): 
    google_links = generate_google_search_link(query) 
    google_images_link = generate_google_image_search_url(query) 
    youtube_links = generate_youtube_links(query, youtube_links) 
    wikipedia_links = generate_wikipedia_links(query, wikipedia_links) 
    combo_links = { "Google Search": google_links, "Google Images": google_images_link, "YouTube Videos": youtube_links, "Wikipedia Pages": wikipedia_links } 
    return combo_links

Enter fullscreen mode Exit fullscreen mode

suggested readings as hyperlinks

suggested links

Notes on the developmental journey for the hackathon.

Inspiration

In today's fast-paced world, individuals often struggle to find the time and resources needed to effectively learn and present information. Traditional methods of learning can be time-consuming and inefficient, leaving learners feeling overwhelmed and uninspired.

What it does

Whether you're a student, a professional, or a lifelong learner, GenLearn adapts to your needs, providing concise summaries and engaging content in your preferred language.
But that's not all! With actionable links to Google Search, YouTube, Wikipedia, and Images, you'll have a wealth of additional resources at your fingertips, enriching your learning journey like never before.
Say goodbye to tedious research and hello to efficient, personalised learning with GenLearn. Join us in shaping the future of education and empowerment. Let's learn smarter, together! ๐ŸŒŸ

How we built it

Our app utilises cutting-edge generative solutions to create tailored learning materials and presentation slide notes on any topic you desire.
We have used Amazon partyrock playground to build this app, which helped us with easy access to generative llm models like Claude and Stability AI

Challenges we ran into

While connecting widget, we occasionally hand trouble in getting the required out in relevant format and under the current scope, eventually we iterated this using some prompt engineering to get around with the solution.
Had some challenges in getting the hyperlinks and eventually we mastered getting the links with the right model

Accomplishments that we're proud of

I think this is only the tip of the iceberg, if we could do this and help students with an interactive experience for students to learn and personalise the content in their language and summaries it with partyrock, it opens a lot of possibilities.

What we learned

When we started it is was giving output more similar to a usual ChatGpt query, but when we linked the various widgets, we managed to get a interactive experience. More over we started with text outputs, and later converted it to markdown and ensured to use emojis, to make the students feel cool. Besides which we went ahead and try to generate web search link to help student explore beyond and help opened the generated content to reference. Language translation would also be a great experience for students

What's next for Personalised Learning Assistant

  • I believe we could generate actionable links could help students reference and explore wide content from the web.
  • At the same time they could also be used to track user events to further interact with the playground
  • Also currently the playground does not support additional input component types, and input files/video. This could open more possibilities to make the interactive experience cool
  • It could as well in future support audio or video playback, and it could really make the learning experience engaging
  • Also the app is still using open pre-learned material, hopefully in future we could use RAG feeds to help industrial use cases make similar playground to benefits their users with relevant and appropriate data, more personalisation.

Other Features and Images:

Fun Facts for Users on Topic
facts in english

Easy summary in the form of slides for presentation or notes
summarised notes in the form of slides 1

slide 1
summarised notes in the form of slides 2

slide 2

Brief explanation on the topic in the requested language

brief explanation in french

Casual image generation based on topic
casual image

Get Started with GenLearn today and unlock your full learning potential! ๐ŸŒ

App link
https://partyrock.aws/u/AravindVCyber/2N3IdneP6/GenLearn-Your-Personalised-Learning-Assistant!

Snapshot
https://partyrock.aws/u/AravindVCyber/2N3IdneisP6/GenLearn-Your-Personalised-Learning-Assistant!/snapshot/qDBzjmXhW

Feel free to share any constructive feedback and reach me at twitter @Aravind_V7

Do like and share my hackathon submission in DEVPOST

https://devpost.com/software/personalised-learning-assistant-5vr28l

Top comments (0)