Desert Ant Labs

Tongue

Identification de langueDisponible

Identification de langue sur l'appareil qui, à partir de quelques mots, tranche entre 84 possibilités, en microsecondes.

Démo

Identifiez la langue à partir de 3 mots.

« kann ich das haben », c'est de l'allemand. « 안녕하세요 », c'est du coréen. Trois mots, c'est le cas difficile, et trois mots, c'est ce qu'un champ de recherche vous donne.

À partir de trois mots, Tongue obtient 0,933 là où un détecteur de 293 Mo obtient 0,887. Tongue pèse 2 Mo et fonctionne en deux temps : certaines écritures n'appartiennent qu'à une langue, le hangul est du coréen et le thaï du thaï, tranché sans modèle. Le reste passe au modèle.

Tongue n'a besoin d'aucun tokenizer, fichier de vocabulaire ou runtime d'inférence : c'est ainsi que le package entier tient dans 2 MB. Quand l'entrée est trop courte pour trancher, Tongue signale une égalité.

0,933 depuis un modèle de 2 MB.

Avec 2 MB, Tongue atteint 0,933 sur des entrées FLORES-200 de trois mots, contre 0,887 pour un détecteur de 293 MB.

0,933
FLORES-200, 3 mots
contre 0,887 pour un détecteur de 293 MB
0,992
Tweets
benchmark eld, 9 066 lignes
84
Langues
2 MB
poids int8
pas de tokenizer, pas de runtime

Mesuré sur les poids int8 livrés, sur trois benchmarks publics, les autres détecteurs étant exécutés sur les mêmes lignes et sous-ensembles de langues. Tableaux complets et modes d'échec sur la fiche du modèle.

Cas d'usage

Identifiez la langue à partir de 3 mots.

Router le texte par langue

Choisir le bon modèle de traduction, l'analyseur ou la file de support dès les premiers mots saisis, entièrement sur l'appareil.

Claviers et saisie

Détecter la langue en cours de phrase pour changer l'autocorrection, les suggestions ou la disposition, pour quelques dizaines de microsecondes par frappe.

Recherche et pipelines de contenu

Étiqueter de courtes chaînes avec leur langue avant indexation ou modération, sans aller-retour réseau ni service par requête.

Demander plus de texte plutôt que deviner

« la casa » se lit aussi bien en italien qu'en espagnol. Tongue signale l'égalité au lieu de trancher : le produit peut attendre un mot de plus plutôt que de changer de clavier par erreur.

Inspiration

Des idées à construire avec Tongue. Copiez un prompt dans votre agent de code et lancez-vous.

Tongue

Route incoming messages to the right language agent.

Tongue

Auto-switch the keyboard and spellcheck to the language being typed.

Tongue

Tag user posts by language for search and moderation.

TongueRedact

Detect the language, then redact PII in that language.

Tongue

Detect the language of a search query and pick the right index.

TongueGist

Build an OpenClaw skill that tags and language-routes text.

TongueGist

A chat bot that tags and language-routes messages, in Node.

TongueGist

Build an agent skill that tags and language-routes text for an agent.

Ce que fait le modèle

  • 84 langues : 59 décodées par le modèle, 25 réglées par la seule écriture.
  • Poids int8 de 2 MB, inclus dans le paquet ; rien n'est téléchargé.
  • Quelques dizaines de microsecondes par détection, sur le thread principal.
  • Des réponses identiques en Swift, Kotlin et JavaScript, tenues par des golden vectors partagés.
  • Renvoie un score de fiabilité et signale chaque égalité.

Prise en main

Ajoutez identification de langue à votre application iOS or macOS, Android or web en quelques lignes de code. Docs Tongue.

iOS, macOS
Installation
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.1.0")
// target dependency
.product(name: "Tongue", package: "desert-ant-core")
Exemple - Swift
import Tongue

let tongue = try Tongue()
tongue.detect("kann ich das haben").language
// "de"
Construire avec un prompt
Add Tongue from Desert Ant Labs to this Swift project (iOS, macOS).

What it does: Tongue : identification de langue sur l'appareil.

SDK:

Swift (iOS, macOS)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.1.0")
// target dependency
.product(name: "Tongue", package: "desert-ant-core")

Reference:
- Model page: https://desertant.com/models/tongue/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
Android
Installation
// build.gradle.kts (Maven Central)
implementation("ai.desertant:tongue:3.1.0")
Exemple - Kotlin
import ai.desertant.tongue.Tongue

val tongue = Tongue.bundled(context)
tongue.detect("kann ich das haben").language
// "de"
Construire avec un prompt
Add Tongue from Desert Ant Labs to this Kotlin project (Android).

What it does: Tongue : identification de langue sur l'appareil.

SDK:

Kotlin (Android)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
// build.gradle.kts (Maven Central)
implementation("ai.desertant:tongue:3.1.0")

Reference:
- Model page: https://desertant.com/models/tongue/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
Web, Node.js
Installation
npm i @desert-ant-labs/tongue
Exemple - TypeScript
import { Tongue } from "@desert-ant-labs/tongue";

const tongue = await Tongue.load();
tongue.detect("kann ich das haben").language;
// "de"
Construire avec un prompt
Add Tongue from Desert Ant Labs to this JavaScript / TypeScript project (Web, Node.js).

What it does: Tongue : identification de langue sur l'appareil.

SDK:

JavaScript / TypeScript (Web, Node.js)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
npm i @desert-ant-labs/tongue

Reference:
- Model page: https://desertant.com/models/tongue/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.

Spécifications

Langues
84, sur 31 écritures
Taille sur l'appareil
Poids int8 de 2 MB, dans le paquet
Vitesse
Quelques dizaines de microsecondes par détection
Modèle
Routeur d'écritures plus n-grammes de caractères hachés vers une tête linéaire int8

Un ou deux mots sont souvent indécidables, et aucune taille de modèle ne règle le problème. Tongue signale une égalité ou une réponse provisoire : traitez une faible fiabilité comme « inconnu », pas comme une réponse.

Le malais et l'indonésien partagent trop de vocabulaire pour être séparés sur un court échantillon. Le mongol n'est couvert qu'en écriture traditionnelle : le mongol cyrillique est donc lu comme du russe.

Les noms de marque, les nombres et le code ne sont pas une langue, et recevront une supposition.

FAQ

Qu'est-ce que Tongue ?

Identification de langue sur l'appareil qui, à partir de quelques mots, tranche entre 84 possibilités, en microsecondes.

Tongue fonctionne-t-il sur l'appareil ?

Oui. Tongue s'exécute sur l'appareil, sans appel serveur : les données restent chez l'utilisateur.

Quelles plateformes Tongue prend-il en charge ?

Tongue est livré sous forme de SDK natif sur l'appareil pour Swift, Kotlin, JavaScript / TypeScript.

Combien coûte Tongue ?

Chaque modèle est gratuit jusqu'à 100k appareils actifs mensuels par SDK. Inférence illimitée par utilisateur. Contactez-nous pour des licences sur mesure.

Quelle est la précision ou la vitesse de Tongue ?

Avec 2 MB, Tongue atteint 0,933 sur des entrées FLORES-200 de trois mots, contre 0,887 pour un détecteur de 293 MB.

Ressources