Use o MongoDB e a Agentic AI para prever falhas de hardware e automatizar respostas.
Casos de uso: Inteligência artificial, Internet das coisas
Setores: Manufatura e mobilidade
Produtos: MongoDB Atlas, MongoDB Atlas Vector Search, Coleções de séries temporais doMongoDB , Driver Node.js do MongoDB
Parceiros: Amazon Cama de Rock, Amazon Web Services, LangChain, Vercel
Visão Geral da Solução
Dos setores de Manufatura e Automotivo à energia e serviços públicos, o tempo de inatividade não planejado é uma das interrupções mais dispendiosas que as organizações podem enfrentar. Embora a manutenção preditiva ajude as equipes a antecipar falhas, os sistemas estão se tornando mais complexos, as cadeias de suprimentos estão mais fragilizadas e é mais difícil encontrar força de trabalho qualificada. Portanto, as organizações precisam de sistemas que possam prever e agir de forma autônoma.
Os sistemas de vários agentes que usam agentes com capacidade de IA utilizam LLMs, ferramentas e memória de agente para prever falhas e agir de acordo. Ao automatizar a tomada de decisões repetitivas, os agentes de IA permitem que trabalhadores qualificados se concentrem na resolução de problemas, reduzindo custos e aumentando a eficiência.
figura 1. Benefícios da manutenção preditiva para a Excelência Operacional
Esses benefícios se aplicam a vários setores, como:
Manufatura e automoção: os agentes podem detectar anomalias no hardware, acionar inspeções e reagendar automaticamente as tarefas de produção.
Transporte e logstica: os operadores de Frota podem usar agentes para monitorar a integridade do veculo, prever falhas de componentes e agendar manutenes para minimizar o tempo de inatividade.
Energia e serviços públicos: os agentes podem analisar a telemetria em tempo real de grades ou geradores e enviar equipes de reparo automaticamente quando problemas são detectados.
Autoespacial: os agentes podem coordenar diagnósticos em sistemas complexos e garantir que as ações de manutenção sejam executadas com o mínimo de interrupção.
Esta solução se concentra em um andar de fábrica. No entanto, é possível aplicar a mesma arquitetura e princípios em diferentes cenários.
Para criar essa solução, os sistemas multiagentes dependem do acesso pontual e contextual aos dados, o que permite que os agentes raciocinam, aprendam e ajam de forma eficaz. Os sistemas tradicionais de informação e OT não são projetados para esta escala e flexibilidade.
MongoDB Atlas, um banco de dados de uso geral, fornece suporte nativo para dados vetoriais, gráficos e séries temporais. No contexto de aplicativos empresariais para IA agente, o Atlas torna possível:
Identifique diversas entradas de telemetria e sensor de IoT em tempo real.
Armazene a memória do agente de curto e longo prazo em uma camada de dados unificada.
Suporte ao RAG para argumentos sensíveis ao contexto.
Escale de forma confiável para lidar com grandes volumes de dados de streaming com baixa latência.
Ao unir IoT empresarial e IA de agentes, o MongoDB Atlas habilita você a migrar do monitoramento e da predição para a ação inteligente e automatizada.
Arquiteturas de referência
Esta solução demonstra como você pode construir um sistema de manutenção preditiva de vários agentes usando MongoDB Atlas, LangGraph e Amazon Camas. Juntas, essas tecnologias simplificam processos complexos, como detecção de anomalias, análise de causa raiz, criação de ordem de trabalho e agendamento de manutenção.
Em alto nível:
O MongoDB Atlas serve como a camada de dados unificada, armazenando e indexando telemetria, memória do agente , incorporações de vetores e outros dados operacionais. Ele também fornece as ferramentas de recuperação necessárias aos agentes.
OLangGraph permite a coordenação baseada em gráficos entre agentes.
O Amazon Camado fornece os LLMs que permitem aos agentes raciocinar, analisar e gerar saídas.
A arquitetura segue um modelo de Supervisor-agente. O Supervisor coordena o fluxo de trabalho e delega tarefas a estes agentes especializados:
Agente de falha: Executa análise de causa raiz e gera relatórios de incidentes.
Agente de ordem de trabalho: rascunhos de ordens de serviço de manutenção com requisitos, habilidades e materiais.
Agente de planejamento: identifica o slot de manutenção ideal com base nas restrições de produção e recursos.
figura 2. Arquitetura de alto nível de um sistema de manutenção preditiva com vários agentes
Cada agente nessa arquitetura usa ferramentas, memória e um gráfico de estado. Juntos, esses componentes permitem que os agentes raciocinam, se lembrem e ajam de forma coordenada.
Ferramentas do Agente
Ferramentas são funções específicas de domínio que permitem que os agentes interajam com sistemas externos. Eles podem invocar queries de banco de dados , realizar pesquisas semânticas ou gravar saídas estruturadas de volta no MongoDB.
O código abaixo mostra como você pode registrar uma ferramenta para o Agente de Falha usando o driver MongoDB Node.js No exemplo, esta ferramenta usa o Vector Search para recuperar seções relevantes dos manuais da máquina.
export const retrieveManual = tool( async ({ query, n = 3 }) => { const dbConfig = { collection: "manuals", indexName: "default", textKey: ["text"], embeddingKey: "embedding", includeScore: true, }; const result = await vectorSearch(query, dbConfig, n); return JSON.stringify(result); }, { name: "retrieve_manual", description: "Retrieve the relevant manual for the alert via vector search.", schema: { type: "object", properties: { name: { type: "string", description: "Name of the tool for identification purposes", enum: ["retrieve_manual"], }, query: { type: "string", description: "The query to process", }, n: { type: "number", description: "Number of results to return (optional, default 3)", default: 3, }, }, required: ["name", "query"], }, } ); export function getTools() { return [ retrieveManual, retrieveWorkOrders, retrieveInterviews, generateIncidentReport, ]; }
Cada agente tem seu próprio conjunto de ferramentas, como mostrado na lista a seguir:
Agente de falha
retrieveManual
: pesquisa manuais para etapas de solução de problemas.retrieveWorkOrders
: procura reparos anteriores semelhantes.retrieveInterviews
: encontra notas do operador ou técnico em análises anteriores pós-incidente.generateIncidentReport
: Cria um relatório de caso e armazena no MongoDB.
Agente de ordem de trabalho
retrieveWorkOrders
: faz referência a ordens de trabalho anteriores para obter orientação.generateWorkOrder
: rascunhos um novo pedido com duração estimada, habilidades necessárias e materiais.
Agente de planejamento
checkInventoryAvailability
: verifica se as peças necessárias estão em estoque.checkStaffAvailability
: encontra técnicos com as habilidades certas.scheduleWorkOrder
: registra a tarefa no calendário de produção.
Você também pode expandir esse conjunto de ferramentas. Por exemplo, você pode adicionar novas funções para refletir processos comerciais exclusivos ou necessidades específicas do setor.
Memória de agente
Para que os agentes trabalhem de forma eficaz, eles precisam de sua própria memória para armazenar o contexto e as etapas de argumento. Isso permite que eles:
Manter a sequência dentro de uma tarefa.
Lembre-se das etapas anteriores.
Crie contexto entre interações.
Nesta arquitetura, o MongoDB Atlas armazena memória. A memória pode ser:
Memória de curto prazo: armazena o estado intermediário à medida que o agente se move pelo gráfico de estado. Isso garante que, se um processo for interrompido, ele possa ser retomado sem perder o progresso. Nesta solução, duas coleções armazenam este tipo de memória:
checkpoints
: captura o estado geral de um agente em cada etapa.checkpoints_writes
: registra as chamadas e saídas da ferramenta.
Memória de longo prazo: o MongoDB armazena dados históricos que informam as decisões atuais. Os agentes recuperam esses dados por meio de pesquisa vetorial, garantindo que o contexto histórico impulsione o argumento. As coleções incluem:
interviews
: Entrevistas e anotações pós-incidente de técnicos.workorders
: Registros históricos de ordens de trabalho.incident_reports
: Resumos e descobertas de eventos anteriores.
Para configurar a memória de curto prazo, você pode usar a MongoDBSaver
classe do LangGraph, que grava o progresso do agente nas coleções checkpoints
e checkpoints_writes
da seguinte forma:
import { MongoDBSaver } from "@langchain/langgraph-checkpoint-mongodb"; import { MongoClient } from "mongodb"; const client = new MongoClient("<connection-string>"); const checkpointer = new MongoDBSaver({ client: client, dbName: "<database-name>", checkpointCollectionName: "checkpoints", checkpointWritesCollectionName: "checkpoints_writes" });
Esta configuração habilita os recursos de memória e tolerância a falhas para seus agentes.
Gráfico de estado do agente
Um gráfico de estado é uma estrutura para modelar fluxos de trabalho como nós e bordas. Cada nó representa uma etapa de reflexão, chamada de ferramenta ou checkpoint. As bordas definem transições entre essas etapas. Os gráficos de estado tornam os fluxos de trabalho explícitos, repetíveis e resilientes.
Nesta solução, o LangGraph alimenta o gráfico do estado para coordenar os agentes e suas ferramentas. Os nós representam agentes especializados ou decisões de supervisão, enquanto as bordas definem sua ordem de execução.
Essa arquitetura garante que:
Os agentes podem ramificar com base nos resultados. Por exemplo, peças ausentes versus disponíveis.
Cada etapa escreve na memória e lê dela automaticamente.
O agente Supervisor orquestra agentes especializados para resolver tarefas de forma participativa.
O código abaixo cria um gráfico de estado que conecta o gerente, os agentes especializados e o checkpointer
usado para a memória de curto prazo do exemplo de código anterior.
const graph = new StateGraph(StateAnnotation) .addNode("supervisor", callModel) .addNode("failure", agentNode(failureGraph, "failure")) .addNode("workorder", agentNode(workorderGraph, "workorder")) .addNode("planning", agentNode(planningGraph, "planning")) .addEdge("__start__", "supervisor") .addConditionalEdges("supervisor", shouldContinue) .addEdge("failure", "supervisor") .addEdge("workorder", "supervisor") .addEdge("planning", "supervisor") .compile({ checkpointer });
Com esta configuração de gráfico, você pode rastrear, retomar e depurar todo o fluxo de trabalho de vários agentes.
Fluxo de trabalho de ponta a ponta
Unindo tudo, veja como os agentes colaboraram:
O agente Supervisor recebe um alerta, registra-o por meio do gráfico de estado e o passa para o Agente de Falha.
O agente de falhas usa ferramentas para consultar manuais, ordens de trabalho e pesquisas, fazendo referência à memória de longo prazo para obter contexto. Em seguida, ele gera um relatório de incidente.
O Agente de ordem de trabalho rascunhos uma nova ordem de trabalho com materiais necessários, habilidades e duração estimada. Ele usa a memória para aplicar os requisitos e ferramentas corretos para a saída.
Um checkpoint valida a ordem antes da execução.
O agente de planejamento usa seu próprio conjunto de ferramentas e memória para verificar a disponibilidade de peças, as programações da equipe e os conflitos de calendário. Em seguida, ele agenda o tarefa.
Quando todos os agentes tiverem concluído suas tarefas, o agente Supervisor atualizará o gráfico de estado para acompanhar a conclusão do fluxo de trabalho.
Você pode expandir e personalizar esse fluxo de trabalho com novos agentes, como:
Um agente de compras para colocar automaticamente os pedidos de partes.
Um agente de compliance para preparar relatórios regulatórios.
Um agente de otimização de mudanças para equilibrar o volume de trabalho dos técnicos.
Como as ferramentas, a memória e a orquestração de gráficos são modulares, você pode adicionar novos agentes sem interromper os existentes.
Abordagem do modelo de dados
Um sistema de manutenção preditiva multiagente depende de uma ampla variedade de dados, incluindo:
Leituras de sensores de alta frequência
Memória do agente
Manuais técnicos
Notas de conversa com humanos
Agendamentos da equipe
Registros de inventário
O modelo de documento flexível do MongoDB facilita a operacionalização desses dados em uma única solução. No MongoDB Atlas você pode armazenar:
Dados de série temporal para telemetria na granularidade do milissegundo.
Incorporações vetoriais para pesquisa semântica em manuais e ordens de serviço.
Metadados para unificar o contexto, como ID de fábrica, ID de máquina ou linha de produção.
Dados operacionais para agendas, calendários e inventário.
Coleções principais
Esta solução utiliza as seguintes collections para armazenar dados diferentes:
telemetry
: Leituras do sensor da máquina coletadas no local, armazenadas como uma coleção de séries temporais para ingestão, compressão e query eficientes. As coleções de séries temporais tornam eficiente o armazenamento e a consulta de milhões de leituras. Elas também preservam metadados contextuais, como identificadores de máquina, fábrica ou linha de produção.alerts
: Problemas ou anomalias previstas que acionam o fluxo de trabalho e notificam o Agente Supervisor.incident_reports
: Resultados da análise de causa raiz gerados pelo agente de falhas. Os resultados agregam contexto de telemetria, manuais e pesquisas.work_orders
: Redigido pelo Agente de Ordem de Trabalho. Inclui descrições de tarefas, duração estimada, habilidades necessárias e materiais.manuals
: Manuais de máquina armazenados com incorporações vetoriais para recuperação semântica por agentes.interviews
: Anotações e conversas pós-incidente com funcionários, fornecendo um contexto não estruturado, mas valioso.maintenance_staff
: Listas de funcionários, agendamentos de mudanças e especializações de habilidades usadas pelo agente de planejamento.inventory
: Disponibilidade, custo e prazo de entrega de peças de reposição. Essenciais para decisões de agendamento e aquisição.production_calendar
: Tarefas de produção, níveis de prioridade e atrasos aceitáveis. Usado para identificar a período de manutenção menos disruptiva .checkpoints
echeckpoints_writes
: captura o estado do agente e registra as chamadas e saídas da ferramenta.
Para obter um exemplo de documento de exemplo na coleção telemetry
, consulte o seguinte bloco de código:
{ "ts": { "$date": "2025-08-25T08:53:06.052Z" }, "metadata": { "factory_id": "qro_fact_1", "machine_id": 1, "prod_line_id": 1 }, "_id": { "$oid": "68ac24720d4c459561c42a4e" }, "vibration": 0.209, "temperature": 70.69 }
O documento de série temporal inclui os seguintes campos:
ts
contém o carimbo de data/hora da leitura.metadata
incorpora tags contextuais para fábrica, máquina e linha de produção.vibration
etemperature
consistem em valores numéricos de sensores.
Construir a solução
Para ver a implementação de demonstração completa dessa solução, consulte seu repositório do GitHub. Siga README
o do repositório, que aborda as etapas a seguir em mais detalhes.
Configurar e instalar os pré-requisitos
Instale o Node.js 18+, configure um cluster MongoDB Atlas e configure o acesso ao Amazon Camas do Rock.
Clone o repositório e instale suas dependências:
git clone git@github.com:mongodb-industry-solutions/multiagent-predictive-maintenance.git cd multiagent-predictive-maintenance npm install
Copie as variáveis de ambiente com o seguinte comando:
cp .env.example .env
Em seguida, atualize os valores com suas credenciais.
Personalizar e ampliar
Adicione seu próprio conteúdo, como manuais ou pesquisas, ao MongoDB e gere incorporações:
npm run embed
Ajuste o calendário de produção com o seguinte código:
npm run generate_calendar <months>
Você pode adicionar novos agentes à solução duplicando uma pasta do diretório agents
, configurando os arquivos tools.js
e graph.js
na pasta e, em seguida, registrando o agente no agents/config.js
.
Principais Aprendizados
Aproveite a IA por agentes: os sistemas multiagentes podem monitorar, raciocinar e executar tarefas de forma autônoma, simplificando os fluxos de trabalho e aumentando a eficiência.
Criar uma base de dados moderna: uma infraestrutura de dados de alto desempenho, baixa latência e escalável é essencial para operar de forma eficaz os agentes de IA em escala.
Integre IoT e IA sem problemas: o MongoDB Atlas fornece uma camada de dados unificada para telemetria, incorporações vetoriais, memória e recuperação de agente . Isso permite fluxos de trabalho de agentes confiáveis, seguros e flexíveis em ambientes empresariais.
Aja de acordo com as projeções rapidamente: transforme insights em ação automatizadas para impulsionar a Excelência Operacional.
Autores
Humza Akthar, MongoDB
Raphael Schor, MongoDB
Rami Pinto, MongoDB
Saiba mais
Para explorar os conceitos de IA multiagente na manutenção preditiva, leia o blog Unlock Multi-Agent AI for Predictive maintenance.
Para descobrir como a solução funciona, assista a este vídeo do YouTube.
Para configurar esta demonstração, visite o repositório GitHub.
Para saber como o MongoDB oferece suporte aos aplicativos de Manufatura e Automação, visite MongoDB para Manufatura e Mobilidade.
Para descobrir como criar aplicativos baseados em IA com o MongoDB, acesse MongoDB para Inteligência artificial.