Meet ๐๐ฒ๐๐๐ (๐ง๐pe๐ฆcript ๐ฉoice ๐ssistant, https://github.com/AstraBert/TySVA), your (speaking) AI companion for everyday TypeScript programming tasks!๐๏ธ
TySVA is a skilled TypeScript expert and, to provide accurate and up-to-date responses, she leverages the following workflow:
๐ฃ๏ธ If you talk to her, she converts the audio into a textual prompt, and use it a starting point to answer your questions (if you send a message, she'll use directly that๐ฌ)
๐ง She can solve your questions by (deep)searching the web and/or by retrieving relevant information from a vector database containing TypeScript documentation. If the answer is simple, she can also reply directly (no tools needed!)
๐ To ease her life, TySVA has all the tools she needs available through Model Context Protocol (MCP)
๐ Once she's done, she returns her answer to you, along with a voice summary of what she did and what solution she found
But how does she do that? What are her components?๐คจ
๐ Qdrant + HuggingFace give her the documentation knowledge, providing the vector database and the embeddings
๐ Linkup provides her with up-to-date, grounded answers, connecting her to the web
๐ฆ LlamaIndex makes up her brain, with the whole agentic architecture
๐ค ElevenLabs gives her ears and mouth, transcribing and producing voice inputs and outoputs
๐ Groq provides her with speech, being the LLM provider behind TySVA
๐จ Gradio+FastAPI make up her face and fibers, providing a seamless backend-to-frontend integration
If you're now curious of trying her, you can easily do that by spinning her up locally (and with Docker!๐) from the GitHub repo โก๏ธ https://github.com/AstraBert/TySVA
And feel free to leave any feedback!โจ