ML no dispositivo no desenvolvimento móvel: o que é, quais frameworks e como funciona

Autor: IT Sectr Publicado: 2026-07-29 Tempo de leitura: 11 min

ML no dispositivo (on-device ML) — execução de modelos de aprendizado de máquina diretamente no dispositivo móvel sem enviar dados para um servidor. De acordo com um relatório da Google AI, 2025, mais de 70% dos usuários preferem aplicativos com on-device ML devido à privacidade e ausência de latência de rede. Core ML da Apple, TensorFlow Lite do Google e ML Kit permitem resolver tarefas de Vision, NLP, reconhecimento facial e de objetos completamente no dispositivo — sem internet e com consumo mínimo de energia.

Pontos principais

  • ML no dispositivo — execução de modelos de aprendizado de máquina diretamente em um dispositivo móvel sem processamento de dados no servidor.
  • Core ML — framework da Apple com aceleração por hardware no Neural Engine para iOS e macOS.
  • TensorFlow Lite — solução multiplataforma do Google com quantização e delegados GPU, NNAPI e XNNPACK.
  • ML Kit — SDK com APIs prontas para reconhecimento de texto, rostos, códigos de barras e objetos sem criar um modelo.
  • Vision e NaturalLanguage — ferramentas ML integradas no iOS para análise de imagens e texto.

O que é ML no dispositivo e por que é necessário em aplicativos móveis

ML no dispositivo (on-device ML) é uma abordagem na qual modelos de aprendizado de máquina são executados diretamente no dispositivo móvel sem enviar dados para um servidor remoto. Privacidade é a principal vantagem: os dados do usuário nunca saem do dispositivo. De acordo com uma pesquisa do Google (2024), 63% dos usuários recusam funcionalidades ML que exigem envio de dados para um servidor. On-device ML elimina a latência de rede, funciona offline e reduz o consumo de energia através de aceleração por hardware.

Vantagens do on-device ML sobre soluções em nuvem

On-device ML processa dados em milissegundos em vez de segundos — crucial para reconhecimento facial e de objetos em tempo real. Sem necessidade de conexão com a internet é outra vantagem: as funcionalidades ML estão disponíveis no modo avião e em regiões com conectividade instável. Core ML usa o Neural Engine em chips Apple A12+, fornecendo 11 trilhões de operações por segundo com consumo inferior a 1 W. Para aplicativos móveis, on-device ML tornou-se o padrão de facto em tarefas de Vision, NLP e reconhecimento de objetos.

Principais cenários de on-device ML em aplicativos móveis

ML em aplicativos móveis é usado para autenticação facial (Face ID), filtros AR no Snapchat e Instagram, rastreadores fitness com Pose Detection, digitalização OCR no Adobe Scan e entrada preditiva em teclados. Modelos personalizados para tarefas específicas são criados através de Core ML (iOS) ou TensorFlow Lite (Android). ML Kit é adequado para cenários típicos — reconhecimento de texto, rostos e códigos de barras sem necessidade de treinar um modelo.

Core ML: framework da Apple para ML no dispositivo no iOS

Core ML é o framework da Apple para executar modelos ML no iPhone, iPad, Mac e Apple Watch. Ele seleciona automaticamente a aceleração por hardware ideal: Neural Engine para redes neurais em dispositivos com A12+ (11 TOPS), GPU para tarefas de processamento de imagem e CPU para cálculos sequenciais. Core ML suporta formatos .mlmodel (original) e .mlmodelc (compilado). A conversão de modelos do PyTorch e TensorFlow é feita através do coremltools — uma biblioteca Python que preserva a topologia e os pesos.

Create ML e coremltools

Create ML é o aplicativo da Apple para treinar modelos simples sem escrever código. Para produção, usa-se coremltools — uma ferramenta de conversão do PyTorch, TensorFlow e scikit-learn. Coremltools suporta quantização float32 → float16 e int8, paletização de espaço de cor e remoção de operações redundantes para reduzir o tamanho do modelo.

python
import coremltools as ct

model = ct.convert(
    "resnet50.mlmodel",
    source="pytorch",
    convert_to="mlprogram"
)
model.save("Resnet50.mlpackage")

Neural Engine e aceleração por hardware do Core ML

Neural Engine é um neuroprocessador especializado nos chips Apple A12 e posteriores. 16 núcleos realizam até 11 trilhões de operações por segundo com consumo inferior a 1 W. Core ML direciona automaticamente os cálculos de redes neurais para o Neural Engine e os compatíveis com GPU para o Metal GPU. O desenvolvedor não precisa escolher o dispositivo — Core ML faz isso através do Performance Report, analisando o modelo e o hardware disponível.

TensorFlow Lite: ML no dispositivo multiplataforma do Google

TensorFlow Lite (TFLite) é a solução multiplataforma do Google para executar modelos ML no Android, iOS e Linux. Os modelos têm formato .tflite e são criados através do TFLiteConverter do ecossistema TensorFlow. TFLite suporta quantização float32 → int8, o que reduz o tamanho do modelo em 4 vezes mantendo 97–99% de precisão em tarefas de classificação. Google Play Services for TFLite atualiza automaticamente o runtime sem necessidade de relançar o aplicativo.

TFLiteConverter e quantização de modelos

TFLiteConverter é a ferramenta principal para converter modelos TensorFlow para o formato .tflite. A quantização int8 pós-treinamento comprime um modelo de 300 MB para 75 MB sem acesso ao conjunto de dados completo. O treinamento consciente de quantização (QAT) oferece perda mínima de precisão — menos de 1% no ImageNet. TFLiteConverter também suporta poda de grafo e remoção de operações não suportadas pelo runtime TFLite.

python
import tensorflow as tf

converter = tf.lite.TFLiteConverter.from_saved_model(
    "saved_model_dir"
)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_model = converter.convert()

Delegados TFLite: GPU, NNAPI e XNNPACK

Sem um delegado, o TFLite executa o modelo na CPU 3–5 vezes mais lento do que com aceleração por hardware. GPU Delegate usa OpenCL e OpenGL ES 3.1 no Android, Core ML Delegate usa Neural Engine no iOS. NNAPI Delegate utiliza NPU e DSP no Android 8.1+. XNNPACK Delegate fornece aceleração multiplataforma em CPU ARM com otimizações para processadores móveis. Para selecionar um delegado, use TfLiteGpuDelegate.create() com verificação de null no resultado.

ML Kit: soluções prontas para ML no desenvolvimento móvel

ML Kit é o SDK do Google com APIs prontas para on-device ML. Em aplicativos móveis, o ML Kit é usado para reconhecimento de texto (mais de 50 idiomas, incluindo manuscrito), Face Detection (468 pontos faciais chave), Barcode Scanning (QR, EAN-13, Code 128, PDF417, Data Matrix) e Object Detection. Todas as APIs funcionam completamente no dispositivo sem internet. ML Kit está disponível no iOS e Android com uma API unificada.

Face Detection e Text Recognition no ML Kit

Face Detection retorna as coordenadas do contorno facial, sobrancelhas, olhos, nariz e lábios, bem como o ângulo de inclinação da cabeça e o estado dos olhos. Máscaras AR e filtros de câmera são o caso de uso mais popular. Text Recognition extrai texto de fotos com até 99% de precisão em caracteres impressos. A API suporta reconhecimento em tempo real através do CameraX.

kotlin
val recognizer = TextRecognition.getClient()
val image = InputImage.fromBitmap(bitmap)

recognizer.process(image)
    .addOnSuccessListener { result ->
        result.textBlocks.forEach { block ->
            println(block.text)
        }
    }

Barcode Scanning e Object Detection no ML Kit

Barcode Scanning reconhece códigos de barras no fluxo de vídeo da câmera em tempo real. Object Detection identifica objetos em uma imagem com caixa delimitadora e rótulo de classe (pessoa, carro, animal). Pose Detection determina 33 pontos chave do corpo para aplicativos fitness e análise de movimento. Image Labeling retorna até 10 rótulos semânticos de imagem — "natureza", "cidade", "comida".

Vision e NaturalLanguage: ferramentas ML integradas no iOS e Android

A Apple fornece soluções ML integradas através do Vision e NaturalLanguage sem instalar SDKs de terceiros. Vision (VNRequest) realiza detecção de rostos, texto, códigos de barras e contornos no dispositivo. NaturalLanguage (NLTokenizer) fornece tokenização, lematização, identificação de idioma e análise de sentimento. No Android, os equivalentes são implementados através do ML Kit (reconhecimento) e SpeechRecognizer do android.speech (fala). Ferramentas integradas não exigem download de modelos — elas vêm pré-instaladas no sistema.

Vision framework: VNRequest e VNCoreMLRequest

Vision inclui VNDetectFaceRectanglesRequest (detecção facial), VNRecognizeTextRequest (reconhecimento de texto), VNDetectBarcodesRequest (códigos de barras) e VNDetectHumanBodyPoseRequest (esqueleto). VNCoreMLRequest integra um modelo Core ML personalizado no pipeline do Vision — por exemplo, classificação de emoções em rostos detectados. Todas as solicitações são executadas no Neural Engine com latência mínima.

swift
let request = VNRecognizeTextRequest { request, error in
    guard let observations = request.results
        as? [VNRecognizedTextObservation] else { return }
    for observation in observations {
        let topCandidate = observation
            .topCandidates(1).first
        print(topCandidate?.string as? String ?? "")
    }
}

let handler = VNImageRequestHandler(
    cgImage: image, options: [:]
)
try? handler.perform([request])

NaturalLanguage e SFSpeechRecognizer no iOS

NaturalLanguage fornece NLTokenizer para dividir texto em tokens, NLLanguageRecognizer para identificação de idioma (72 idiomas) e NLSentimentAnalyzer para análise de sentimento do texto. SFSpeechRecognizer é uma API de reconhecimento de fala com suporte a mais de 50 idiomas no dispositivo (iOS 13+). Requer permissão SFSpeechRecognizerAuthorizationStatus antes do uso. Os resultados chegam assincronamente através do SFSpeechRecognitionResultHandler.

Perguntas frequentes

O que é ML no dispositivo?

ML no dispositivo (on-device ML) é uma abordagem na qual modelos de aprendizado de máquina são executados diretamente em um dispositivo móvel sem enviar dados para um servidor. Core ML, TensorFlow Lite e ML Kit são os principais frameworks para on-device ML.

Como o Core ML difere do TensorFlow Lite?

Core ML é o framework da Apple para iOS e macOS com aceleração no Neural Engine. TensorFlow Lite é a solução multiplataforma do Google para Android, iOS e Linux. Core ML oferece melhor desempenho em dispositivos Apple, TFLite oferece versatilidade.

Quais tarefas o ML Kit resolve?

ML Kit resolve tarefas típicas de visão computacional e NLP: reconhecimento de texto, rostos, códigos de barras, objetos e posturas. Todas as APIs funcionam no dispositivo sem internet e não exigem a criação do seu próprio modelo.

É necessária internet para on-device ML?

Não, on-device ML funciona completamente localmente. Os modelos são carregados no dispositivo e executados sem conexão com a internet. ML Kit também oferece versões de API em nuvem com maior precisão, mas o modo on-device está disponível offline.

Qual framework escolher para ML no desenvolvimento móvel?

Para apenas iOS, escolha Core ML — ele usa o Neural Engine e é fortemente integrado com o ecossistema Apple. Para projetos multiplataforma, escolha TensorFlow Lite. Para tarefas típicas sem modelo personalizado, escolha ML Kit com APIs prontas.

Resumo

  • ML no dispositivo — execução de modelos diretamente em um dispositivo móvel sem enviar dados para um servidor, com latência de rede zero.
  • Core ML — framework da Apple com aceleração por hardware no Neural Engine para iOS e macOS.
  • TensorFlow Lite — solução multiplataforma do Google com quantização int8 e delegados GPU, NNAPI, XNNPACK.
  • ML Kit — SDK com APIs prontas para reconhecimento de texto, rostos e códigos de barras sem criar um modelo.
  • Vision e NaturalLanguage — ferramentas ML integradas no iOS sem instalar bibliotecas de terceiros.
  • Quantização reduz o tamanho do modelo em 4 vezes com perda mínima de precisão — padrão para aplicativos móveis.
  • On-device ML é um padrão obrigatório para aplicativos com dados confidenciais e cenários de uso offline.

Vamos desenvolver um aplicativo móvel chave na mão

A IT Sectr cria aplicativos para iOS e Android para startups e empresas desde 2017. Nós vamos aconselhá-lo e propor a melhor solução.

Discutir o projeto