Inspiration
It’s difficult to practice languages and speaking in general without having natural conversations. It's even harder to gauge improvement accurately and consistently. These factors make it extremely difficult to commit to learning a language, even if one has the will to do so. Parla aims to ameliorate these problems in a very straightforward way.
What it does
Parla is the AI chat bot that has a real, natural conversation with you in your language of choice. Choose a language and a topic, and let the conversation flow naturally. As language learners ourselves, we made it a priority for Parla to be of use to learners of varying skill levels. Thus, Parla will adapt to your skill level throughout the conversation, giving more thought provoking prompts the higher your proficiency. When the conversation is over, Parla will analyze your speech, notifying you of grammatical errors, and giving recommendations on how to improve individual responses as well as your overall conversational ability. Parla will also provide useful metrics including speech timing, and will gauge your confidence level.
How we built it
- React/Next.js for the frontend
- Flask/Python for the backend
- Cohere chat API for providing conversational responses
- Cohere generate API for providing recommendations
- Google cloud API for voice to text and text to speech, as well as translation
- LanguageTool API for detecting grammatical errors in speech
Challenges we ran into
We spent a lot of time trying to train custom models on Cohere to detect grammatical errors in many different languages before realizing that this was a gargantuan task. We also had difficulty with deciding how best to support different languages - we were ultimately decided to only support the ones that Cohere inherently supports, which are English, French, German, Spanish, and Italian. None of us had any significant experience using LLMs and NLP frameworks. Many thanks to all the representatives at Cohere that helped us think through our project and its limitations!
Accomplishments that we're proud of
- At many points in the project we were fully convinced that our project was flat out impossible. We're incredibly proud that we were able to stay true to the initial goal of providing an adaptable chatting partner for language learning that could provide good, accurate feedback.
- We feel that we explored a lot of the capabilities of Cohere, and we're proud that we ended up using a subset of the features that we feel made the most sense for our use case instead of the "everything but the kitchen sink" approach we initially went with for selecting features to use.
What we learned
- Jeffrey: Usage of LLMs, training models, and their limitations.
- Jueun: Collaborating with super cool devs :)
- Dylan: Using and training models on cohere.
- Bryan: The many pitfalls of training your own model.
What's next for Parla
Ultimately, Parla would like to support and be able to converse in all major languages. We'd also like to provide feedback beyond grammar and general recommendations, including improved sentence structure, diction, and even tone/speech variance. We're also interested in training Parla for more specific purposes such as language exam preparation.
Built With
- cohere
- flask
- google-cloud
- languagetool
- nextjs
- python
- react
Log in or sign up for Devpost to join the conversation.