Page 1 of 1

AI / Chatbot for an all-native "course" - any interest?

Posted: Wed Dec 06, 2017 8:10 pm
by whatiftheblog
Hello everyone,

I've been thinking about developing an all-native "course" (program? framework?) for B2-C1 learners for a while, given that (1) it's a recurring topic of conversation on this forum; (2) it worked so well for me; and (3) French people keep making googly eyes at me when I tell them I've only been here for 2 months, and I keep having the same conversation over and over again: "... but you went to a Lycée Français, right?" - "Nope." - "Wh... how..." - "I just drowned myself in content." - "Dang, I've been meaning to do with that with my English/Spanish/Italian..."

My initial MVP was just going to be an "AFATT" email newsletter, similar to what online fitness programs offer/sell - you sign up and you get a list of things to do/watch/read every day. Then I realized that never in my lifetime have I actually stuck it out through any of those programs, no matter the topic, and unless I put together an enormous library of resources to suit every possible taste and have users specify precisely what they'd want to watch/consume, I'd be going against my own cardinal rule of "thou shalt only use material you love or else you will turn into a pumpkin".

So! Holding the following truths to be self-evident:

1. Motivation wanes drastically if the user doesn't find the material engaging;
2. Loneliness can be a major source of frustration as well;
3. Higher-level courses simply cannot offer the same breadth of material as native-for-natives media;
4. If you're just starting out with native material, it can be really tough to figure out where to go to get the best stuff;
5. I have two weeks off in December (and I'm itching to get back into coding)...

... I'm toying around with the idea of an AI/chatbot system that would basically act as a "guide" into native materials, sort of a framework where you would have a virtual robot buddy coaching you through the process, recommending stuff you'd like, suggesting things to do, etc. It seems there are enough tutorials out there to get me and my... B1+ Python through the process of a relatively simple bot - I've already put together a super-basic prototype on Chatfuel, which doesn't quite offer all the functionality I'd need, but it serves as a good sandbox for me to refine the logic behind all the various user-bot interactions without diving too deep into code just yet. The idea would be to deploy a basic version on Facebook Messenger and tweak from there.

I suspect there's something similar already out there, and I might be reinventing the wheel, but since seemingly every new big (or small) app/course/program only caters to learners up through the intermediate level, I figured this might be a cool way to introduce something slightly different into this space. It should also be easily scaleable / malleable with regards to languages other than French - I have a friend who's teaching Russian at DLI right now, and she's interested in assembling materials for the Russian version; another friend of mine is perfectly fluent in Mandarin and could be tempted to join in; I have a cartload of native Spanish speakers at my disposal, etc...

Does this sound like something that might appeal to you? :D

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Wed Dec 06, 2017 11:07 pm
by tommus
whatiftheblog wrote:I'm toying around with the idea of an AI/chatbot system that would basically act as a "guide" into native materials

I assume you are referring to a text chatbot, as opposed to a voice chatbot. Granted, a text version would be a whole lot easier, but I am not convinced it would be much more effective than current text-based courses, grammars, quizzes, etc. However, a voice conversational chatbot would be invaluable. At the intermediate to advanced levels, language learners would love a chatbot that they could have unlimited conversations with. The advantages: readily available, no pressure, no embarrassment, no concerns about making mistakes, unlimited patience, etc. Obviously, such a chatbot would be difficult, but will probably soon appear for reasons other than just language learning. Then I expect language learning will make a quantum leap in progress.

I have played around with some very simple prototypes using Java and text-to-voice systems such as Google Translate and Bing Voice APIs. I was not using any AI or learning mechanisms. Just mechanical logic using Wikipedia as a knowledge source. Not easy, even at a very elementary level. But a lot of fun to play around with.

I'll be following your progress with your proposed chatbot.

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Wed Dec 06, 2017 11:43 pm
by whatiftheblog
tommus wrote:
whatiftheblog wrote:I'm toying around with the idea of an AI/chatbot system that would basically act as a "guide" into native materials

I assume you are referring to a text chatbot, as opposed to a voice chatbot. Granted, a text version would be a whole lot easier, but I am not convinced it would be much more effective than current text-based courses, grammars, quizzes, etc. However, a voice conversational chatbot would be invaluable. At the intermediate to advanced levels, language learners would love a chatbot that they could have unlimited conversations with. The advantages: readily available, no pressure, no embarrassment, no concerns about making mistakes, unlimited patience, etc. Obviously, such a chatbot would be difficult, but will probably soon appear for reasons other than just language learning. Then I expect language learning will make a quantum leap in progress.

I have played around with some very simple prototypes using Java and text-to-voice systems such as Google Translate and Bing Voice APIs. I was not using any AI or learning mechanisms. Just mechanical logic using Wikipedia as a knowledge source. Not easy, even at a very elementary level. But a lot of fun to play around with.

I'll be following your progress with your proposed chatbot.


Thanks very much for your reply, Tommus! To clarify, I was thinking more along the lines of a text chatbot (to start), with the goal being that it would be less of a "teacher" and more of a "guide" into the world of native-for-natives material. The (very) basic logic I'm working with now basically prompts the user to specify what they'd like to do - watch, listen, or read something, or say that they don't know - and delivers (links to) various options in line with their interests. I'm specifically looking to target the plateauing-at-B2 / stuck-in-a-rut group - those who might be afraid of diving head-first into native material, those who are stuck in the "I have completed level X, and now I must complete level X+1 of this course I don't even actually really enjoy" mindset, and those who feel ready to progress but don't quite know where to start.

However, it may be possible to add on a voice function, except that the systems I've tried haven't been so great at recognizing (and properly parsing) spoken French, and even Google's own platform seems to convert random words into English for no apparent reason (Siri understands me just fine in French, so I'm going to blame Google on this one). I'll have to dig deeper into this to see what the options are.

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Thu Dec 07, 2017 12:24 am
by smallwhite
whatiftheblog wrote:a "guide" into native materials, sort of a framework where you would have a virtual robot buddy coaching you through the process, recommending stuff you'd like, suggesting things to do, etc.

Like Google Ads etc that you install adblockers for, except non-commercial?

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Thu Dec 07, 2017 12:59 am
by tommus
whatiftheblog wrote:less of a "teacher" and more of a "guide"

I can see the value of that. However, the guide mode doesn't seem to appeal to me. I did quite a bit of Duolingo and found the guidance there a bit annoying.

My idea for a voice chatbot was simply for conversation; no specific language learning focus. Just casual chatting on a variety of subjects. The one I was experimenting with was in Dutch. So it started off with some options in Amsterdam, such as things you might like to see; museums, canals, train station, etc., and would interact a bit depending on your selections. Again, the only purpose of this kind of chatbot would be as a a chat partner in your target language. No translations. Just casual chatting.

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Thu Dec 07, 2017 3:44 am
by crush
Recently someone posted i believe it was Mozilla's open source speech recognition engine DeepSpeech, which has a Python package available:
https://github.com/mozilla/DeepSpeech

I'm not sure if it could be trained for other languages, but with something like that + TTS and you could potentially create Siri the language teacher and allow people to practice their target language in oral conversation rather than just text.

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Thu Dec 07, 2017 3:46 pm
by garyb
Every time the classic "what would be your ideal resource?" topic comes up, I say a chatbot like this. If people are actually serious about making it I'd be interested, but I'm afraid it'll go the way of most of the enthusiastic "let's make our own course" topics.

Re: AI / Chatbot for an all-native "course" - any interest?

Posted: Wed Dec 13, 2017 12:01 am
by whatiftheblog
Thanks for the feedback, everyone! :D

garyb wrote:Every time the classic "what would be your ideal resource?" topic comes up, I say a chatbot like this. If people are actually serious about making it I'd be interested, but I'm afraid it'll go the way of most of the enthusiastic "let's make our own course" topics.


To clarify, do you mean the kind of text chatbot I described, where it would recommend things for you to do, or an actual (text or vocal) bot you could have an involved conversation with?

To give you an update on where things stand with my original idea, I've been mentally working through the logic of how this thing could work and testing out some solutions. I've taken care to pay attention to some of the criticism posted here and elsewhere regarding the newfangled courses coming out, notably that Fluent Forever app, and I've realized that the best way to fail at this would to be try to solve too many problems at once, so it needs to be developed in bite-sized pieces. I've also figured out that there's simply no way around building a big corpus if I want this thing to be able to deliver quality resources, so I've restructured the original idea a bit in the following sense:

1. Build a big corpus first (at least 1000 resources, ideally), but make it really user-friendly, well categorized and easily searchable - a standalone "product" in its own right, either as a free or freemium resource. This would seek to solve one of the major problems I keep seeing people struggle with, and one I know I struggled with myself - the "where can I find ______" issue. I recognize it sounds very labor-intensive, but I don't mind doing the grunt work to ensure it becomes a really good resource. From a technical standpoint, this will probably be the easiest piece, and I already have a big list of resources I could dump into it.

2. Use that corpus, specifically its tags and categories, for the chatbot to feed off of via an API. In its toddler stages, the bot could, for instance, be told that I want to watch a history documentary, and send me a link to something tagged as that from the corpus.

3. As it (and the technology behind it) matures, it could start learning more about the user's preferences and generate its own recommendations. At this stage, provided there's enough engagement, it could very well be expanded and trained to have actual text-based conversations with users.

Anyway, that's kind of where I'm at with this. All suggestions, like-to-haves and critiques are welcome & appreciated in advance! :D