Desenvolva um aplicativo de diagnóstico automotivo. Combine o MongoDB Atlas com os modelos de incorporação do Voyage para resolver falhas complexas em veículos e reduzir os custos de garantia.
Casos de uso: Inteligência artificial, pesquisa inteligente
Setores: Indústria
Produtos: MongoDB Voyage AI, MongoDB Atlas
Visão Geral da Solução
Parte 1: RAG sensível ao contexto resolveu o problema de recuperar texto estático nos manuais de carros. No entanto, o suporte pós-venda automotivo moderno envolve requisitos cada vez mais complexos. Os veículos de hoje são sistemas sofisticados com extensa integração de software.
A oportunidade de pós-venda
As oficinas de serviço das concessionárias enfrentam demandas crescentes à medida que a complexidade dos veículos aumenta. A interrupção não planejada dos serviços representa um custo significativo para o setor anualmente. Técnicos podem gastar bastante tempo, até 30% em alguns casos, buscando informações em vez de focar em reparos. Um desafio comum envolve a vinculação de códigos de software, os Códigos de Diagnóstico de Problemas (DTCs), a problemas físicos de hardware, o que pode ser demorado sem as ferramentas adequadas.
O desafio No Fault Found (NNF)
Os eventos NFF representam cerca de 30% dos custos de garantia. Eles ocorrem quando um componente é substituído com base em informações de diagnóstico incompletas ou pouco claras, mesmo que a parte estivesse funcionando corretamente. As ferramentas de pesquisa padrão podem não abordar totalmente esse desafio, pois podem não ter o raciocínio contextual necessário para conectar sintomas como uma interrupção de tela a causas subjacentes, como um cabo de aterramento solto.
O Aplicativo de Diagnóstico Inteligente
Esta solução ajuda a criar um aplicativo de Assistente de Diagnóstico no MongoDB Atlas. Ela utiliza modelos da Voyage AI para aprimorar a forma como os técnicos abordam a resolução de problemas:
Automatizar árvores de falhas (GraphRAG): vá além da pesquisa de palavras-chave. Use o
$graphLookupdo MongoDB para modelar dependências de veículos. Percorrer de Symptom a System a Root Causa para identificar o verdadeiro caminho da falha.Habilitar pesquisa visual (multimodal): identificar variantes de partes específicas pode ser um desafio, especialmente para técnicos que ainda estão construindo sua experiência. Integrate o voyage-multimodal-3.5da Voyage IA para permitir que o aplicativo aceite a imagem de uma peça e devolva o SKU de substituição correto, tornando a identificação de peças mais rápida e precisa para todos.
Priorize a precisão (reclassificação): use o rerank-2.5 da Voyage AI para reordenar os resultados. Ajude a garantir que os avisos de segurança e as correções verificadas apareçam em destaque nos resultados.
Arquiteturas de referência
Crie um mecanismo de sintomas para solução. Consolide os dados do aplicativo, as incorporações vetoriais e os grafos de diagnóstico no MongoDB Atlas. Isso unifica o fluxo de trabalho do técnico em um único backend do aplicativo.
Componentes do sistema
Serviço de Ingestão
Text: Processe os manuais de serviço do OEM em partes. Preserve o
breadcrumb_trail(por exemplo,Model Y>Powertrain>High Voltage).Construção de grafo: extraia links lógicos de boletins de serviço. Armazene a lógica "Se X, então verifique Y" como definições de edge.
Ativos visuais: incorpore esquemas e fotos de componentes usando a Voyage AI. Armazene arquivos binários no MongoDB GridFS.
Data Layer (MongoDB Atlas)
Banco de dados de aplicativos: armazene partes manuais, áreas de falhas e sessões de usuários no
diagnostics_db.Vector Store: mantenha índices vetoriais duplos. Use o Matryoshka Representation Learning (MRL) da Voyage AI para otimizar a latência de aplicativos para dispositivos móveis.
Armazenamento de Grafos: modele implicitamente a topologia do veículo por meio de referências de documentos.
Fluxo de trabalho do aplicativo
Entrada: o mecânico escaneia um VIN e digita um sintoma ("o ar condicionado não gela") ou envia uma foto.
Identificação: o aplicativo recupera o contexto específico do veículo (Trim, Ano) e seções relevantes do manual.
Motivo: o aplicativo usa
$graphLookuppara verificar subsistemas relacionados (por exemplo, "Verifique o relé do compressor").Verificação: o aplicativo exibe as três principais correções prováveis, classificadas pelo Reclassificador da Voyage AI, junto com as verificações visuais.
Figura 1. Arquitetura vetorial unificada, de grafo e multimodal para diagnóstico automotivo no MongoDB Atlas
Abordagem do modelo de dados
Projete seu esquema para GraphRAG. Use um padrão de edge pré-materializado para vincular sintomas a correções diretamente no document model.
Coleção de Diagnóstico (manual_chunks)
Adicione uma relationships array às suas partes manuais. Isso permite que o aplicativo simule o raciocínio de um técnico especialista.
{ "_id": ObjectId("..."), "chunk_id": "chunk_4059", "text": "Inspect the AC Compressor Clutch for engagement...", // Domain-specific embedding (voyage-context-3) "text_embedding": [0.02, -0.5, ...], // NEW: Diagnostic Logic Edges "relationships": [ { "type": "SEQUENTIAL_TO", "target_id": "chunk_4060", "description": "Next Step: Check Refrigerant Pressure" }, { "type": "CAUSES", "target_id": "dtc_b1000", "description": "Clutch failure triggers Code B1000" }, { "type": "APPLIES_TO", "target_id": "trim_performance", "description": "Only for Performance Trims" } ], "metadata": { "system": "HVAC", "component": "Compressor", "breadcrumb_trail": "HVAC > COOLING > DIAGNOSTICS" } }
Coleção de partes visuais (manual_images)
Vincule incorporações ao GridFS para servir imagens diretamente na IU do aplicativo.
{ "_id": ObjectId("..."), "image_id": "img_001", "gridfs_id": ObjectId("..."), // Link to binary image "description": "Connector View: AC Compressor C1", // 1024-dim Voyage AI Multimodal embedding "multimodal_embedding": [-0.1, 0.8, ...], "associated_chunks": ["chunk_4059"], "metadata": { "view_type": "connector_pinout", "model_year": "2024" } }
Construir a solução
Implemente três recursos principais do aplicativo. Acesse o código-fonte completo no repositório do GitHub.
Pesquisa Inteligente de Sintomas (GraphRAG)
Crie o botão Diagnose. Use a pesquisa vetorial para encontrar a seção manual e $graphLookup para sugerir a próxima etapa lógica.
// MongoDB Aggregation: Find Symptom -> Suggest Fix [ // Step 1: Find the relevant manual section { "$vectorSearch": { "index": "vector_index_text", "path": "text_embedding", "queryVector": <embedding_of_symptom>, "numCandidates": 100, "limit": 5 } }, // Step 2: Traverse the Fault Tree { "$graphLookup": { "from": "manual_chunks", "startWith": "$relationships.target_id", "connectFromField": "relationships.target_id", "connectToField": "chunk_id", "as": "suggested_path", "maxDepth": 1 } } ]
Ajuste para identificar (multimodal)
Crie o recurso Câmera de peças. Use a Voyage AI para incorporar a imagem e faça query no banco de dados de peças.
# Python / FastAPI snippet from voyageai import Client vo = Client(api_key="VOYAGE_API_KEY") # Feature: User takes a picture of a corroded connector query_emb = vo.multimodal_embed( inputs=[{"image": user_image_bytes}], model="voyage-multimodal-3.5" ).embeddings[0] # Search for the part results = collection.aggregate([ { "$vectorSearch": { "index": "vector_index_images", "path": "multimodal_embedding", "queryVector": query_emb, "limit": 5 } } ])
Classificação de precisão
Filtre os resultados antes de enviá-los para o aplicativo.
import voyageai # Rerank: Prioritize "Safety Warnings" and "TSBs" (Technical Service Bulletins) reranking = voyageai.Client().rerank( query="AC blowing warm 2024 Model Y", documents=retrieved_docs, model="rerank-2.5", top_k=3 )
Principais Aprendizados
Use incorporações multimodais: os modelos multimodais tradicionais processam texto e imagens por meio de redes separadas, o que gera vieses de recuperação com conteúdo misto. O voyage-multimodal-3.5 da Voyage AI usa uma arquitetura de transformador unificada que processa ambas as modalidades por meio do mesmo backbone, eliminando a lacuna entre as modalidades. Essa arquitetura permite uma recuperação otimizada entre capturas de tela de documentos, PDFs e diagramas sem pipelines complexos de análise sintática.
A estrutura supera as palavras-chave: os mecânicos pensam em sistemas, não em palavras-chave. Uma bateria descarregada pode ser causada pela trava do porta-malas (consumo parasítico). A busca padrão não faz essa conexão. O GraphRAG captura essa relação causal. Ele permite que o aplicativo sugira verificar a trava do porta-malas quando o usuário faz query sobre a bateria.
O backend unificado simplifica o desenvolvimento: a construção de backends separados para vetores, grafos e imagens atrasa o desenvolvimento. O MongoDB Atlas os unifica. Você gerencia uma conexão de banco de dados para toda a sua pilha de aplicativos de diagnóstico. Essa unificação acelera o desenvolvimento de recursos e simplifica a manutenção.
Autores
Mehar Grewal, MongoDB
Humza Akhtar, MongoDB
Daniel Jamir, MongoDB