Intent · Mina · Ewe · West Africa

Détection d'intention vocale en Mina et Ewe.

KUMA collecte des enregistrements audio en Mina/Ewe et entraîne un modèle capable de comprendre ce qu'un locuteur veut faire — commander un trajet, une livraison, ou autre chose.

Contribuer au dataset Voir les données
Contexte

Un manque de données

Les modèles de reconnaissance vocale sont entraînés sur des corpus existants. Pour le Mina et l'Ewe, ces corpus sont quasi inexistants. Il n'y a pas de modèle capable de comprendre ces langues parce qu'il n'y a pas encore de données pour les entraîner.

KUMA est un outil de collecte. Des locuteurs enregistrent des phrases, les transcriptions sont vérifiées, et les données sont structurées pour l'entraînement.

~4M
locuteurs estimés du Mina/Ewe au Togo et au Ghana
<10h
d'audio ASR publiquement disponibles pour ces langues
0.3%
des données ASR mondiales couvrent les langues africaines
2000+
langues africaines, dont la grande majorité sans ressource vocale
Les données

Les données disponibles

Le fossé entre les langues dominantes et les langues africaines dans les systèmes ASR n'est pas marginal. Il est structurel.

Représentation ASR mondiale
Part des langues africaines dans les grands datasets de reconnaissance vocale
0.3% Afrique
Langues africaines — 0.3%
Reste du monde — 99.7%
Locuteurs vs ressources
Mina/Ewe — nombre de locuteurs face aux heures de data disponibles
Locuteurs estimés
~4 000 000
Heures audio ASR publiques
< 10 heures
Modèles ASR disponibles
0 modèle fiable
Le fossé
Heures de données ASR par langue (ordre de grandeur)
Anglais
Mandarin
Espagnol
Swahili
Bambara
Ewe
Mina
Sources : Common Voice, OpenSLR, FLEURS (2024)
Architecture

Le pipeline KUMA

Un locuteur enregistre une phrase. Le pipeline transcrit l'audio et extrait une intention structurée.

01 · Voix
Locuteur Mina/Ewe enregistre une phrase. Audio OGG/WAV transmis au pipeline.
02 · Transcription
Le modèle ASR transcrit l'audio en français.
03 · Analyse
Un modèle de langage extrait l'intention et les entités depuis la transcription.
04 · JSON
Intent structuré retourné avec entités vérifiées. Prêt à brancher sur n'importe quelle application.
// voix : "Je veux aller a la Place de la Paix"
{
  "intent": "COMMANDE_TRAJET",
  "confidence": 0.94,
  "entities": {
    "destination": "Place de la Paix",
    "destination_normalized": "Place de la Paix, Lomé"
  },
  "transcription": "Je veux aller a la Place de la Paix"
}
API

Intégrez KUMA dans votre application

Accès programmatique à la détection d'intention vocale en Mina/Ewe. Un flow simple en trois étapes — credentials, token, appel.

01 · Accès
Demander un accès
Remplissez le formulaire ci-dessous. Nous validons votre cas d'usage et vous envoyons votre client_id + client_secret par email.
02 · Token
Obtenir un access token
Échangez vos credentials contre un JWT valable 1 heure via POST /auth/token. Le secret ne circule plus après cette étape.
03 · Appel
Analyser un audio
Soumettez un audio via POST /analyze, récupérez un request_id immédiatement, puis pollez GET /result/{id} pour l'intention détectée.
# 1. Obtenir un token
import httpx

resp = httpx.post("https://api.kuma.ai/auth/token", data={
    "client_id":     CLIENT_ID,
    "client_secret": CLIENT_SECRET,
})
token = resp.json()["access_token"]

# 2. Soumettre un audio
headers = {"Authorization": f"Bearer {token}"}
with open("audio.wav", "rb") as f:
    r = httpx.post("https://api.kuma.ai/analyze",
                   headers=headers, files={"audio": f})
request_id = r.json()["request_id"]

# 3. Récupérer l'intention
result = httpx.get(
    f"https://api.kuma.ai/result/{request_id}",
    headers=headers,
).json()
print(result["intent"])  # → "COMMANDE_TRAJET"
# 1. Obtenir un token
TOKEN=$(curl -s -X POST https://api.kuma.ai/auth/token \
  -d "client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET" \
  | jq -r .access_token)

# 2. Soumettre un audio
REQUEST_ID=$(curl -s -X POST https://api.kuma.ai/analyze \
  -H "Authorization: Bearer $TOKEN" \
  -F "audio=@audio.wav" \
  | jq -r .request_id)

# 3. Récupérer l'intention
curl https://api.kuma.ai/result/$REQUEST_ID \
  -H "Authorization: Bearer $TOKEN"
Demander un accès
Décrivez votre projet. Nous vous répondons sous 48h avec vos credentials.
✓ Compte créé !
Conservez ces credentials en lieu sûr — ils ne seront plus affichés. Votre compte sera activé sous 48h.
client_id      
client_secret
Sécurité JWT
Votre client_secret ne circule qu'une seule fois pour obtenir un token. Le JWT expire après 1h. En cas de compromission, contactez-nous pour révoquer l'accès immédiatement.
100 requêtes/mois gratuites
Chaque compte bénéficie de 100 appels gratuits par mois. Chaque appel à /analyze consomme 1 crédit. Quota épuisé ? Contactez-nous pour l'augmenter.
Traitement asynchrone
L'analyse audio prend 3 à 15 secondes. L'API répond immédiatement avec un request_id et traite en arrière-plan. Pollez GET /result/{id} pour récupérer l'intention.
Formats supportés
OGG, WAV, MP3, M4A, WebM. Taille max 25 MB. Langues : Mina, Ewe (transcription automatique vers le français).
Contribuer

Rejoindre le projet

Deux façons de participer : enregistrer des phrases et corriger des transcriptions. Ou intégrez directement l'API dans votre application.

Se connecter
Accès au collector. Tableau de bord personnel. Suivez votre progression dans la collecte audio.
Acceder au collector
Devenir annotateur
Enregistrez des phrases en Mina/Ewe et corrigez les transcriptions automatiques.
Contribuer au dataset
Intégrer l'API
Accès programmatique à la détection d'intention vocale. Demandez vos credentials et branchez KUMA sur votre application.
Demander un accès

Le rôle annotateur est attribué après inscription. Contact : williams.stanley.desouza@gmail.com