Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs 菜单
Docs 主页
/

构建智能汽车售后诊断应用程序

开发一款汽车诊断应用。将 MongoDB Atlas 与 Voyage Embedding 模型相结合,可以解决复杂的车辆故障并降低保修成本。

使用案例: 人工智能智能搜索

行业: 制造

产品: MongoDB Voyage AIMongoDB Atlas

第 1 部分:上下文感知 RAG 解决了从汽车手册中检索静态文本的问题。然而,现代汽车售后支持涉及日益复杂的需求。当今的车辆是集成了大量软件的复杂系统。

随着车辆复杂性的增加,经销商维修车间面临着日益增长的需求。非计划的维修中断每年给行业带来巨大的成本。技术人员可能会花费大量时间(在某些情况下高达 30%)搜索信息,而不是专注于维修。一个常见的挑战是将软件代码、诊断故障码(DTC)与物理硬件问题关联起来,如果没有合适的工具,这将非常耗时。

NFF 事件几乎占保修成本的 30%。这些事件的发生是由于基于不完整或不清晰的诊断信息更换了组件,而实际上该部件功能正常。标准搜索工具可能无法完全应对这一挑战,因为它们缺乏将症状(如屏幕闪烁)与根本原因(如接地线松动)联系起来的上下文推理能力。

该解决方案帮助您在 MongoDB Atlas 上构建诊断助手应用。它使用 Voyage AI 模型来改进技术人员解决问题的方式:

  1. 自动故障树 (GraphRAG):超越关键词搜索。使用 MongoDB 的 $graphLookup 来建模车辆依赖关系。从症状系统根本原因,识别真正的故障路径。

  2. 启用可视搜索(多模态):识别特定的部件变体可能具有挑战性,尤其是对于仍在构建专业知识的技术人员而言。集成 Voyage AI 的 voyage-multimodal-3.5,使应用能够接受部件的照片并返回正确的替换 SKU,使部件识别更快、更准确。

  3. 优先精确(重排序):使用 Voyage AI 的 rerank-2.5 重新排序结果。帮助确保安全警告和已验证的修复方案在结果中突出显示。

构建症状到修复引擎。在 MongoDB Atlas 中整合您的应用数据、向量嵌入和诊断图表。这将技术人员的工作流统一到单个应用后端。

1
  • 文本:将 OEM 维修手册处理成数据块。保留 breadcrumb_trail(例如,Model Y > Powertrain > High Voltage)。

  • 图表构建:从维修公告中提取逻辑链接。将“如果 X,则检查 Y”的逻辑存储为边定义。

  • 视觉资产:使用 Voyage AI 嵌入原理图和组件照片。将二进制文件存储在 MongoDB GridFS 中。

2
  • 应用程序数据库:在 diagnostics_db 中存储手册数据块、故障树和用户会话。

  • 向量存储:维护双向量索引。使用 Voyage AI 的 Matryoshka 表示学习 (MRL) 来优化移动应用延迟。

  • 图表存储:通过文档引用隐式建模车辆拓扑结构。

3
  • 编排:管理维修会话流程。

  • 检索:执行向量搜索以识别故障,并通过图表遍历扩展上下文。

  • 优化:为前端 UI 对结果进行重排序。

  1. 输入:机械师扫描 VIN 并输入症状(“空调吹暖风”)或上传照片。

  2. 识别:应用检索特定车辆信息(配置、年份)和相关手册章节。

  3. 推理:应用使用 $graphLookup 来检查相关子系统(例如,“检查压缩机继电器”)。

  4. 验证:应用显示最可能的三种修复方案,按 Voyage AI 重排序器排序,并附上视觉验证辅助信息。

统一的向量、图表和多模态架构

图 1. 基于 MongoDB Atlas 的汽车诊断统一向量、图表和多模态架构

GraphRAG 设计模式。使用预物化边缘模式,在文档模型中直接将症状链接到修复方案。

在您的手册数据块中添加 relationships 数组。这使应用能够模拟高级技术人员的推理过程。

{
"_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"
}
}

将嵌入内容链接至 GridFS,以将图像直接提供给应用 UI。

{
"_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"
}
}

实现三个核心应用功能。访问 Github 存储库中的完整源代码

1

构建诊断按钮。使用向量搜索查找手册部分,并使用 $graphLookup 建议下一个逻辑步骤。

// 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
}
}
]
2

构建部件摄像头功能。使用 Voyage AI 嵌入图像并查询部件数据库。

# 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
}
}
])
3

在将结果发送到应用之前,先对结果进行优化。

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
)
  • 使用多模态嵌入:传统的多模态模型通过独立的网络处理文本和图像,导致混合内容出现检索偏差。Voyage AI 的 voyage-multimodal-3.5 使用统一的转换器架构,通过相同的骨干网络处理两种模态,消除了模态差距。这种架构支持在文档截图、PDF 和图表之间进行无缝检索,无需复杂的解析管道。

  • 结构胜过关键词:技术人员从系统角度而非关键词思考。行李箱锁扣(寄生电流)可能会导致电池没电。标准搜索无法发现这种关联。GraphRAG 能够捕捉这一因果关联。它可以让应用在用户查询电池相关信息时建议检查行李箱锁扣。

  • 统一后端简化开发:为向量、图表和图像构建独立的后端会拖慢开发速度。MongoDB Atlas 将这些统一到一起。您只需为整个诊断应用堆栈管理一个数据库连接。这种统一加速了功能迭代并简化了维护。

  • Mehar Grewal,MongoDB

  • Humza Akhtar,MongoDB

  • Daniel Jamir, MongoDB

后退

汽车诊断

在此页面上