14 ms·
Show HN: Learn a language quickly by practising speaking with AI
Hi guys,
Hope everyone is well. This app was borne out of my own frustration. I thought that I was terrible at learning languages at school, since I didn't become conversational in French after 5 years of study. However, I later traveled with some French friends and, in just under 3 weeks, I was able to hold a reasonable conversation. I realized that there's no substitute for speaking to native speakers.
I tried to adopt this approach for other languages, but it's much harder to find people to practise with when you aren't travelling. I started using iTalki to meet people from different countries and chat to them. It quickly became very expensive and time-consuming to schedule the calls, so I gave up.
I made PrettyPolly so that anyone can easily practice speaking 26 languages orally. The app uses ChatGPT (amongst other tools) to allow you to practice speaking whenever you want. It also generates a fluency score for each conversation so that you have an objective way of tracking progress.
It's free to use (up to 15 conversations per month). I've found that using it once or twice per day is plenty, and you'll be amazed at how much you will pick up in a week. I've added some FAQs here in case useful - https://www.prettypolly.app/learn https://www.prettypolly.app/learn
Would really appreciate any feedback. Let me know if you have any questions, issues or suggestions.
Thanks,
Chris
- explosion-s 3y agoWill you make this open source please?
- cwbuilds 3y agoI can definitely look into it. Do you have any suggestions for how to do it well?
- xcdzvyn 3y agoUpload the source code? :")
- yetanother-1 3y agoWhen open sourcing your work, look first into licensing and make sure to understand what each license offers and what implications it has. Then you can chose to push it to github or similar, but please prepare a good readme.md file.
- shazar 3y agoJust tried a few languages and there seems to be a problem with German speech to text. When I say "Hallo" it just thinks I said "Untertitel der Amara.org-Community" :-) English and Spanish seemed to be functioning OK though, but I really wanted to test my German.
- cwbuilds 3y agoThanks for the comment. Sometimes if you toggle the microphone quickly without saying anything, it will halucinate something. If you could, is there any chance you could try again in German and let me know if it's still not working?
- shazar 3y agoNo, still not working. Also tried a bunch of other languages and they all seemed to work except Turkish, which also spits out something related to subtitles...
- cwbuilds 3y agoAh darn - okay, thanks for the feedback. I'll find a way to stop it from doing this.
- shazar 3y agoCurious about this, why do you think it hallucinates? Isn't that supposed to be the direct output from speech recognition? PS: Just happened with Spanish now as well, which was working fine. (You: Subtítulos realizados por la comunidad de Amara.org)
- ix101 3y agoIt would be amazing if the microphone detected say 15 second silence and responded automatically for a fully hands free experience
- cwbuilds 3y agoYeah - this is a good shout
- obscur 3y agoSeems cool! I know basic Spanish from Duolingo but not enough to understand what it says to after a few rounds so my suggestion is that there is a side-by-side translated version of the conversation.
- cwbuilds 3y agoThat makes a lot of sense! I've been awkwardly having a Google Translate window open with it, but agree that it would be much less onerous to have it built in. Thanks for the feedback.
- kalid 3y agoI've been meaning to brush up on Spanish and the app worked great to just hop in! The best part about using GPT is being able to talk about whatever is on your mind. I noticed the transcription APIs clean up my mistakes (which is good for the transcript) but I wonder if there is a way to show the raw and corrected transcript to help guide corrections? Either way, it's already useful as is, looking forward to using it more.
- cwbuilds 3y agoThanks for the comment and glad it's useful! Agreed - I love the flexibility to talk to it like it's almost just another human, but with vast knowledge. Okay - that makes sense - I can look into adding some more of the raw transcript. Thanks for the feedback.
- kalid 3y agoHappy to help! To give some context: there was a GPT prompt which was something like "Act as a language tutor. I'll have a conversation with you, and you reply back. If I make a grammar mistake, keep the conversation going, but put the correction in a parenthetical statement." I was using that for a bit, but typing in another language was enough friction (vs. speaking) that I didn't use it that much. For this, audio is perfect -- all I need is the gentle reminders about what to fix, and why. GPT could probably have a parenthetical part in the official transcript too. Anyway, hope that helps give context.
- cwbuilds 3y agoAgreed. There's a huge chasm between being able to read/write and being able to speak. Speaking is just more fun as well imo. I'll have a think about ways that it could provide some qualitative feedback. Thanks again
- blackkettle 3y agoYou could do something two pass and collect forced alignment confidence scores similar to what is fine with whisperx. The OP would need to incorporate that into the app but it’s a pretty standard approach.
- netsharc 3y agoIt needs a "Processing..." notification, I clicked "Start conversation" and it takes a while before it says anything. Same with "Start speaking" -> I said something, then clicked "Stop speaking" but the page seemed unresponsive. I repeated it, and when the transcript appeared I ended up answering the question, getting another question, and repeating the first answer. Also after 3-4 sentences the questions got a bit "dull-person-at-a-party" small-talk... "What are you doing today?" / "I'm programming." / "What programming language are you learning?" / [I didn't say I was learning...] "Java." / "Oh, interesting. Java is a popular programming language. What do you like about Java?".
- cwbuilds 3y agoThanks for the feedback. I'll add in a processing-style spinner. Sorry that it was a bit slow when you first used it. Do you mind if I ask what device you're using?
- ollysb 3y agoThis my experience on an iphone 12. The UX doesn't really work for me yet but I absolutely love the concept, will keep an eye on it (would sign up for a mailist if you have one).
- cwbuilds 3y agoThanks for giving me the device. I did have some trouble getting it working on iOS so maybe I didn't iron out all the bugs. I'll get working on a fix. I think we're already emailing so I can add that email to the mailing list if you'd like?
- da39a3ee 3y agoI love the idea, and just had a successful conversation with it for a few minutes in Portuguese. Nice work! For me in that language I need to work on understanding native speakers, so currently it speaks too slowly for what I personally need (it's too "easy"). I did ask it twice to speed up but it didn't seem able to - I guess it's hardcoded in your text-to-speech code? Is that something you can add an option for?
- cwbuilds 3y agoAwesome! Yes, it's hard-coded to basically be in 'beginner' mode at the moment, but I was considering allowing the user to select intermediate or advanced, which it sounds like would be more useful for you. Thanks for the feedback!
- da39a3ee 3y agoI would love to try it on advanced if you get time to do that. I honestly think I'd use it a lot. If adding it to the UI takes time I'd be absolutely happy with a URL query parameter prettypolly.app?level=advanced if that's easier.
- cwbuilds 3y agoIt probs wouldn't take much longer to just add a slider or something too. If you don't mind me asking, what are you planning to use it for? Interested to hear some advanced use cases
- da39a3ee 3y agoGreat. Oh, I'm just aiming to get much better fluency and ability to understand native speakers in real-life contexts. I've had basic bad foreigner level for a while now.
- deleted 3y ago[deleted]
- mahathu 3y agoI like the Anki shoutout. I personally would be cautious learning an extra language through a tool like this though, especially for a huge list of supposedly supported languages like this. Chat-GPT gets basic concepts like verb suffixes wrong, that is, explaining those concepts and generating example sentences, when I was trying it out a few months ago. I wouldn't mind conversations feeling a bit awkward or unrealistic, (EDIT: as they do here), but I wouldn't trust AI tools atm to get sentence structure, spelling and pronunciation (!) all completely right which is imperative for such a tool to function (and this one didn't for the two languages I tested). If we assume the AI is already at that level, it would be trivial to have it show translations to user's native languages instead of only to English and excluding a number of potential revenue-generators for the capitalist machine ("learners"). Your prompt leaked in the text box when I pressed the Start Conversation button multiple times, and the site seems to be getting HN-hugged-of-death right now. Also, adding to the person who mentioned this being close sourced, if a "deep-rooted desire not to look foolish in front of others" was among my reasons not to talk to a stranger in an extra language, I don't think I'd be any more likely speaking into a microphone, alone, in a room, like I'm conducting my biannual mandatory TOEFL© test every two years.[1] [1]: This one is actually worse because you're in a room with 10+ others simultaneously talking into a computer screen, not talking to a person but just having your voice recorded, and it's outrageous ETS is getting away with charging people like 200 bucks (getting to see feedback for your grade is extra)
- cwbuilds 3y agoAnki is such a great product. That makes sense. I do understand the worries about learning from AI. It's worth saying that different software is used for transcribing what you say (rather than ChatGPT), and that's been trained on lots of data (including YouTube videos) of people speaking that language, not to say that it could never get it wrong. But I definitely hear what you're saying about ChatGPT sentence structure on the less popular languages. Good point about open sourcing. I definitely agree.
- Serenacula 3y agoI actually think I disagree with this. Yes it'd be incorrect some of the time, but that is also true of humans. Provided it gets it right most of the time and is reasonably fluent, I don't think that minor errors would matter much. This seems much more a tool for practicing the stuff you learn in another context to me, rather than a way of learning in itself. You can use it without the social pressure of stumbling slowly through sentences with another person.
- sno6 3y agoThis looks great thanks for sharing. I've been using a similar app on iOS and it's definitely been helping with my German. https://apps.apple.com/us/app/langs-ai-language-learning/id1668639533?platform=iphone https://apps.apple.com/us/app/langs-ai-language-learning/id1...
- cwbuilds 3y agoThanks for the comment and for sharing that app - I'll check it out.
- squadshell99 3y agoI’ve tried a couple that I found on the app store.. langs is good, I like how simple and to the point it is. Doesn’t have a web interface though
- GenericDev 3y agoThis is really slick! I really appreciate you having Japanese as a language choice. I've been dying to hone my japanese skills with AI in lieu of reading grammar/vocab books etc. I definitely intend to use your product more, because it is definitely scratching that itch! A couple of things that might help me personally would be the ability to cancel my current response and redo it, as frequently I will stutter or pause on a thought and wish I could restart over. In that same vein I would love to see the output of what I'm saying in real-time. If only to gauge and understand what the application "thinks" I'm saying and to potentially correct and miscommunications from spoken input. I would also love the chance to role play or have the tool help me learn contextual role playing. For example in Japanese keigo is a skill I just haven't mastered. I would love a tool to help put me in positions where I need to use keigo, and then be corrected where I'm failing. Regardless, this is absolutely fantastic! Thank you so much for sharing! You're awesome :)
- cwbuilds 3y agoThanks - glad it's useful for your Japanese. Do you like it being in the Japanese writing system or would you prefer phoenetical English? Wasn't sure which to do on that one. Thanks for the feedback. The processing point has come up a couple of times so I'll definitely be adding that, and I'll look into doing some contextual scenarios. If your language is good enough, you could try prompting it to act as, eg a waiter in a restauraunt, but that's far from ideal for beginners! Sure - realtime transcription makes a lot of sense. I'll look into it.
- GenericDev 3y agoOh! I didn't know that. I'm really new to how to interact with AI. I'll try that out. Please please please keep it in Japanese. Phonetic english for Japanese is awful. Hiragana only for Japanese is really not ideal. The current output is absolutely perfect. Also, I think it's really cool I don't need an account to try that out. Very cash money of you.
- cwbuilds 3y agoAhah hear you loud and clear - no phoenetical words. Of course - hope it continues to help you learn!
- myownpetard 3y agoWhat is the fluency score based on?
- cwbuilds 3y agoGood question. I looked through literature to see whether anyone had come up with any good ways of measuring fluency, and there are a couple out there. The key indicators that kept coming up were the number of unique words used and the speed at which you speak, so they're involved. I'm hesitant to give the full equation, because I thought it might be better to leave some mystery so we aren't consciously trying to game it while we learn. It is by no means perfect, but I think it's useful to have some objective metric to track progress.
- myownpetard 3y agoCool, thanks for the response! I'm enjoying using the site. One followup: does it take into account grammatical errors, incorrect conjugations and that kind of thing?
- cwbuilds 3y agoGlad to hear it! Sort of. It will try to understand you even if you get the grammar wrong (a bit like a human would), but if it really has no clue what you're trying to say, it will ask you to repeat. I think it's best that way as it mimics learning in real life. If you keep getting your point across, over time, your grammar will slowly improve. The only evidence I have for this is anecdotal from learning Romanian with it myself.
- kansumine 3y agoThanks for sharing! I'm a bit confused with the fluency score, what does it mean exactly? It would be good to have some feedback and pointers for improvement, otherwise I don't see myself using it for long.
- cwbuilds 3y agoThanks for the feedback. The number of unique words you use and the rate at which you speak contribute to the fluency score. I'm a little reluctant to give the full equation, because it prevents us from trying to game it. That's useful feedback on pointers for improvement - I'll see what can be done.
- venk12 3y agoAmazing app. I am trying to learn dutch with this. It pushes you to converse in the language of choice. I also tried to get translation in english. Could be a good feature to understand new words and form better sentences.
- cwbuilds 3y agoThanks man! Yes, definitely - will look at adding translation
- legel 3y agoMarvelous! One of the best applications of a ChatGPT backend that I've seen yet. It's even remarkable to talk in your own native language to ChatGPT, but there is just so much room to build out the next great language learning app here.
- cwbuilds 3y agoThanks for the kind words!
- anhner 3y agoAwesome project! I had fun talking to it. Thanks for sharing. Can you give some hints as to what technologies you used?
- deleted 3y ago[deleted]
- kleene_op 3y agoVery cool! I could see this tool to be very useful in my Japanese studies. I only have two problems with it: - AI feedback can sometimes be pretty overwhelming. Maybe you could implement a level selector (beginner, intermediate and expert?) so that the AI would switch to using shorter/simpler or longer/harder sentences accordingly? - The speech to text works fine most of the time, but sometimes it gets a few words wrong. Could there be a way to correct the last sentence input?
- cwbuilds 3y agoThanks for the feedback. Yes, the beginner, intermediate, advanced point has come up so I'll look at adding something like that. Just to check that I understand, do you mean changing the text manually when it gets it wrong? If so, sure - I can look into it.
- kleene_op 3y agoI think manually editing your last sentence would be cheating in the context of a speaking app. Entirely erasing the last sentence of the user (as well as the AI's reply, if any) and having him repeat the sentence he had in mind would be better because it would force him to speak more clearly. (Also an undo button would be easier to implement than a whole system to edit previous sentences, right?)
- cwbuilds 3y agoYeah, agreed that makes much more sense!
- bironran 3y agoThe Hebrew one is so wrong... both grammar and pronunciation.
- cwbuilds 3y agoDarn, okay - I'll work out how to improve this. Thanks for the feedback.
- neilyoungsdog 3y agoDo Cantonese please! It's such an underrepresented but widely used Chinese language...
- cwbuilds 3y agoSure - will do. I had to create a shortlist for the MVP, but Cantonese will definitely be coming soon.
- larsiusprime 3y agoYes I have a question, when is your next round!
- cwbuilds 3y agoAha none planned! Let me get through the MVP launch first!
- acd 3y agoVery good app, how so you sign up for premium service?
- cwbuilds 3y agoThanks! Once you hit the conversation limit (15 per month) it will automatically take you to the upgrade page. If you really fancy paying, feel free to mash the start conversation button aha. Otherwise, you can just enjoy the free convos for a while :)
- Serenacula 3y agoWow, this is so cool! xD I think this is the strongest usecase for AI I've seen so far. I'd love some more details on how you made it - how are you handling the speech to text? It's so clean, I was amazed it could understand my stuttering mess lol.
- cwbuilds 3y agoThanks! Speech-to-text is Whisper API, although that seems to have caused a couple of errors tonight so am considering moving away from it. Will have to have a think and do a lot of testing. I feel your pain, I've also been a stuttering mess in Romanian.
- davidzweig 3y agomaybe add a VAD in front of it? faster-whisper uses silero VAD.
- cwbuilds 3y agoWill look into it
- avn2109 3y agoYeah this is great, shocking how reliable the speech-to-text is even for my unconventional accent. Imho UX would be improved by a larger text box, more clear demarcation between "stuff I've said" and "stuff the bot said," similar to how iMessage or Whatsapp have two-column message layouts or blue-vs-grey or both. Also maybe some "hold spacebar to activate mic" keybindings would not go amiss, similar to how Zoom or Gmeet makes the mic hot if you're muted but hold spacebar. That would save a lot of choppy/distracting clicking. (Or possibly just make the mic hot all the time when the bot isn't talking?)
- cwbuilds 3y agoThanks - The larger text box has come up a few times so I'll fix that. Good point on not being able to discern between what you said and what the AI said. Will change that when I get a chance. Sure - I'll look into 'hold spacebar' type functionality. Thanks for the useful feedback.
- infomiho 3y agoI kept speaking Croatian while I was practicing Spanish and it underatood me. What kind of magic is this? Really cool project!
- cwbuilds 3y agoAhah the witches of the internet are pulling the strings
- camjw 3y agoThis is really super cool. I wonder if you could use elevenlabs or something similar to make the voice more legit because it feels at the moment like I’m speaking to a satnav (in French). I also got fluency score None which, let’s be real, is pretty accurate. But I feel like I need a bit more to help me learn. The microphone interaction is really nice.
- cwbuilds 3y agoAha thanks man. Yeah - agreed that there's lots of work to be done on the speech. Makes sense - getting from 0 to 1 can be a bit of a struggle with this method, so could be good to find some ways to make that easier.
- DoryMinh 3y agoI agree but 11labs can be too expensive something transient like a conversation. Maybe give users a choice, those who pay for it will get it. But personally it's not really a deal breaker because 11lab doesn't have Japanese and Mandarin which I'm learning, haha!
- drdaeman 3y agoHmm, just had a weird speech-to-text hiccup. I've asked to teach me how to construct past tense in Spanish. It gave me a few examples (Spanish and English translation right next to it, text-to-speech engine hadn't realized that some words were in English, though, and pronounced them in Spanish manner), then suggested I try to form my own sentences. So I've replied "Yo entendí sus ejemplos!" (uh, I hope I've got it right) but somehow it transcribed it as "You: Suscríbete para no perderte nuestros próximos videos." While I think I've stuttered and may be mispronounced something, it surely didn't sound anywhere close to that. Being an LLM, it didn't bat an eye and asked me about the name of my channel :) But I'm wondering if there was some request-response mismatch with the Speech-to-text API you're using and I've somehow got a phrase intended for someone else.
- cwbuilds 3y agoThanks for the feedback. Yeah - it does seem to have hallucinated a little tonight. It normally happens when I time the microphone wrong and send some blank audio, then it seems to want to magic up some sort of phrase from nowhere. Am working on a fix for this. Any chance you could try again and let me know if it happens again? Ofc, no worries if busy. Thanks again
- cheshire137 3y agoThank you for this! I’m enjoying the Chinese so far. I’m unable to sign up, though. On mobile, I’m trying to hit the sign up button after filling out the form, but it’s not doing anything or giving me an error.
- cwbuilds 3y agoGlad to hear it! Do you have any preference on traditional Mandarin vs. simplified? It's simplified at the moment. That's weird. Any chance you could ping me an email with the email you're using to sign up and I'll work out what's going wrong? chris@prettypolly.app. Thanks again.
- wfurney 3y agoCool project, I might recommend ordering the language list alphabetically
- poulpy123 3y agoIt's a very nice proof of concept that could revolutionise self taught language learning. It would need to provide lessons and this AI cools provided guided generated exercises, their corrections, explain the correction and check the pronunciation
- cwbuilds 3y agoThanks for the feedback. I'll look into adding this.
- mmasu 3y agoThis is very interesting. A question, how do less widespread languages fare against English? Is the quality output the same in i.e. Thai and English/Spanish?
- fnordpiglet 3y agoGiven the performance of tokenizers by language the answer must be “worse,” there are a variety of sources for this .. they typically focus on cost, but it’s also borne out in quality. https://denyslinkov.medium.com/why-is-gpt-3-15-77x-more-expensive-for-certain-languages-2b19a4adc4bc https://denyslinkov.medium.com/why-is-gpt-3-15-77x-more-expe... https://arxiv.org/pdf/2305.13707 https://arxiv.org/pdf/2305.13707 https://arxiv.org/pdf/2305.15425 https://arxiv.org/pdf/2305.15425 A quick Kagi can find a lot more.
- cwbuilds 3y agoMixed reviews so far. I've had one person say the Hebrew was brilliant, and one say that it was terrible. It seems to be slightly less accurate than English, but good enough for most purposes
- Daz1 3y agoI can't find the app in the Japanese App Store, can you please release it there :)
- squadshell99 3y agoIf you're looking for an app that's similar you could try this one I'm using https://apps.apple.com/jp/app/langs-ai-language-learning/id1668639533?platform=iphone https://apps.apple.com/jp/app/langs-ai-language-learning/id1...
- cwbuilds 3y agoAfraid it's only a web app at the moment, so you can use it in your browser on mobile. There will be a native app soon, however
- digitcatphd 3y agoI really love this. Very cool. One step closer to my goal having zero human interactions in my day. Just make sure to refine it so it’s a product not a feature.
- ix101 3y agoZero interactions in multiple languages is your goal by the sounds of it
- IG_Semmelweiss 3y agoHi ! Neat little app! I was commenting elsewhere that I was super happy that Bard t had opened up foreign languages recently. That way I could get my kids to practice their foreign languages. But bard was not great, and prompt was not as intuitive as yours! Click to talk. Click to stop. Great! I'll be using your app. Great idea! Keep UX simple that even a 5 yr old can figure it out!
- cwbuilds 3y agoThanks for the kind words. Sure - anything you didn't like about the UX?
- IG_Semmelweiss 3y agoNeed: 1-click native tongue dictionary. How: the AI prompt clickable, specifically, a word should be clickable to find its meaning. Perfect scenario: clicking a word to automatically read out loud the word in the english meaning. Often I found myself seeing words I didnt know the meaning to, and its not possible to quickly iterate on it to get feedback. Yea im not going to use your app with multiple tabs on. Want: hard to say if necessary, but perhaps look into making the "stop speaking" button redundant . Note however, i found your voice commands ux to be infintely better than bard. (Bard has the problem that its hard to make prompt inputs in foreign language unless you have some kind of extension installed, buttons poorly placed, tiny, etc)
- yosito 3y agoI tried it in Spanish, to get an idea of how it works. Pretty cool! Definitely worth polishing the interface and making it a native app. How hard would it be to add more languages? My current target languages aren't supported: Hungarian and Bulgarian.
- cwbuilds 3y agoThanks - yeah lots of UI/UX work to do. I've added Hungarian and Bulgarian to the list of languages. If you sign up, you'll get an email when they're added. Thanks again.
- TheRoque 3y agoI love it ! It's very cool. I was thinking of doing the same kind of thing too. I'll throw here some ideas that I thought would be cool also: - adaptative level: just gradually starts to add more vocabulary in the conversations. I would assume an LLM already knows by design the most common and the most rare worsts - remembers past vocabulary, and uses more the vocabulary you struggle with - remembers grammar concepts, ideally makes a brief summary of a new concept, and refreshes your memory if it's a concept you've already seen, but forgot. I currently struggle learning Korean because so much of the language uses particles, and they all look the same to me. I think I would greatly benefit a tool that tells me "hey ! you've seen this concept before, look: ___" and by repetition give reinforce my grammar knowledge This is how I would see the ideal language learning companion
- cwbuilds 3y agoThanks for the feedback and suggestions. Will see what can be done.
- PixelForg 3y agoLooks amazing! But will you be adding other languages like Marathi(15th most spoken) and Telugu(16th) if possible?
- stedman 3y agoCan you add support for pinyin mandarin?
- cwbuilds 3y agoYes, of course. I'll try to add this soon. Thanks for the input
- AYBABTME 3y agoTried it in Korean and I quickly reached the pathetic limits of my Korean speaking abilities. Glad it was in 한글.
- btzs 3y agoUnderlined link not working FAQ: > How do I start using PrettyPolly to learn a language quickly? 1. Select your desired language in __the app__.
- cwbuilds 3y agoAh thanks for reporting!
- smodo 3y agoI really like this! I’ve thought about making something similar but never got around to it. This is well done and the STT-TTS works great! My foremost wish would be for my tutor to point out and explain my grammar mistakes. I can hold a conversation in German but still make grammar mistakes. The LLM corrects them when transcribing and it would be really nice for it to underline the mistakes with the ability to explain them. Maybe have a second LLM running with a different system prompt?
- cwbuilds 3y agoThanks for the kind words. It's actually a deliberate choce to not have it correct the user. The reason is that it mimics trying to get your point across in real life. Over time, through speaking as much as possible, your grammar starts to improve by osmosis and exposure. The only real evidence I have for this is my own anecdotal experience.
- Douger 3y agoI just showed this to my partner and she really enjoyed it! I'll add a feature request of Slovenian as an additional language. By signing up I'm hoping that you'll push out emails advising if / when new languages are added? Wishing you all the best :)
- cwbuilds 3y agoThanks! Great - I'll put Slovenian on the list. Yes - you've been added to the mailing list which will inform you of things that will help you learn, including new languages. Thanks for signing up! You too!
- yett 3y agoHug of death? Error code: 502-backend
- cwbuilds 3y agoYeah, apologies. Wasn't expecting nearly this much traffic. Have made it more robust so it should be running faster than ever now, but let me know if any issues
- antonioevans 3y agoWhen you're referring to Portuguese in your app, it seems like there's a blend of Brazilian and European Portuguese. It's crucial to differentiate between the two since they have distinct nuances. I'm presently working on mastering European Portuguese, so it would be beneficial if you could specifically incorporate that.
- cwbuilds 3y agoGot it, thanks for the tip! Will try to create 2 diffeent languages. I think this is a problem also for countries where they have different regional languages/dialects like China.
- Nowado 3y agoI was thinking about a piece of this problem earlier and I'm curious if you figured out element that I didn't: How do you provide feedback on how someone mispronounces a phrase?
- bbor 3y agoI think educators are too afraid in general of getting into some real accurate phonetics IMO. Lowest hanging fruit seems to be phonetic diagrams of where the tongue/lips should be. Perhaps normal in other peoples experience?
- Nowado 3y agoPhonetic diagrams aren't feedback though. You would explain how to do something correctly, but user wouldn't know what elements they need to change, unless they figure out on their own what they are doing right now. I know my teachers told me to do X when they heard me mispronounce something specific, but that's irl small group/1on1 experience. Again, I'm curious if someone solved it. Theoretically this is within modern video/audio AI, but that doesn't mean we have the models or even organized data.
- langsoul-com 3y agoAmazing app. Ux could use some adjustments like showing loading or clearly indicating when the AI is listening. That way I'm not stuck wondering if the words went through or not. Oh, perhaps a hint or help button, so it'd give an example of how to respond
- cwbuilds 3y agoThanks! Yes - lots of work to be done on the UX. A processing-style spinner is the top of my list to add this week. I'll see what can be done about hints. Thanks for the feedback
- om154 3y agoGreat idea!
- cwbuilds 3y agoThanks!
- fstrazzante 3y agoAmazing! I think the best way to learn a new language is to speak with someone and better if that person would tell you where you are wrong! I'm using Duolingo to learn but I'll start using your app as well. Fast feedbacks: - If you don't know what PrettyPolly is saying you close the conversation and that's bad for PrettyPolly (which is being less used) and for the learner (sad mood because you can't handle a conversation after days of learning) so maybe think about some difficulty levels? (I think you can handle it in the prompt of chatgpt) or I read in the comments about the translations. - When I click the button to stop my microphone, the user doesn't have any feedback of what it's happening, so maybe show a loading spinner and block all the buttons? Btw well done! Can't wait to see updates!
- cwbuilds 3y agoThanks for the kind words. Difficulty levels have come up a few times so I'll see what I can do.
- patrikbraborec 3y agoIn the first paragraph is "Select your desired language in the app.". If you click on the link, it goes nowhere.
- cwbuilds 3y agoThanks for reporting. Will fix this.
- jjallen 3y agoThanks Chris. FYI I will pay for the app if you add Bosnian, Croatian or Serbian. It works pretty well. Would be great to have hints for how to respond. Getting to the next level is important and we will get stuck once we hit our knowledge ceiling. An idea for the hints is simply maybe showing a few of the words that might come next when the user clicks "hint". I also wondered what the max fluency score is. Is it 100? I got 9 with saying the most basic of things in Italian. I would make the text box way bigger too. I can barely see what has been said. Also my text and the response text show up at the same time. I would space this out more naturally. Also it entered as my text "You: Untertitel der Amara.org-Community" which I definitely didn't say.
- jjallen 3y agoYeah I really want to see my past text to see if it transcribed it correctly but can't with the current box size (web)
- cwbuilds 3y agoOkay, yeah that does sound annoying. I'll enlarge it
- cwbuilds 3y agoThanks for the comment. Cool - those languages are on the long list so will hopefully be able to add them soon. There's no max to the fluency score, although, in reality, it would probably be very hard to get anything over about 200. The fluency score is obviously fairly arbitrary and is calculated using the number of unique words and the rate at which you speak. I've found it to be a useful objective measure to compare yourself to previous conversations.
- bux93 3y agoIt's a bit intimidating to me.. Polly: สวัสดีครับ สบายดีไหม? คุณชื่ออะไรครับ? You: I don't speak Thai well. Can you speak more slowly and can you write in Latin script, please? Polly: สวัสดีครับ คุณพูดภาษาไทยได้ดีไหมครับ? ถ้าไม่เข้าใจสามารถบอกหรือถามฉันได้เลยครับ ผมพร้อมช่วยเหลือคุณในการเรียนรู้ภาษาไทยครับ Not what I was hoping for..
- wingerlang 3y agoUnrelated to the site, but you really shouldn't be using latin script for thai.
- scrollaway 3y agoLearning the script of any new non-Latin language is the most important thing to do, before you spend time trying to learn the language itself very much. (Casting Chinese aside on this opinion, YMMV) You will generally not be accommodated in the future, and the time you spend learning via a translit is wasted time. Furthermore, learning the script is generally easier than it looks — it just always seems so intimidating, being faced with unpronounceable squiggles… but this is what our brains evolved to be good at. Learn the script first. Olly Richards agrees: https://youtu.be/NCfmSD2qeUI https://youtu.be/NCfmSD2qeUI
- wizofaus 3y ago> but this is what our brains evolved to be good at. Really? Personally I find having to learn a new written script is one of the biggest barriers to learning a new language. Despite years of exposure (admittedly at low intensity) I still struggle with reading anything in hiragana/katakana. To be clear I agree trying to learn a language using nothing but romanisations is almost certainly a bad idea, but I'm not sure I've ever felt the human brain had any special aptitude for learning written scripts - after all we've only been using them a few thousand years.
- scrollaway 3y agoI guess I said it kind of the wrong way around. The written script has evolved to be used by humans. It's still evolving, of course, so it's not like it's a paragon of efficiency; but humans are good at pattern recognition, and the written word is exactly just that. Learning to read, is learning patterns.
- mauryashivam 3y agoThis is really cool. I can practice reading, listening and writing on my own. I wanted to practice speaking German. I learned a few languages just through speaking with natives.
- cwbuilds 3y agoAwesome - glad you're finding it useful!
- Jeaye 3y agoThanks for sharing, Chris! How does something like this compare to direct ChatGPT usage? I didn't sign up, but I'm interested in LLMs for language learning and I'd like to understand what you've built compared to what I'd get by asking ChatGPT to be my Spanish pen pal tutor.
- cwbuilds 3y agoThanks for the comment! The main difference is the use of speech instead of text. At school, I could read/write in French, but then was absolutely lost speaking to French people. If you want to speak a language, you have to speak it. The fluency score is also quite useful for tracking your progress. I tried to get ChatGPT to give a fluency score, but it simply couldn't do it so I had to build some software to create a fluency score using rate of speech and the number of unique words you use.
- ed_mercer 3y agoWow. This works much better than I had anticipated. How did you get it to work so fast? Usually there’s a huge delay from the LLM/TTS/STT processing.
- cwbuilds 3y agoThanks so much! Blood, sweat and tears aha.
- hunter2_ 3y agoAwesome app! I don't know exact steps to reproduce, but I was just alternating between selecting a language and starting a conversation a few times, and at one point the conversation box filled up with the prompt: > You: You are a human who speaks Czech. In this conversation, you are interacting with a beginner who is learning your language. Your role is to help them practice and learn. Keep in mind that they will make mistakes. Your main goal is to maintain the flow of conversation by asking them questions about themselves, and make your responses as simple, short, and quick as possible. Please speak solely in the Czech language, without providing any translations or switching to English. Please start the conversation by saying something like Hi, how are you? or Hi, what's your name? Polly: Ahoj, jak se máš? Jak se jmenuješ?
- jjallen 3y agoIs that all it takes to create a language tutor these days? Then you have no excuses not to add Bosnian for my @op. I will even give you the initial prompt (I am knowledgeable as my wife is Bosnian i ja priçam malo Bosankski)
- cwbuilds 3y agoI wish it were that simple. There's also speech-to-text and text-to-speech to get working. But I've seen your comment above and added it to the language-add list. Thanks again for the feedback
- Woeps 3y agoEverybody seems to be raving about this app but I'm running into one big issue. Everytime I try to speak the system states I spoke the following: Subtitles created by the Amara.org community sooooooo, guess this just doesn't work for me.
- jjallen 3y agoHow many times did you try? It did this to me a couple of times but not every time.
- Woeps 3y agoAs I'm at work not more then 10 min. But I'll give it another try this evening then :)
- cwbuilds 3y agoPlease do. There's a flagged issue below where if you send any blank audio, it magics up some phrase that it's been trained on. Am working on a fix, but for now, it should work if you make sure there's audio in every response. If there isn't audio being transcribed, then please do let me know as that may be a problem with the app on certain devices with certain software versions. Thanks for the comment.
- deanc 3y agoThis is a great idea. It would also be nice to do this without the microphone input to practice writing. I'd also like the AI to correct my grammar if it's able to?
- cwbuilds 3y agoHey thanks for the feedback. I'll be honest with you, if reading and writing is what your goal is, then you'll get better results speaking to ChatGPT in the OpenAI chat interface. If your goal is to be able to speak it eventually, you'll need some sort of speech version. Sure - it's a deliberate decision to get it to not correct you mid conversation, because that mimics real life. However, I'm looking at having a way for you to get some qualitative feedback alongside the fluency score after each conversation.
- deanc 3y agoIsn't your secret sauce here though the prompt? I've tried with mixed results trying to get it into the role of a language teacher.
- khamisiyah 3y agoSeriously impressive! This has some big potential for sure
- cwbuilds 3y agoThanks!
- salpalpable 3y agoI was able to have a conversation in Mandarin, a language I have yet to utter a single word to a native speaker in since I'm self conscious about my accent. Really cool :) If I had a suggestion, it would be to add a button by each line up have the TTS repeat saying aloud the sentence. Might be useful for Chinese/Japanese
- cwbuilds 3y agoThanks for the feedback. I'll try to add something like this
- majikandy 3y agoIt’s amazing, it worked brilliantly in Japanese although it got too difficult for me far too quickly and I was relying on the English translation it was showing. Couple of things. I was promised a fluency score for my conversation but when I finally decided to press the button, I got a login/sign up page and I felt that that “ransom” feeling that a post the other day spoke about. If I’d been given a score, it wouldn’t have stopped me signing up and getting my own account to save the conversation I’d just had. I did sign up but only in the spirit of the fact you want feedback. If it hadn’t come from here I would have abandoned at this point and not come back. Sad but true. So when I finally did get in, I still didn’t get my fluency score and that conversation was gone forever. I’m left now really wanting to know how I did, but I’ll never know. I did a quick second conversation and then went straight for the score after a couple of rounds. My score was 0 :( Btw I’d love it to be able to interrupt the AI because it was speaking away to me but I was ready to speak back but I had to wait or speak over it. I really like it though and hope it gets smoother and better over time, because I know that I would be a paying customer for something like this that genuinely helped me improve my language skills.
- cwbuilds 3y agoThanks for the feedback! Weird that it said you had a 0 fluency score. Had you spoken in that conversation? Being able to interrupt the AI makes a lot of sense. Will add that to the roadmap. Thanks for the kind words. Hope I can make it more helpful.
- majikandy 3y agoYes I did speak twice, I didn’t really answer the question though, I just volunteered information to get something done quickly. So maybe 0 was accurate :)
- DoryMinh 3y agothe app is great. Thank you for making this. The app encourages me to talk more about the topic, which I know sometimes human teachers don't do. I like the stop and start button so I can pause and think before I speak. I was speaking Mandarin and Japanese. It responds well when the my transcript is gibberish (my pronunciation is not perfect).I know some people will point out that it lacks phonetic feedback. But the point of apps like this is not giving feedback because to help learners build up confidence. Of course, some feedback in any form would be great. But this app is multilingual, so it's hard to you will have to prioritise some languages first. Overall, simple but effective. I know I'm being greedy, and I know it doesn't make sense when comparing with other traditional apps like Busuu or Pimsleur. But if you allow decent number of conversations with affordable price (netflix or spotify subscription price :)). I would consider buying it.
- cwbuilds 3y agoThanks for using it! Glad it's been helpful. You get 15 free conversations per month when you sign up. If you want unlimited conversations per month, it's $4.50. Sound reasonable?
- hereforcomments 3y agoHi Chris, I absolutely love it! This a https://i.kym-cdn.com/entries/icons/facebook/000/005/574/takemymoney.jpg https://i.kym-cdn.com/entries/icons/facebook/000/005/574/tak... moment. The functionality is great, do some clean up and it will be an amazing product. E.g. instead of pressing start and stop, user could hold space while speaking.
- cwbuilds 3y agoThanks for the kind words! Yes - definitely lots of cleaning up to do, and the spacebar idea has come up so I'll try to add that in!
- davide_v 3y agoIt seems very nice, I tried japanese because I'm studying it, but it got difficult too quickly. In particular japanese needs furigana absolutely (the hiragana over kanji) or romaji (options to be activated/deactivated).
- hliyan 3y agoI tried German and managed to 502 the site. It's still down for me.
- cwbuilds 3y agoSorry about that - the server was overloaded, but it's back on now.
- hliyan 3y agoWorks now. Remarkably helpful. Unfortunately it gets exponentially difficult after the first few exchanges. But I think there is definitely something to this approach. Maybe if there is a way to highlight individual words and get a sneak peak at translations? And maybe a side button to speak an English word and get the target language translation (just as an aid -- currently I'm keeping google translate open on another tab).
- buildtoown 3y agoNice work and congratulations on launching. I saw some people were mentioning Langs which is an AI conversational app that I built for iOS https://apps.apple.com/us/app/langs-ai-language-learning/id1668639533?platform=iphone https://apps.apple.com/us/app/langs-ai-language-learning/id1.... Are you planning on building a mobile app at any point? i'd love to collaborate if you are :) also I like the fluency score idea, good stuff.
- cwbuilds 3y agoThanks! Yes, definitely planning on building native apps. The first will probably be on iOS, since most issues seem to be coming from those.
- tianqi 3y agoI'm getting 502 error. Congrats if this is because the demand is on fire :)
- cwbuilds 3y agoI think I got your email. Thanks for reporting that. Will get it sorted.
- applesan 3y agoGenerally if you are beginner and want to actually learn the language, you should focus on the input not the output. Few problems I find with these kind of apps: How is that different from just using chatGPT? Why can't I just write my response instead of using mic? chatGPT makes mistakes, as a beginner you can't spot them. (I talked to it in polish (my native language), it was making grammar mistakes) Speech recognition is not the same as native listening to you, speech recognition software may "understand" you, but native would not and vice versa. ChatGPT can't correct your pronunciation. Replies generated are stiff and unnatural. TTS can't model speech accurately (it lacks emotions etc.)
- realusername 3y agoI personally like that it's using speech recognition. First, chatting and speaking are not nearly using the same skills, training for one does not necessarily train the other and you can end up having a hard time to find the words you want on the spot. Secondly, speech recognition while not perfect, does help to make you understood by a native speaker. Speech recognition is usually working best on what's considered some of the most neutral accents in the target language, which is as a foreign speaker, exactly what you want. Seeing the recognition failed is a clue that you might need to train again to speak those words. > TTS can't model speech accurately (it lacks emotions etc.) I do agree on this last part though and usually TTS lacks support for other accents.
- applesan 3y agoI agree that chatting and speaking requires different skill set. However I would argue that it is even more of an argument to not use speech recognition here (or at least not to force it), because chatGPT is chatting and learner is speaking. Transcription will always lose some information (for example your tone can indicate sarcasm, but chatGPT can't detect it). To the second point: whisper can be helpful, but how can you know if it fails because of you and not the software's error? I spoke in my native language with traditional accent and it still made mistakes, also it hallucinates. Additionally being understood by whisper doesn't mean, native will understand you.
- jpin97 3y ago[dead]
- cwbuilds 3y agoAwesome - I'll check it out. Thanks for commenting
- davidzweig 3y agoWe made one too. https://www.languagereactor.com/chatbot https://www.languagereactor.com/chatbot It's using the llama-2 13B model currently, running on gpus in the basement. LLama-2 is weak for languages outside of English, so we use machine translation, which is mostly ok but gets wierd occasionally when the model isn't aware that it's not 'speaking' English. The reason for not using chatGPT was that when we started it had a very stuffy character and didn't like to role play (think it's better now, text-davinci-003 was fine but much more expensive). Running models yourself can get potentially costs way down. chatGPT is used for the correction feature. I check the logs occasionally, the feature doesn't have a lot of users. There's two issues I can see: it's hard to get the model to speak using simple language with a prompt only (probably a fine tune is needed), and, I haven't found good TTS for many languages (comparable to microsoft APIs) that we can run on our hardware. TTS is much better in Edge than in Chrome btw. I've heard https://www.loora.ai/ https://www.loora.ai/ is good, haven't tried it yet.
- cm-t 3y agoNote: the website does NOT works if you call https://prettypolly.app/ https://prettypolly.app/ (without the www). not sure it is on purpose note: Cant find Esperanto, which is a useful language to get learning curve fast for others language, i guess it worth the add? I wonder if there is a possible implementation to learn sign language (i'm thinking about LSF since i live in a french speaking area)
- cwbuilds 3y agoYeah - sorry, hadn't had time to configure the root domain yet, but will do very soon. Thanks for reporting. I'll add Esperanto to the list of recommended languages! I have no idea where to start with sign language, but I can do my best!
- luc4 3y agoWow, I've seen many AI-powered language apps lately, but this is by far the best. The others, if they offered verbal conversation at all, really struggled with my stuttering while trying to find the right words. I'm impressed that yours doesn't have this problem at all. It even understands when I use technical terms in english. I'd love if the AI was a bit more fleshed out, so I can actually ask questions without getting the "I'm an LLM by OpenAI..." lecture.
- cwbuilds 3y agoThanks for the kind words and for the feedback. I'll see what I can do about stopping the AI from breaking character.
- mattisssa 3y ago[dead]
- mox111 3y agoThis is great. One thing that could be improved: sometimes when the AI gives a "fill in the missing word" task i.e a sentence with a "______" in it, the text-to-speech literally says out loud "underscore, underscore, underscore..."
- cwbuilds 3y agoThanks! Yes, it's super annoying when it does that aha. In what context did it do it for you. Will try to find a fix.
- ptsd_dalmatian 3y agoChris, this is such a wonderful idea. Congratz to releasing this. There are so many ways how to improve this, first thing that comes to my mind is to improve readability of the dialogue. I would to have this as a typical messaging app layout, where you see in separate bubbles who said what. Keep up the great work and good luck!
- cwbuilds 3y agoThanks. Yeah, that's a good idea and I'll see what I can do!
- Vinnl 3y agoWow, I am pretty amazed at how well this works, at least for Spanish. Actually, I haven't really been convinced there were that many use cases for generative chat AI so far, but this convinced me!
- cwbuilds 3y agoAha glad you're a believer now
- peterfication 3y agoNice to see that a lot of people working on this topic! Quazel was one of the first I saw: https://www.quazel.com/ https://www.quazel.com/
- vidarh 3y agoThe instructions feel unnecessarily convoluted to me when ChatGPT can do a very good job of doing the translations itself. I'd suggest you consider telling people to ask your app itself for help if stuck, and falling back to English if struggling to find words or if in need of translations. Having tested your tool w/French, it in fact handles it perfectly well if I insert random English words in the sentences (and translates it into French), handles it fine if I ask it to explain words, and even if I ask it to repeat an explanation or sentence in English (hilariously, but I guess to be expected and provides nice continuity, it then spoke English with a French accent), so not much need to put things into Google Translate. I sometimes do this with ChatGPT directly to practice language - just start asking it questions in another language and ask it to explain in English if something is unclear, or give it a short prompt to get it to correct my questions before answering. The immersion you get when you can just start a sentence in the language you're practising and just switch "back" when you lack the vocabulary feels much better - you can be a lot more ambitious and throw yourself into sentences without a clue about how to finish them in the language you're practising.
- cwbuilds 3y agoYeah, good point. I think the FAQs need a question on "How to chat with Polly," or something similar which will give examples of the type of prompts you can use, and that you can use your native language to help if you're struggling, like you suggest. Thanks for the feedback.
- vidarh 3y agoMaybe even just show a sample conversation that includes some of those methods. I think especially for rank beginners in a language the biggest problem will be overcoming the problem of starting to say something you don't know how to finish, and so just getting people aware they can fall back to English (or other languages, I spoke Norwegian to it in the middle of a French conversation) might make people more comfortable getting started.
- cwbuilds 3y ago
- omgmajk 3y agoReally cool project, didn't test it much but tried German on it and since I don't really understand German that well it didn't go so well. Then again I just woke up so maybe I should've just googled translated the last answer and gone from there. Just wanted to say this is real cool.
- boo-ga-ga 3y agoI can imagine how many native speakers and speaking club hosts will lose their jobs. Really great app, love it!
- keiferwiseman 3y agoseems to work great! it would be great to have pinyin for Manderin.
- cwbuilds 3y agoThanks for the comment and thanks for the feedback! It's on the list of languages to add. If you'd like to get updates, feel free to sign up with a free account and you'll automatically be added to the mailing list.
- hackernews_me 3y agoI think the app currently is under heavy load, so it is unstable and give 5xx. When it has worked, it was amazing. I am ready to pay for it.
- cwbuilds 3y agoYeah - I apologize for how slow it is right now. I didn't anticipate nearly this much traffic. I'm going to be making it faster and more robust over the next few days
- cwbuilds 3y agoHave made some changes now. Should be running as fast as it was yesterday, but let me know if any issues.
- hackernews_me 3y agoDid not log off on purpose but I am logged off now. Also, cannot login. Cannot use the app at the moment. BTW it is a paid account.
- keeptrying 3y agoNice work. Would be nice to for the app to modulate difficulty dependent on respnoses. How did you get it to respond so fast?
- cwbuilds 3y agoThat's a great idea! Some people suggested beginner, intermediate and advanced modes, but this sounds much more user-friendly.
- keeptrying 3y agoI was searching for something like this as a complement to Duolingo. Duolingo is good for memorization but not for actual using the language in real life. Spanish is spoken so fast that something like this really really helps to understand the spoken language at the speed fo native speakers. I had been thinking of this use case for a while but had too many other things going on.
- itaysk 3y agoNice, I'm looking for something I can learn a second language with and also teach my son English. In both our cases, I found this bot to be too fluent for the level we're at. It would be great if the bot spoke simpler shorter language, perhaps even limited vocabulary. I tried to guide it through speaking but couldn't get it simple enough.
- cwbuilds 3y agoThanks for the feedback. Am thinking about ways to make it work for different levels (beginner/intermediate/advanced). If you want to receive a notification when this is integrated, feel free to sign up and you'll be added to the mailing list
- renaudr 3y agoLearn a language quickly by practising speaking with a human
- adammarples 3y agoIt's very cool. Some things I noticed: fluency scores are always None for me. If you ask their name they give a different one to the diarised name! Thirdly they come in very strong, above my level so I find it quite hard to use.
- cwbuilds 3y agoThanks for the feedback - that's all really useful. Do you mind if I ask what language you were using when the fluency score was none? Seems that it's broken for a few languages, so will fix it asap.
- adammarples 3y agoFrench
- bentoniteclay 3y agoA couple notes from trying this, though people have probably already said them: Would be nice to be able to pull down the conversation box so that it can fit more text in it (forgive my vocab, not a software guy lol). Would also be nice to cancel my audio if I screwed up, as is common when learning a language. This leads to incorrect words/phrases ending up in the conversation and hurting the flow. For this matter, it would also be nice to undo things you have already said, though perhaps this is a limitation with the ChatGPT API? All in all, really cool! Great job on this.
- jjallen 3y agoAnother thing I would want Chris is for the conversation prompt to be different in subsequent conversations. I'm sure you've thought about this.
- hio8 3y agoI'd really like to try this but every time I try it redirects me to https://www.prettypolly.app/payment-page https://www.prettypolly.app/payment-page and asks me to upgrade my subscription. I have yet to actually try it a single time. I've tried on several different days. Does the site actually work to try it for free or is the only way to try it to pay for a month?
- cwbuilds 3y agoHi there, sorry about the poor user flow at the moment. We had to take emergency measures and change the signup process to ensure that premium members are able to get a service. You have to log in before you try to upgrade to premium. Here's the link to log in: https://www.prettypolly.app/login https://www.prettypolly.app/login Sorry for the poor UX in the login process. We'll be fixing this soon.