Slater – virtual language learning companion

Slater – virtual language learning companion

This is a submission for the Cloudflare AI Challenge.

What I Built

A simple virtual foreign language learning companion specialized in holding conversations, helping with translations, and improving diction.

Demo

Please check out the demo at slater.sean.app.

My Code


seanvelasco
/
slater

Cloudflare AI challenge submission: Slater – your virtual foreign language friend

Slater – your virtual foreign language friend

Conversational, context-aware, and multi-modal chatbot specialized in carrying basic conversations in foreign languages.

Submission to the Cloudflare AI Challenge.

Please check out the demo.

Problem and pain points

I want to learn Mandarin, but I don’t have a Mandarin-speaking friend to practice with. I’m also not confident enough with my foreign language skills to speak with a Mandarin-speaking person online.

Duolingo doesn’t teach me how to write or speak the things I want to express. For example, I want to say This is my favorite coffee shop. I know how to construct the sentence, but I don’t know the Mandarin word for favorite. So, I end up saying – Zhe tiao wo de favorite kafei guan.

Google Translate lacks certain language nuances. It also doesn’t keep track of the things I looked up.

Keeping notes of the words…


seanvelasco
/
slater-worker

Cloudflare Workers that power Slater

Journey

Pain points and motivation

I want to learn Mandarin, but I don’t have a Mandarin-speaking friend to practice with. I’m also not confident enough with my foreign language skills to speak with a Mandarin-speaking person online.

Duolingo doesn’t teach me how to write or speak the things I want to express. For example, I want to say This is my favorite coffee shop. I know how to construct the sentence, but I don’t know the Mandarin word for favorite. So, I end up saying – Zhe tiao wo de favorite kafei guan.

Google Translate lacks certain language nuances. It also doesn’t keep track of the things I looked up.

Keeping notes of the words I learn takes effort – I have to write down the English word, hanzi, pinyin, and how it is used in a sentence.

Therefore, I wanted to create an experience where I can converse freely in a foreign language without fear of judgement, where I can quickly translate (and save as “learned”) words, and where I can practice my diction (Chinese pronunciations are really hard).

This is my first time developing an LLM app. I learned a lot in a span of two days (I learned of this challenge a little bit late). The next steps would be, developing this further for personal use, and to extend the use-cases for other languages.

Multiple Models and/or Triple Task Types

Slater has three modes: conversation mode, translation mode, and speaking/diction mode.

Meta LLama 2 for general conversations, but instructed to limit and focus its scope to language learning.

Meta Meta M2M-100 for text translations between English and Mandarin Chinese.

OpenAI Whisper for speech-to-text. However, currently figuring out how to make it work with Mandarin Chinese.

Leave a Reply

Your email address will not be published. Required fields are marked *