Tongue: identificação de idioma no dispositivo
Identificação de idioma no dispositivo que lê um trecho curto de texto e nomeia o idioma, entre 84 idiomas, em dezenas de microssegundos.
O Tongue lê uma palavra, uma expressão ou uma frase e devolve o idioma em que ela está escrita, de "kann ich das haben" em alemão a "안녕하세요" em coreano. Ele é ajustado para texto curto, como caixas de busca, mensagens de chat e digitação no teclado: o caso mais difícil e mais útil da detecção de idioma em um dispositivo.
Duas etapas fazem o trabalho. Um roteador de sistemas de escrita sem parâmetros resolve o texto cuja escrita pertence a um único idioma: hangul, grego, tailandês e mais 22 são decididos de imediato, sem modelo. Para escritas compartilhadas, n-gramas de caracteres com hash alimentam um modelo int8 de 2 MB. Não há tokenizer, nem arquivo de vocabulário, nem runtime de inferência, e quando uma entrada curta é genuinamente ambígua, o Tongue diz que não tem certeza em vez de chutar.
Demo
Desempenho
Com 2 MB, ele enfrenta detectores até 130 vezes maiores.
Medido nos pesos int8 distribuídos, em três benchmarks públicos, com os outros detectores executados nas mesmas linhas e nos mesmos subconjuntos de idiomas. As tabelas completas e os modos de falha estão no cartão do modelo.
Casos de uso
Rotear texto por idioma
Escolher o modelo de tradução, o analisador ou a fila de suporte certos já nas primeiras palavras digitadas, inteiramente no dispositivo.
Teclados e digitação
Detectar o idioma no meio da frase para trocar a autocorreção, as sugestões ou o layout, ao custo de dezenas de microssegundos por tecla.
Busca e pipelines de conteúdo
Marcar strings curtas com um idioma antes de indexar ou moderar, sem ida e volta pela rede nem um serviço por requisição.
Incerteza honesta
"la casa" se lê igualmente em italiano e em espanhol. O Tongue informa um empate em vez de coroar um deles, para que o produto possa pedir mais texto.
O que ele faz
- 84 idiomas: 59 decodificados pelo modelo, 25 resolvidos só pela escrita.
- Pesos int8 de 2 MB, embutidos no pacote; nada é baixado.
- Dezenas de microssegundos por detecção, na thread principal.
- Respostas idênticas em Swift, Kotlin e JavaScript, garantidas por golden vectors compartilhados.
- Informa a confiabilidade e os empates apertados demais em vez de chutar.
Plataformas e instalação
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/tongue", from: "0.1.2")
import Tongue
let tongue = try Tongue()
tongue.detect("kann ich das haben").language
// "de"
// build.gradle.kts (Maven Central)
implementation("ai.desertant:tongue:0.1.2")
import ai.desertant.tongue.Tongue
val tongue = Tongue.bundled(context)
tongue.detect("kann ich das haben").language
// "de"
npm i @desert-ant-labs/tongue
import { Tongue } from "@desert-ant-labs/tongue";
const tongue = await Tongue.load();
tongue.detect("kann ich das haben").language;
// "de"
Add Tongue from Desert Ant Labs to this project.
Identificação de idioma no dispositivo que lê um trecho curto de texto e nomeia o idioma, entre 84 idiomas, em dezenas de microssegundos.
SDKs (use the one that matches this project's platform):
Swift (iOS, macOS)
Repo: https://github.com/Desert-Ant-Labs/tongue
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/tongue", from: "0.1.2")
Kotlin (Android)
Repo: https://github.com/Desert-Ant-Labs/tongue
// build.gradle.kts (Maven Central)
implementation("ai.desertant:tongue:0.1.2")
JavaScript / TypeScript (Web, Node.js)
Repo: https://github.com/Desert-Ant-Labs/tongue
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 that matches this project's platform, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
Especificações
- Idiomas
- 84, em 31 sistemas de escrita
- Tamanho no dispositivo
- Pesos int8 de 2,1 MB, dentro do pacote
- Latência
- Dezenas de microssegundos por detecção
- Abordagem
- Roteador de sistemas de escrita mais n-gramas de caracteres com hash para uma cabeça linear int8
FAQ
O que é o Tongue?
Identificação de idioma no dispositivo que lê um trecho curto de texto e nomeia o idioma, entre 84 idiomas, em dezenas de microssegundos.
O Tongue roda no dispositivo?
Sim. O Tongue roda inteiramente no dispositivo: a inferência acontece localmente, sem chamada a servidor, então os dados nunca saem do dispositivo.
Quais plataformas o Tongue suporta?
O Tongue é distribuído como SDKs nativos no dispositivo para Swift, Kotlin, JavaScript / TypeScript.
Quanto custa o Tongue?
Cada modelo é grátis para até 100 mil dispositivos ativos mensais por SDK. Inferência ilimitada por usuário. Fale conosco para licenças personalizadas.
Qual a precisão e a velocidade do Tongue?
Com 2 MB, ele enfrenta detectores até 130 vezes maiores.