Korean Learning Bot

The goal is to create a Discord bot that aids Korean language learners in improving their vocabulary and listening skills while nurturing enjoyable and collaborating environment within the Discord platform.


Key Objectives:

1. Vocabulary Enhancement: Boost vocabulary and listening skills by offering TTS word listening environment with dialogue audio tracks

2. Personalized Learning: Include an individual scoring system for personalized word selection and progress tracking

3. Visual Support: Generate images for each word, providing users with visual aid to enhance memorization

4. Curated Content: Compile Korean vocabulary from diverse reputable sources, including language schools, Test of Proficiency in Korean (TOPIK), and collections of the most frequently used words

Utilized GPT-3.5 model in conjunction with the LangChain framework to enrich vocabulary content by providing context and generating images for each word, all made possible through the utilization of Stable Diffusion. Presented below are AI-generated image examples demonstrating the outcomes achieved with these tools.

How the Vocabulary Session works



When vocabulary session begins, newly encountered words by the user will be accompanied by detailed information and images (image on the right). If the user has previously encountered the word, only the translation will be visible, but it will be concealed as spoiler (image on the left). To reveal the translation, one simply needs to click on hidden text. If the user wishes to see all the detailed information again, they can use the 📄 button.

Upon encountering a word, an audio pronunciation will be played, and series of interactive buttons will appear to assess your familiarity with the word. Here's what each button represents:
✅ - I know this word instantly
🤔 - I know it after some thought
🧩 - I know it partially, or I'm not sure
❌ - I don't know it
🔁 - Replay the word's pronunciation
🔚 - End the session

Session types

There are four session types: 

  • Learning vocabulary by acquiring new words or reviewing the ones you already know
  • Listening to dialogue audio tracks
  • Reading sessions

Each level consists 30 lessons, with one lesson assigned to each session type. In order to get into the Listening and Reading sessions, it is essential to understand the corresponding grammar and vocabulary. To start these sessions, one should begin with the vocabulary lessons first, followed by the Grammar lessons which are outlined in the links below:

Listening Session

In Listening sessions, each lesson includes a few audio tracks. When the session begins, the first track automatically starts playing. To navigate through the tracks, you can use the player controls using the buttons provided. For example, if you need to replay a section you have misheard, you can rewind the audio by a few seconds or pause it.

⏪ - Rewind by 10 seconds
⏸️ - Pause
⏩ - Next track
🔁 - Repeat track
🔚 - End the session

Music Bot

Complementing our language learning experience, integrated Music Bot seamlessly blends the learning, music, and social interaction within Discord's voice chat, fostering an enriching environment for both education and fun.

🔥 Features

  • Search and Play: Easily search for and play tracks from YouTube
  • Playlist Support: Stream entire playlists or handpick individual tracks from them 
  • Real-Time Audio Player: Periodic updates after track begins to play
  • Interactive Buttons: Control the audio player using the buttons
  • Track Request System: View all the request on your server through Google Sheets
  • Summarized Requests: Keep track of requested songs over specific time periods
Music player with queue of songs

📚 Commands

Name Description Options
⏸️ Pauses the current song
▶️ Resumes the current song
⏭️ Skips the current song
🔁 Loops the queue
🔂 Loops currently playing track
🔀 Shuffles the queue of songs that weren't yet played
play Searches and plays/adds the track into queue search: search prompt / URL
playlist Allows you to pick tracks from 25 last songs in the playlist playlist_url: URL of playlist
search Gives you a list of tracks to choose from the search prompt search: search prompt
seek Gets into a certain timestamp in the currently playing track second: timestamp in seconds
jump Skips to a specific song in the queue index: index number in the queue
remove Removes a song from the queue index: index number in the queue
volume Changes the volume (10% is the default) volume: from 1 to 100 (in %)
clear Clears the queue song: The song number
history Saves all requests into Google Sheets log (use prefix) limit: amount of messages to take into account
create_stats Creates stats from the requests log (use prefix)

These bots are still under development. While the Korean Bot is not yet published, feel free to join my Discord server (here) and send me a message if you're interested in trying it out. Your feedback will be invaluable in shaping these Bots!