Shunli MiniApp

A Telegram MiniApp that uses speech models to score Mandarin tones and adapt each lesson to the learner.

Role
ML Engineer
Focus
Speech · NLP · RecSys
Medixy health assistant interface

Building a tone-aware tutor around speed, accuracy and feedback.

The challenge

Learning tones shouldn't feel like guessing in the dark.

Most learners practise alone with no one to hear their tones, so mistakes go unnoticed and quietly turn into habits.

The goal was to build a model that hears each syllable, scores its tone and shows the learner exactly what to repeat.

Medixy interface overview

Understanding the data

Short recordings. Instant feedback.

Voice messages are processed right inside Telegram, so users never leave the chat.

A pitch tracker and a small CNN classify the tone of each syllable and feed results into reviews.

Medixy research
Data
Medixy user flow
System flow

The model

A lightweight model for a mobile product.

The tone classifier is trained on native and learner recordings and quantized so it responds in under a second on a CPU.

Review scheduling is built on a spaced-repetition model that adapts intervals to every mistake.

Medixy user interface
Medixy screen
Medixy screen

The model

A lightweight model for a mobile product.

The tone classifier is trained on native and learner recordings and quantized so it responds in under a second on a CPU.

Review scheduling is built on a spaced-repetition model that adapts intervals to every mistake.

Pipeline

01
Explore
Frame the ML task, metrics and data constraints.
02
Prepare
Clean, label and split the data into solid datasets.
03
Train
Train strong baselines, then iterate on the model.
04
Ship
Evaluate, deploy and watch for drift in production.
Outcome

Small,
but precise.

The final MiniApp brings speech recognition, tone scoring and adaptive review sessions into one chat-based tutor.

The main engineering rule remained consistent throughout the project: keep the model small without losing accuracy.

Medixy final product