I think it's more important to keep up motivation rather than finding a silver bullet. To me enjoyment is more important than efficiency while learning in general.
In my case, I'm learning Japanese. From the get go I knew it's a long process to reach real fluency.
I began with a traditional teacher based course. I learned basic grammar, which was really great. What I didn't like was the pressure to perform on time. Juggling a job and a billion projects made it kinda difficult to perform week after week.
After the course was over I had a big sigh of relief; I'm an engineering grad, but this was something completely different. I'm used to study more esoteric, not as applicable stuff as real languages.
I went to Japan that summer and figured out that I didn't understand anything. I already expected this. Listening was the big issue, and reading, and speaking...
Reading is my key to learning. I remember learning how to read Swedish (my native language) by reading subtitles to James Bond movies. That was my beginning of learning English as well. Japanese is pretty dang hard to read due to the thousands of symbols you need to know.
At the same time of learning Japanese I began learning Javascript. I began building my own tools, catered to my own learning needs. By this process I've been able to create fun web-stuff, and to imprint over 1000 symbols in my thick noggin. Now I'm able to understand about 75-80% of the symbols used in writing. I'm finally able to read easier texts and learn vocabulary in a different way than pure memorization.
Tl;dr: you probably don't need fancy chatbots to learn a new language. If you want tools, try building them yourself.