Emo: sugestões de emoji no dispositivo
Sugestões de emoji no dispositivo que leem um trecho curto de texto e retornam os emoji que realmente combinam com ele, em 23 idiomas, em menos de 10 milissegundos.
O Emo prevê emoji relevantes a partir de textos curtos como tarefas, eventos de calendário e mensagens. “Consulta no dentista” retorna 🦷 🪥 🏥 🩺; “Pagar as contas” retorna 💰 💳 🧾. Ele é ajustado para a forma como as pessoas de fato escrevem e oferece variantes de tom de pele.
O Emo sugere emoji a partir do significado; ele não é um seletor de emoji. Um seletor mostra uma grade para navegar. O Emo lê o texto e propõe o emoji adequado, do jeito que um teclado preditivo propõe a próxima palavra. Um classificador de texto compacto de dois fluxos o mantém pequeno e rápido o suficiente para rodar a cada tecla digitada.
Demo
Desempenho
Sugestões abaixo de 10 ms a partir de um modelo de <6 MB, em 23 idiomas.
Medições internas. A semântica dos emoji é aproximada, então empates próximos no topo do ranking são esperados.
Casos de uso
Teclado e autocompletar
Sugira emoji enquanto o usuário digita, do jeito que um teclado preditivo sugere palavras, inteiramente no dispositivo.
Eventos de calendário e tarefas
Ajustado para entradas curtas: “Consulta no dentista” retorna 🦷 🪥 🏥 🩺, então um app de agenda pode rotular eventos automaticamente.
Mensagens
Mostre emoji adequados para uma mensagem em rascunho em vários idiomas, sem ida e volta à rede.
Complementa um seletor
O Emo trabalha a partir do significado, então ele fica ao lado da grade de emoji em vez de substituí-la.
O que ele faz
- Vocabulário curado de ~800 emoji do dia a dia, com variantes de tom de pele.
- Multilíngue: 23 idiomas, incluindo CJK, árabe, tailandês e hindi.
- Previsão em menos de 10 ms em celulares modernos.
- Modelo pequeno embutido, sem chamada a servidor.
Plataformas e instalação
// Swift Package Manager .package(url: "https://github.com/Desert-Ant-Labs/emo-swift", from: "0.5.0")
import Emo let emoji = try await Emo.suggestions(for: "Pay my bills") // ["💰", "💳", "🧾"]
// build.gradle.kts (via JitPack)
implementation("com.github.Desert-Ant-Labs:emo-kotlin:0.5.0")
import ai.desertant.emo.Emo
val emoji = Emo.suggestions("Pay my bills")
// ["💰", "💳", "🧾"]
npm i @desert-ant-labs/emo
import { suggestions } from "@desert-ant-labs/emo";
const results = await suggestions("Pay my bills");
// [{ emoji: "💰", confidence: 0.62 }, ...]
Especificações
- Idiomas
- 23, incluindo CJK, árabe, tailandês e hindi
- Tamanho no dispositivo
- ~5 MB embutido (modelo + tokenizer)
- Latência
- Menos de 10 ms por sugestão
- Abordagem
- Classificador de texto de dois fluxos: n-gramas lexicais mais um embedding multilíngue
FAQ
O que é o Emo?
Sugestões de emoji no dispositivo que leem um trecho curto de texto e retornam os emoji que realmente combinam com ele, em 23 idiomas, em menos de 10 milissegundos.
O Emo roda no dispositivo?
Sim. O Emo roda inteiramente no dispositivo: a inferência acontece localmente, sem chamada a servidor, então os dados nunca saem do dispositivo.
Quais plataformas o Emo suporta?
O Emo é distribuído como SDKs nativos no dispositivo para Swift, Kotlin, JavaScript / TypeScript.
Quanto custa o Emo?
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 Emo?
Sugestões abaixo de 10 ms a partir de um modelo de <6 MB, em 23 idiomas.