Pitch: Munio - Melhore suas habilidades de conversação em inglês usando AI!
Olá pessoal👋👋, recentemente eu criei um web app bem bacana chamado munio. O seu objetivo é melhorar a habilidade de conversação em inglês dos usuários utilizando AI para analisar suas habilidades.
Motivação
A Google tem uma plataforma de devs e há alguns meses atrás recebi uma notificação sobre uma competição deles para promover sua AI: Gemini. Como tenho bastante curiosidade para mexer com AI e também estava querendo praticar algumas tecnologias totalmente diferentes da minha zona de conforto, resolvi aceitar o desafio e quem sabe ganhar hehehe
Através deste aplicativos, consegui mexer em diversas ferramentas que sempre tive curiosidades, mas nunca fiz um projeto que precisasse utilizar tudo:
- Angular 18 (Sempre usei VueJS ou React)
- NestJS (Apenas NodeJS com express ou alguma solução back-end, exemplo do Nextjs)
- Knex
- E diversas outras ferramentas e provedores legais que não mexi e tive a oportunidade (você pode conferir cada tecnologia no readme dos repositórios)
Como o app funciona
Aqui há um vídeo demonstrativo deste app:
https://www.youtube.com/watch?v=OKJxFreoiRg
De forma geral, o objetivo do app é melhorar sua conversação com alguns exercícios bem bacanas. Atualmente, possuí dois modos: sessão e conversação.
O modo "sessão"
No modo sessão, você escolherá seu nível de dificuldade, o contexto (rotina, escola, cinema, etc) e o tamanho da sessão, onde você escolhe a quantidade de lições que deseja fazer.
Com base nestas informações, utilizo a AI para gerar algumas frases aleatorias.
Agora, o app exibirá para você uma frase e você precisa usar seu microfone para falar
Após você falar e enviar sua frase, a AI fará uma análise do seu áudio, verificando a frase respondida e enviará um feedback de onde você pode melhorar.
Aqui, você pode repetir quantas vezes quiser ou prosseguir. No fim, aparecerá um botão para finalizar a sessão, onde a AI gerará um feedback geral com base nos feedbacks anteriores.
O modo "conversação"
Neste modo, é bem interessante, pois você conversará com uma AI, semelhante à um diálogo em qualquer situação.
Da mesma maneira que nas sessões, você define suas preferências, onde uma pequena diferença é que, ao invés de escolher a quantidade de tarefas, você escolhe a duração do diálogo: curto, médio ou longo.
Ao solicitar a criação da conversação, iremos utilizar a AI para gerar um diálogo com base nas informações inseridas pelo usuário. Ela também determinará o fluxo de quem fala o quê.
Aqui, é bem interessante porque é utilizado websocket para tornar o diálogo mais fluído, onde trabalhamos por eventos.
Como a AI que determinará quem inicia a conversa, uma da seguintes situações podem ocorrer e o fluxo continuará até que seja finalizada a conversa:
- Caso seja vez da AI responder a próxima frase, nós utilizando o TTS do Google para issopegamos a frase e transformamos em audio. Este audio, é enviado para o usuário e o frontend exibirá.
- Caso seja o usuário que deve falar a próxima frase, então será solicitado para ele responder a frase pendente.
- Neste cenário, nós utilizamos a AI para fazer a análise do audio enviado para o usuário, semelhante ao modo sessão.
A conversa irá fluindo até acabar todas as mensagens geradas pela AI, no fim, geramos um feedback geral para o usuário, apresentando as suas falhas e melhorias.
Open Source
Esta versão deste APP é totalmente gratuíta e você pode autohospedar =), atualmente só tem interface para os serviços do google, porém, possuí uma boa estrutura para permitir diversos tipos de provedores (ex: aws s3, openai api, etc)
- https://munio.cloud
- https://github.com/muniocloud/web-server
- https://github.com/muniocloud/web-client
Eu:
https://github.com/gabrielsenadev
Agradecimentos
Este é meu primeiro post e fico feliz que você leu até aqui. Até a próxima!