MongoDB Atlas와 Google Cloud 도구 모음을 사용하여 실시간 음성 기반 자동차 경험을 만드는 방법을 학습하세요. 차량 데이터, 사용자 컨텍스트, 차량 매뉴얼 임베딩을 결합하여 운전자의 요구에 맞게 적응하는 스마트하고 확장 가능한 차량 내 보조 시스템을 만듭니다.
산업: 제조 및 모빌리티
제품: MongoDB Atlas Database, MongoDB Atlas Vector Search
파트너: Google Cloud, PowerSync
솔루션 개요
자동차 제조업체들이 다음 세대 운전 경험을 제공하기 위해 경쟁하는 가운데, 지능적이고 사용자 친화적인 디지털 시스템으로 차별화를 꾀해야 한다는 압박이 커지고 있습니다. 차량 내 음성 어시스턴트는 중요한 기회로 부상했지만, 대부분은 여전히 내비게이션 설정이나 음악 제어와 같은 기본 명령에 국한되어 있습니다. 생성형 인공지능의 부상으로, 이러한 한계를 넘어 운전 중에 진정으로 개인화되고 역동적인 상호작용을 제공할 수 있는 명확한 경로가 열리고 있습니다.
이 솔루션은 자동차 팀이 생성형 AI로 구동되고 MongoDB Atlas로 지원되는 확장 가능하고 실시간 음성 비서를 구축하는 방법을 보여줍니다. 이 아키텍처는 차량 텔레메트리, 사용자 선호도 및 자동차 매뉴얼 임베딩을 통합하여 각 운전자의 요구에 맞게 적응할 수 있는 차량 내 어시스턴트를 만듭니다. MongoDB Atlas의 유연한 문서 모델과 내장된 벡터 검색을 사용하면 개발자는 데이터 복잡성을 간소화하고 더 나은, 더 직관적인 차량 내 경험을 위해 기능을 더 빠르게 제공할 수 있습니다.

그림 1. 작동 중인 생성형 AI 차량 내 어시스턴트
진행 과정에서 팀은 다음을 학습하게 됩니다.
구조화된 데이터와 비구조화된 데이터를 통합하여 AI 시스템의 문맥을 확장합니다.
확장 가능한 클라우드 네이티브 아키텍처를 통해 실시간 상호 작용을 활성화합니다.
Atlas Vector Search로 구동되는 시맨틱 검색을 통해 개인화된 경험을 제공합니다.
이 솔루션은 자동차 산업에 중점을 두고 있지만, 그 잠재력은 훨씬 더 다양한 분야로 확장될 수 있습니다. 교통, 의료, 호텔, 가전제품과 같은 산업은 고객 참여를 강화하고, 마찰을 줄이며, 지원을 간소화하기 위해 생성형 AI 음성 인터페이스를 탐색하고 있습니다. 스마트 홈 어시스턴트, 디지털 컨시어지, 또는 AI 기반 의료 분류 시스템 등 어떤 형태의 서비스든 이 아키텍처는 음성 중심적이고 데이터 기반의 직관적이고 관련성 있는 경험을 빌드할 수 있는 기반을 제공합니다. 다양한 산업의 회사들이 생성형 인공지능과 MongoDB를 통해 음성 기술의 힘을 활용하여 사용자 경험을 혁신하고 있습니다.
참조 아키텍처
더 스마트한 차량 내 어시스턴트를 구현하기 위해, 클라우드와 엣지 기술을 하나로 융합하여 원활한 경험을 제공하는 아키텍처를 설계했습니다. 그 중심에는 데이터 계층으로 작동하는 MongoDB Atlas가 있으며, Google Cloud의 AI 기능과 결합되어 있습니다. 이 아키텍처는 빠르고 개인화되며 신뢰할 수 있는 상호작용을 보장합니다.
그림 2. 생성형 AI 차량 내 어시스턴트의 참조 아키텍처
작동 방식에 대해 자세히 설명하겠습니다.
내장 구성 요소
이 시스템들은 차량 내 운전자 가까이에서 실행되며, 실시간 음성 상호작용을 가능하게 합니다.
차량 콘솔: 차량 내부 인터페이스로, 사용자가 어시스턴트와 대화하고 응답을 받는 곳입니다. 이 데모에서는 웹 앱이지만 실제 차량의 내장 시스템을 나타냅니다.
로컬 데이터 저장: 차량은 SQLite를 기반으로 한 경량 에지 데이터베이스인 PowerSync SDK를 사용하여 주요 신호를 로컬에 저장합니다. 이것은 진단 데이터에 빠르게 액세스할 수 있도록 보장하며, 데이터를 MongoDB Atlas와 동기화 상태로 유지합니다.
어시스턴트 백엔드: 이 구성 요소는 대화를 관리합니다. Google Cloud 음성-텍스트를 사용하여 음성 전사를 처리하고 운전자의 의도를 파악합니다. 쿼리에 따라 직접 응답하거나 도구를 호출하여 추가 데이터를 가져오거나 조치를 취할 수 있습니다. 데모 버전에는 네 가지 샘플 도구가 포함되어 있습니다.
매뉴얼 참조: Atlas Vector Search를 사용하여 자동차 매뉴얼에서 관련 정보를 조회합니다.
진단 실행: 로컬 차량 데이터에서 현재 진단 코드를 가져옵니다.
경로 재계산: 운전자가 정차 지점을 추가하면 경로를 조정합니다.
채팅 종료: 대화를 원활하게 종료합니다.
const functionDeclarations = [ { functionDeclarations: [ { name: "closeChat", description: "Closes the chat window when the conversation is finished. By default it always returns to the navigation view. Ask the user to confirm this action before executing.", parameters: { type: FunctionDeclarationSchemaType.OBJECT, properties: { view: { type: FunctionDeclarationSchemaType.STRING, enum: ["navigation"], description: "The next view to display after closing the chat.", }, }, required: ["view"], }, }, { name: "recalculateRoute", description: "Recalculates the route when a new stop is added. By default this function will find the nearest service station. Ask the user to confirm this action before executing.", parameters: { type: FunctionDeclarationSchemaType.OBJECT, properties: {}, }, }, { name: "consultManual", description: "Retrieves relevant information from the car manual.", parameters: { type: FunctionDeclarationSchemaType.OBJECT, properties: { query: { type: FunctionDeclarationSchemaType.STRING, description: "A question that represents an enriched version of what the user wants to retrieve from the manual. It must be in the form of a question.", }, }, required: ["query"], }, }, { name: "runDiagnostic", description: "Fetches active Diagnostic Trouble Codes (DTCs) in the format OBD II (SAE-J2012DA_201812) from the vehicle to assist with troubleshooting.", parameters: { type: FunctionDeclarationSchemaType.OBJECT, properties: {}, }, }, ], }, ];
클라우드 구성 요소
이들은 AI 인텔리전스, 확장 가능한 저장소, 데이터 처리 역량을 제공합니다.
데이터 수집: 자동차 설명서와 같은 비정형 콘텐츠는 Google Cloud 저장소에 업로드됩니다. 이 작업은 Pub/Sub, Cloud Run, 및 Document AI를 사용하여 PDF를 청크로 분할하는 파이프라인을 트리거합니다. Vertex AI는 이러한 청크에 대한 임베딩을 생성하고, 시맨틱 검색을 위해 MongoDB Atlas에 저장합니다.
음성 API 제공: Google Cloud의 텍스트-음성과 음성-텍스트는 자연스러운 음성 상호작용을 처리합니다. Vertex AI: 검색 쿼리에 대한 텍스트 임베딩을 제공하며, 어시스턴트에서 사용하는 LLM(Gemini)을 지원합니다.
데이터 저장 및 검색: MongoDB Atlas는 다음을 저장합니다.
Atlas Vector Search를 통해 검색하기 위한 수동 청크 임베딩.
사용자 기본 설정 및 세션 데이터.
차량 신호 — 최신 값과 전체 time-series 텔레메트리.
Atlas Vector Search는 사용자의 질문을 가장 관련성 높은 매뉴얼 섹션과 연결하여 검색 증강 생성(RAG) 흐름을 지원합니다. MongoDB의 네이티브 지원으로 구조화된 데이터, 반구조화된 데이터, 벡터 데이터를 한 곳에서 관리하면 보조 로직이 간소화되고 개발 속도가 빨라집니다.
데이터 동기화: 차량과 클라우드 간의 양방향 동기화를 위해 PowerSync를 사용합니다.
차량에서 클라우드로: 차량은 진단 코드, 속도 또는 가속도와 같은 원격 분석 데이터를 전송합니다. 클라우드 실행 함수는 이를 Atlas에서 처리하고 저장합니다.
클라우드에서 차량으로: OTA 업데이트나 원격 잠금과 같은 업데이트 또는 조치를 원격으로 차량에 전송할 수 있습니다.
대화형 AI에서 MongoDB의 역할
MongoDB Atlas는 이 솔루션을 지원하는 개발자 데이터 플랫폼입니다. 아키텍처 개선 방법은 다음과 같습니다.
운영 및 벡터 데이터 통합: 차량 신호, 벡터 임베딩, 사용자 세션이 단일하고 일관적인 플랫폼에 함께 저장됩니다.
더 관련성 있는 응답이 가능: Atlas Vector Search는 대용량 문서에서 적절한 청크를 즉시 조회하여 정확하고 맥락이 풍부한 응답을 제공합니다.
엔터프라이즈 규모에 맞춘 설계: 단일 모델이든 글로벌 플릿이든, MongoDB Atlas는 내장형 확장성, 고가용성 및 엔터프라이즈급 보안을 제공합니다.
엣지와 클라우드 동기화 간소화: PowerSync와 MongoDB는 차량 내 환경과 클라우드 환경을 원활하게 연결하여 동기화를 실현합니다.
이 아키텍처는 지원하는 차량처럼 확장, 진화 및 적응하도록 설계되었습니다. MongoDB를 핵심으로 하여, 자동차 제조사들은 데이터 관리에 덜 집중하고 도로에서 진정한 차이를 만드는 스마트하고 유용한 차량 내 경험을 제공하는 데 더 집중할 수 있습니다.
데이터 모델 접근 방식
데이터는 AI 기반 경험의 중심에 있습니다. 데이터의 품질, 구조, 접근성은 경험의 성패를 좌우하는 요소입니다. 이 솔루션에서 MongoDB의 문서 모델은 중심적인 역할을 하며, 개발자들이 지능형 차량 내 비서 시스템을 구축할 때 유연성, 속도, 확장성을 가능하게 합니다.
전통적인 관계형 데이터베이스는 엄격한 테이블과 복잡한 조인에 의존하는 반면, MongoDB는 데이터를 유연한 문서로 저장합니다. 이것은 실제 세계의 데이터 구조, 예를 들어 차량 텔레메트리나 내장된 지식 청크 등을 코드에서 사용되는 그대로 정확하게 표현하기 쉽게 만듭니다. 또한 애플리케이션이 발전함에 따라 더 빠르게 반복하고, 다운타임 없이 모델을 조정하며, 새로운 역량을 구축할 수 있습니다.
혁신과 속도를 고려한 빌드
문서 모델은 개발자가 생각하는 방식에 맞게 설계되었습니다. 진단 데이터에 메타데이터를 추가해야 하나요? 또는 여러 콘텐츠 유형을 하나의 매뉴얼 섹션에 연결해야 하나요? MongoDB에서는 스키마를 다시 작성할 필요 없이 몇 줄의 코드만 있으면 됩니다. 각 문서가 독립적이기 때문에 쿼리가 더 빠르고 간단해집니다. 조인 수가 적고, 움직이는 부분이 적으며, 빌드에 더 많은 시간을 할애할 수 있습니다.
이러한 유연성은 또한 더 빠른 혁신 주기를 가능하게 합니다. 신규 차량 기능이 출시되거나 사용자 기대치가 변화함에 따라 팀은 비용이 많이 드는 마이그레이션이나 앱 다운타임 없이 데이터 모델을 즉석에서 조정할 수 있습니다.
AI 워크로드를 위한 최적의 선택
생성형 인공지능은 풍부하고 다양하며, 비정형 데이터를 기반으로 발전합니다. 임베딩, 컨텍스트 메타데이터, 구조화된 참조 등은 모두 더 스마트한 AI 시스템 구축에 도움이 됩니다. MongoDB는 특히 이러한 유형의 MongoDB 애플리케이션에 적합합니다.
벡터 임베딩, 메타데이터 및 소스 콘텐츠를 하나의 문서에 저장합니다.
시스템 간 이동 없이 구조화된 데이터와 벡터 데이터를 결합합니다.
쿼리 벡터 필드와 비벡터 필드를 함께 사용하여 문맥에 맞는 정확한 결과를 얻으세요.
그 결과, 더 간단한 아키텍처, 더 나은 성능, 그리고 더 관련성 있는 AI 응답이 가능해집니다.
예시 1: 자동차 매뉴얼 임베딩
검색 증강 생성(RAG) 접근법을 사용할 때, 청크와 임베딩의 품질은 AI의 응답 품질에 직접적인 영향을 미칩니다. 잘못 분할된 콘텐츠나 누락된 컨텍스트는 모호하거나 부정확한 답변을 초래할 수 있습니다. 기술 매뉴얼은 본질적으로 복잡합니다. 이들은 종종 조밀한 텍스트, 다이어그램 및 도메인별 용어를 포함하고 있어 올바른 정보를 조회하기 어렵습니다.
이 문제를 해결하기 위해 매뉴얼의 각 청크를 문서로 나타냅니다. 문서에는 텍스트와 벡터 임베딩뿐만 아니라 콘텐츠 유형(예: 안전, 진단), 페이지 번호, 청크 길이, 관련 청크로의 링크와 같은 메타데이터도 포함됩니다. 이 추가적인 컨텍스트는 시스템이 정보의 조각들이 서로 어떻게 연관되어 있는지를 이해하는 데 도움을 주며, 특히 고도로 기술적이거나 상호 의존적인 주제에서 매우 중요합니다.
MongoDB의 유연한 문서 모델을 활용하면 이러한 복잡성을 쉽게 파악할 수 있습니다. 매뉴얼이 발전하거나 새로운 요구가 발생할 경우, 전체 스키마 마이그레이션 없이도 점진적으로 필드를 추가하거나 구조를 조정할 수 있습니다. 이를 통해 더 정밀한 조회가 가능해지며, 궁극적으로 AI 응답의 유용성이 개선됩니다.
{ "_id": { "$oid": "67cc4b09c128338a8133b59a" }, "text": "Oil Pressure Warning Lamp. If it illuminates when the engine is running this indicates a malfunction. Stop your vehicle as soon as it is safe to do so and switch the engine off. Check the engine oil level. If the oil level is sufficient, this indicates a system malfunction.", "page_numbers": [ 23 ], "content_type": [ "safety", "diagnostic" ], "metadata": { "page_count": 1, "chunk_length": 1045 }, "id": "chunk_0053", "prev_chunk_id": "chunk_0052", "next_chunk_id": "chunk_0054", "related_chunks": [ { "id": "chunk_0048", "content_type": [ "safety" ], "relation_type": "same_context" }, { "id": "chunk_0049", "content_type": [ "safety" ], "relation_type": "same_context" }, ... ], "embedding": [ -0.002636542310938239, -0.005587903782725334, ... ], "embedding_timestamp": "2025-03-08T13:50:00.887107" }
예시 2: 차량 신호 데이터
차량 신호에 대해 우리는 COVESA 차량 신호 사양(VSS)을 사용하여 데이터를 모델링했습니다. VSS는 속도, 가속도 또는 진단 문제 코드(DTC)와 같은 실시간 신호를 설명하기 위한 표준화된 계층적 구조를 제공합니다. 이는 차량 플랫폼 전반에서 협업, 시스템 통합 및 데이터 재사용을 용이하게 하는 개방적이고 확장 가능한 형식입니다.
MongoDB 문서 모델은 중첩 구조를 기본적으로 처리하므로 VSS 계층 구조를 표현하는 것이 간단합니다. 신호는 VSS 모델에 나타나는 것처럼 논리적으로 그룹화할 수 있으며, 이는 사양의 트리 기반 구조와 완벽하게 일치합니다.
그림 3. VSS 데이터 모델 은 유연하게 결합할 수 있는 모듈로 구축된 계층적 트리 구조입니다. 출처: https://covesa.global/vehicle-signal-specification/
이 구조는 개발을 가속화할 뿐만 아니라 AI 도구와 워크플로가 깨끗하고 구조화된 의미 있는 데이터에 일관되게 접근할 수 있도록 보장합니다.
{ "_id": { "$oid": "67e58d5f672b23090e57d478" }, "VehicleIdentification": { "VIN": "1HGCM82633A004352" }, "Speed": 0, "TraveledDistance": 0, "CurrentLocation": { "Timestamp": "2020-01-01T00:00:00Z", "Latitude": 0, "Longitude": 0, "Altitude": 0 }, "Acceleration": { "Lateral": 0, "Longitudinal": 0, "Vertical": 0 }, "Diagnostics": { "DTCCount": 0, "DTCList": [] } }
MongoDB의 문서 모델은 단순히 데이터를 저장하는 것 이상의 기능을 제공합니다. 이는 현실 세계의 복잡성을 반영하여, 실시간으로 응답하고, 사용자 요구에 적응하며, 플랫폼과 함께 성장하는 더 스마트한 시스템을 쉽게 구축할 수 있게 합니다. 차량 진단 데이터나 벡터로 인코딩된 매뉴얼을 저장하든, MongoDB는 지능형 경험을 더 빠르게 구축할 수 있는 도구를 제공합니다.
솔루션 구축
이 솔루션을 구축하는 것은 크게 5단계로 나눌 수 있습니다. MongoDB Atlas 사용하여 데이터를 호스팅하다 하고, AI 서비스를 위한 Google Cloud Platform , 차량 데이터를 스트림 PowerSync, 전체 스택 앱 사용하여 모든 것을 하나로 묶을 수 있습니다. 필요한 모든 자산과 리소스는 Github 리포지토리 내에서 찾을 수 있습니다.
데모 데이터베이스 복제
Atlas 계정 내에 클러스터를 프로비저닝하고 데모에 필요한 데이터로 데이터베이스를 채웁니다. 리포지토리 내에서 데이터 덤프를 찾아 필요한 모든 데이터와 메타데이터를 포함한 데이터베이스를 하나의 빠른 mongorestore 명령으로 신속하게 복제할 수 있습니다.
Google Cloud 환경 구성
Google Cloud Platform 프로젝트 만들고 필수 API인 음성 텍스트 변환, 텍스트 음성 변환, 문서 AI 및 꼭짓점 AI 활성화. 로컬 개발의 경우 앱 Google 서비스에서 원활하게 인증할 수 있도록 애플리케이션 기본 자격 증명을 구성합니다. 자세한 지침은 Google Cloud Platform 문서에 나와 있습니다.
애플리케이션을 실행합니다.
리포지토리를 로컬에서 복제하고 .env 를 만듭니다. 제공된 템플릿을 사용하여 파일 합니다. 환경이 구성되면 npm install 을 실행 종속성을 설치한 다음 npm 실행 dev 로 개발 서버 시작합니다. 이 앱 http://localhost:3000.에서 사용할 수 있습니다.
코드 샘플, 데이터 덤프, 헬퍼 스크립트 등 전체 구현 세부 정보를 보려면 Github 리포지토리방문하세요.
주요 학습 사항
자동차 경험이 더욱 지능적이고 개인화됨에 따라, 이 솔루션은 자동차 제조업체가 생성형 인공지능과 MongoDB를 활용하여 의미 있는 차량 내 상호작용을 제공하는 방법을 시연합니다. 주요 요점은 다음과 같습니다.
대화형 AI는 올바른 데이터 기반에서 시작: 풍부하고 맥락적이며 접근 가능한 데이터가 지능형 음성 어시스턴트의 동력입니다. MongoDB Atlas는 구조화된 텔레메트리, 비구조화된 매뉴얼, 벡터 임베딩을 하나의 개발자 친화적인 플랫폼에 통합하여 데이터 사일로를 제거하고 관련성 있는 실시간 응답을 쉽게 제공할 수 있도록 합니다.
MongoDB를 통해 공장에서 결승선까지 혁신 가속화: 현대 자동차 MongoDB 애플리케이션은 예측 유지보수 및 진단부터 디지털 콕핏 시스템에 이르기까지 유연성과 속도를 요구합니다. MongoDB의 유연한 스키마, 실시간 동기화 기능, 및 수평 확장성은 팀이 더 빠르게 작업하고, 더 효과적으로 협업하며, 차량을 차별화하는 기능을 제공하는 데 도움을 줍니다.
차세대 음성 어시스턴트에 대해 준비가 된 운전자: 전기차, 자율성, 스마트 안전 시스템이 산업을 재편하면서, 차량 내 시스템에 대한 기대는 그 어느 때보다 높습니다. 생성형 인공지능은 어시스턴트가 단순한 명령을 넘어 섬세하고 상호작용적인 대화를 제공할 수 있게 하며, MongoDB는 개발자에게 이러한 경험을 대규모로 확장할 수 있는 도구를 제공합니다.
사용된 기술 및 제품
MongoDB 개발자 데이터 플랫폼
파트너 기술
작성자
Dr. Humza Akhtar, MongoDB
Rami Pinto, MongoDB