Os Agentic Workflows do Kit de ML (com.google.mlkit:genai-agent, Alfa) permitem criar experiências de conversação autônomas e multiturno no dispositivo, com tecnologia do Gemini Nano e do serviço de sistema Android AICore.
Criada com base na classe GenerativeModel (acesso direto ao modelo),
a classe AgentRunner automatiza loops de agentes completos e orientados a metas
diretamente no seu app: observando o contexto, raciocinando sobre as entradas do usuário, agindo
com ferramentas Kotlin tipadas e avaliando o feedback até que uma
condição de encerramento seja atendida.
Padrões comuns de agentes
Os Agentic Workflows no dispositivo são otimizados para ciclos de raciocínio focados e deterministas, em que a intenção do usuário é traduzida em Ações no app estruturadas. Alguns padrões comuns incluem:
Padrão |
Exemplo |
Execução de ações no app e atalhos |
Traduzir solicitações em linguagem natural em comandos específicos do app, como aplicar ajustes de fotos em uma tela de edição, modificar as configurações de reprodução ou alternar as preferências do app. |
Pesquisa estruturada e cálculo local |
Buscar um registro específico por ID (como o status de um pedido ou o saldo de uma conta) e realizar cálculos matemáticos de várias etapas (como amortizações de empréstimos ou métricas de condicionamento físico). |
Filtragem e curadoria conversacionais |
Consultar e refinar de forma interativa itens de apps locais, como pesquisar em uma lista de tarefas local, filtrar uma playlist ou classificar itens de catálogo com base nos critérios do usuário. |
Entrada guiada em várias etapas |
Orientar os usuários passo a passo na entrada de dados estruturados, validando as entradas intermediárias com ferramentas locais antes do envio final. |
Desempenho e privacidade no dispositivo
Os Agentic Workflows são executados no Android AICore para oferecer uma execução particular e responsiva diretamente no dispositivo do usuário:
- Raciocínio local e privacidade de comandos: o loop de raciocínio e planejamento do modelo é executado inteiramente no dispositivo, sem latência de rede. Os dados de comandos do usuário permanecem privados no dispositivo. No entanto, as ferramentas individuais implementadas no seu app ainda podem fazer chamadas de rede ou consultar APIs do Cloud se o caso de uso exigir dados externos.
- Sessões multiturno gerenciadas: a interface
AgentSessionmantém o histórico de conversas na memória entre os turnos, para que você não precise gerenciar as transcrições manualmente. É possível recuperar memória a qualquer momento usando os métodossession.close(),deleteSession(sessionId)ouclearAllSessions(). - Proteções de execução: as configurações do agente aplicam um limite máximo de turnos
(o limite
maxTurns, que é 10 por padrão) como uma condição de encerramento de recursos para evitar loops de execução descontrolados, economizar bateria e proteger a capacidade de resposta do dispositivo.
Escolha entre geração personalizada, agentes e APIs específicas para tarefas
O Kit de ML organiza os recursos de IA generativa no dispositivo de acordo com o nível de personalização e orquestração que seu recurso precisa:
- Geração e agentes personalizados: trabalhe diretamente com o modelo de fundação Gemini Nano quando seu recurso exigir instruções personalizadas ou lógica específica do domínio. Escolha Agentic Workflows (usando a classe
AgentRunner, criada com base na classeGenerativeModel) quando quiser sessões multiturno gerenciadas e loops automatizados de chamada de ferramentas ou escolha acesso direto ao modelo (usando a classeGenerativeModel) para comandos personalizados, saída estruturada digitada ou histórico multiturno gerenciado pelo cliente. - Fala e áudio: use modelos dedicados de fala e IA generativa (como Reconhecimento de fala) para transcrever áudio falado em texto.
- Tarefas de texto e imagem: use tipos de recursos pré-configurados e específicos para tarefas e adaptadores LoRA ajustados sobre o modelo base compartilhado (como Descrição de imagem, Resumo, Revisão e Reescrita) para casos de uso de visão e escrita prontos para uso sem engenharia de comandos.
A tabela a seguir compara essas abordagens:
Consideração |
Agentic Workflows ( |
Acesso direto ao modelo ( |
APIs de tarefas de texto e imagem |
Arquitetura |
Camada de orquestração de alto nível criada com base no
|
Interface direta com o modelo de fundação Gemini Nano para comandos personalizados. |
Tipos de recursos específicos de tarefas com suporte de adaptadores LoRA ajustados no modelo base compartilhado. |
Contexto de vários turnos |
Sessões gerenciadas de várias interações ( |
Contexto multiturno gerenciado pelo cliente.
O |
Chamadas de tarefas sem estado e de entrada única. |
Chamada de ferramentas e ações |
Loop automatizado de chamada de ferramentas. Descobre AppFunctions do Android registradas, executa chamadas selecionadas pelo modelo e envia os resultados de volta para o modelo automaticamente. |
Declarações de ferramentas gerenciadas pelo cliente.
|
Não relevante (pipeline de tarefas fixas). |
Quando usar |
Use quando quiser uma orquestração automatizada para execução de ferramentas em várias etapas e sessões multiturno gerenciadas na memória. |
Use para comandos personalizados, compreensão de imagens multimodais, saída estruturada digitada ( |
Use quando o recurso corresponder a uma tarefa padrão de escrita ou visão e você quiser uma qualidade pronta para uso de LoRAs ajustados com configuração mínima. |
Próximas etapas
- Para configurar seu projeto e criar seu primeiro agente, consulte Começar a usar Agentic Workflows.
- Para saber como expor funções no app para o agente, consulte Definir ferramentas.
- Para gerenciar sessões multiturno e memória em ciclos de vida do Android, consulte Gerenciar sessões e ciclo de vida.
- Para coletar respostas de streaming e atualizar sua interface, consulte Eventos de streaming e integração de interface.