MongoDB Atlas と Google Cloud のツール群を活用し、リアルタイムで音声操作が可能な車内体験をどのように構築するかを学ぶことができます。車両データ、ユーザー コンテキスト、自動車マニュアルの埋め込み情報を組み合わせることで、ドライバーのニーズに適応可能な、スマートかつスケーラブルな車内アシスタントを構築します。
業種: 製造 & モビリティ
製品: MongoDB Atlas データベース、MongoDB Atlas Vector Search
パートナー: Google Cloud 、PowerSync
ソリューション概要
自動車メーカーが次世代の運転体験を提供するために競い合う中、インテリジェントで使いやすいデジタル システムによる差別化への圧力が高まっています。車載音声アシスタントは重要なビジネス チャンスとして浮上していますが、多くはナビゲーションの設定や音楽の操作などの基本的なコマンドに限られており、まだその可能性を十分に発揮できていません。生成系AIの台頭により、これらの制限を超えて、ハンドルを握る際に真にパーソナライズされたダイナミックなインタラクションを提供するという明確な道筋が見えてきました。
このソリューションは、自動車チームが生成系AI と MongoDB Atlas を活用して、スケーラブルなリアルタイムの音声アシスタントを構築する方法を示しています。このアーキテクチャは、車両テレメトリ、ユーザーの好み、自動車マニュアルの埋め込みを統合し、各ドライバーのニーズに適応できる車載アシスタントを実現します。MongoDB Atlas の柔軟な Document Model と組み込みベクトル検索を使用することで、開発者はデータの複雑さを簡素化し、機能をより迅速に提供し、より優れた、直感的な車内体験を実現できます。

図 1. 車載生成系AI アシスタントのアクション
その過程で、チームは次の方法を学びます。
構造化データと非構造化データを統合して、AI システムのコンテキストを強化します。
スケーラブルなクラウドネイティブ アーキテクチャにより、リアルタイムのインタラクションを可能にします。
Atlas Vector Search を活用したセマンティック検索でパーソナライズされたエクスペリエンスを提供します。
このソリューションは自動車業界に焦点を当てていますが、その可能性ははるかに広がります。運輸、医療、ホスピタリティ、家電などの業界では、カスタマー エンゲージメントを強化し、摩擦を軽減し、サポートを合理化するために、生成系AI の音声インターフェースを模索しています。スマート ホーム アシスタント、デジタル コンシェルジュ、AI 対応医療トリアージ システムなど、このアーキテクチャは、直感的で関連性の高い音声優先のデータ駆動型エクスペリエンスをビルドするための基盤を提供します。さまざまな業界の企業が生成系AI と MongoDB による音声の力を活用して、ユーザー エクスペリエンスを変革しています。
参照アーキテクチャ
よりスマートな車載アシスタントを実現するために、クラウドとエッジテクノロジーを一つのシームレスな体験に融合するアーキテクチャを設計しました。その中心にあるのは、データ層として機能する MongoDB Atlas であり、Google Cloud の AI 機能と組み合わされています。このアーキテクチャは、高速でパーソナライズされた、信頼性のあるインタラクションを保証します。
図 2。生成系 AI を活用した車内アシスタントのリファレンス アーキテクチャ
それがどのように機能するかを詳しく見てみましょう。
オンボードコンポーネント
これらは車両内でドライバーの近くで実行され、リアルタイムの音声対話を可能にします。
カーコンソール: ユーザーがアシスタントに話しかけ、応答を得る車内のインターフェースです。このデモではウェブアプリですが、実際の車両に埋め込まれたシステムを表しています。
ローカル データ ストレージ: 車両は、SQLite を基盤とした軽量エッジ データベースである PowerSync SDK を使用して、重要な信号をローカルに保存します。これにより、診断データへの迅速なアクセスが確保され、データが MongoDB Atlas と同期された状態が維持されます。
アシスタント バックエンド: このコンポーネントは、会話全体の制御を担います。Google Cloud の音声認識(Speech-to-Text)を用いて音声を文字起こしし、ドライバーの意図を読み取ります。クエリの内容に応じて、直接応答したり、ツールを呼び出して追加データを取得したり、アクションを実行したりします。デモ版では、以下の 4 種類のツールを含めています。
マニュアルを参照: Atlas ベクトル検索を使用して、自動車マニュアルから関連情報を取得します。
診断の実行: ローカルの車両データから現在の診断コードを取得します。
ルートを再計算: ドライバーが停車を追加すると、トリップが調整されます。
チャットを終了: 会話を円滑に終了します。
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 Storageにアップロードされます。これにより、Pub/Sub、Cloud Run、Document AI を使用してパイプラインがトリガーされ、PDF がチャンクに分割されます。Vertex AI はこれらのチャンクの埋め込みを生成し、その後セマンティック検索のために MongoDB Atlas に保存します。
言語 API の処理: Google Cloud の Text-to-Speech と Speech-to-Text は、自然な言語インタラクションを処理します。Vertex AI: 検索クエリ用のテキスト埋め込みを提供し、アシスタントが使用する LLM(Gemini)を駆動します。
データの保存と取得: MongoDB Atlas は以下を保存します。
Atlas Vector Search を用いた検索のためのマニュアルチャンク埋め込み。
ユーザー設定とセッション データ。
車両信号—最新の値と完全な時系列テレメトリの両方。
Atlas Vector Search は、ユーザーの質問を最も関連性の高いマニュアル セクションと一致させるために使用され、検索拡張生成 (RAG) フローを可能にします。MongoDB は構造化データ、半構造化データ、ベクター データを 1 か所でネイティブにサポートすることで、アシスタント ロジックを簡素化し、開発を加速します。
データ同期: 車両とクラウド間の双方向同期には PowerSync を使用しています。
車両からクラウドへ: 車両は診断コード、速度、加速度などのテレメトリデータを送信します。クラウドの実行関数はこれを処理し、Atlas に保存します。
クラウドから車両へ: OTA 更新やリモート ロックなど、車両に対して遠隔で送信される更新や操作を有効にします。
対話型 AI における MongoDB の役割
MongoDB Atlas は、このソリューションを支える開発者向けデータ プラットフォームです。アーキテクチャをどのように改善するかを次に示します。
運用データとベクトル データを統合: 車両信号、ベクトル埋め込み、ユーザー セッションは、コンシステントな単一のプラットフォームにまとめて保存されます。
より関連性の高い応答を可能に: Atlas Vector Search は、大規模なドキュメントから適切なチャンクを即座に検索し、正確でコンテキストに富んだ応答を提供します。
エンタープライズ規模向けに構築: 1 つのモデルでも、グローバルなフリートでも、MongoDB Atlas は組み込みの水平スケーラビリティ、高可用性、エンタープライズグレードのセキュリティを提供します。
エッジとクラウドの同期を簡素化: PowerSync と MongoDB が連携して、車内環境とクラウド環境をスムーズに橋渡しします。
このアーキテクチャは、サポート対象の車両と同様に、拡張、進化、適応するように設計されています。MongoDB を中核に据えることで、自動車メーカーはデータ処理に費やす時間を減らし、道路上で真に違いを生み出すスマートで役立つ車内体験の提供に注力することができます。
データモデルアプローチ
AI を活用したあらゆる体験の中核をなすのは「データ」です。データの質、構造、アクセス性は、AI 体験の成否を左右する重要な要素です。このソリューションでは、MongoDB のドキュメント モデルが中心的な役割を果たし、インテリジェントな車内アシスタントを構築する開発者に対して、高い柔軟性、処理速度、そしてスケーラビリティを提供します。
固定されたテーブルと複雑な結合に依存する従来の関係データベースとは異なり、MongoDB はデータを柔軟なドキュメントとして保存します。これにより、車両のテレメトリや埋め込まれたナレッジ チャンクなど、現実世界のデータ構造を、コードで使用されているとおりに簡単に表現することができます。また、アプリケーションの進化に伴い、反復を迅速に行い、ダウンタイムなしでモデルを適応させ、新しい機能をビルドできることを意味します。
イノベーションとスピードを重視して構築
Document Model は、開発者の考え方に合わせて設計されています。診断データにメタデータを追加する必要がありますか。あるいは、複数のコンテンツタイプを 1 つのマニュアル セクションに関連付ければよいですか。MongoDB では、スキーマの書き換えではなく、数行のコードで済みます。各ドキュメントが自己完結型であるため、クエリはより高速でシンプルになります。結合部が少なく、可動部品も少ないため、ビルドする時間が短縮されます。
この柔軟性により、イノベーション サイクルの迅速化も可能になります。新しい車両機能が展開されたり、ユーザーの期待が変化したりすると、チームは高額な移行やアプリのダウンタイムなしで、その場でデータモデルを進化させることができます。
AI ワークロードに自然な選択
生成系AI は、豊富で多様な非構造化データを活用します。埋め込み、コンテキスト メタデータ、構造化された参照など、これらすべてが AI システムをよりスマートにする役割を果たしています。MongoDB は、この種のアプリケーションに特に適しています。
ベクトル埋め込み、メタデータ、ソースコンテンツを 1 つのドキュメントにまとめて格納します。
システム間を移動することなく、構造化データとベクトルデータを統合します。
ベクトル場と非ベクトル場を一緒にクエリして、コンテキストに応じた正確な結果を得ることができます。
その結果得られるのは、よりシンプルなアーキテクチャ、優れたパフォーマンス、そして高精度な AI 応答です。
例 1: カーマニュアルの埋め込み
検索拡張生成(RAG)アプローチを使用する場合、チャンク化と埋め込みの品質が、AI の応答の質に直接影響を与えます。コンテンツのセグメント化が不十分であったりコンテキストが欠落している場合、あいまいな回答や不正確な回答が返される可能性があります。技術マニュアルは本質的に複雑です。高密度のテキスト、図、分野固有の用語が含まれていることが多く、正しい情報の検索が難くなっています。
この点を表すために、マニュアルの各チャンクをドキュメントとして表現します。ドキュメントには、テキストとそのベクトル埋め込みだけでなく、メタデータとしてコンテンツタイプ(例: 安全性、診断)、ページ番号、チャンクの長さ、関連するチャンクへのリンクなども含まれています。この追加のコンテキストは、システムが各情報の相関関係を理解する上で役立ちます。特に、高度に技術的または相互依存的なトピックにおいて重要です。
MongoDB の柔軟な Document Model により、この複雑さを簡単に把握できます。マニュアルが進化したり、新しいニーズが出てきた場合でも、スキーマを完全に移行することなく、フィールドを段階的に追加したり、構造を調整したりすることができます。これにより、より正確な検索が可能になり、最終的にはより有用な 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 Document Model はネストされた構造をネイティブに処理するため、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 の Document Model はデータを保存するだけではありません。これは現実世界の複雑さを反映しており、リアルタイムで応答し、ユーザーのニーズに適応し、プラットフォームとともに成長する、よりスマートなシステムを構築するのを容易にします。車両診断を保存する場合でも、ベクトルでエンコードされたマニュアルを保存する場合でも、MongoDB はインテリジェントなエクスペリエンスをより迅速にビルドするためのツールを提供します。
ソリューションを構築する
このソリューションの構築は、5 つの主要な手順に分割できます。 MongoDB Atlasを使用してデータをホストし、Google Cloud をAIサービスに使用し、PowerSync を使用して自動車データをストリーミングし、フルスタックアプリを使用してすべてを連携します。必要なアセットとリソースはすべて GitHubリポジトリ内にあります。
デモデータベースを複製する
デモの準備として、Atlas アカウント内にクラスタをプロビジョニングし、必要なデータでデータベースを構築します。すべての必要なデータとメタデータを含んだダンプファイルはリポジトリ内に格納されており、mongorestore コマンド 1 つで迅速にレプリカを作成できます。
Google Cloud 環境を設定してください
Google Cloudプロジェクトを作成し、必要な API を有効にします。 Spark-to-Text 、 Text-to-Speed 、 Document AI 、 Vertex AI 。ローカル開発では、アプリのデフォルト認証情報を設定して、アプリがGoogle サービスでシームレスに認証できるようにします。手順について詳しくは、Google Cloud ドキュメント を参照してください。
アプリケーションを実行する
リポジトリをローカルにクローンし、提供されたテンプレートを使用して .envファイルを作成します。環境が構成されたら、 npmを実行して依存関係をインストールし、 npm run db で開発サーバーを起動します。このアプリはhttp://localhost:3000 で入手できます。
コード サンプル、データ ダンプ、ヘルパースクリプトなど、完全な実装の詳細については、 GitHubリポジトリをご覧ください。
キーポイント
自動車の体験がよりインテリジェントでパーソナライズされたものに進化する中、このソリューションは自動車メーカーが生成系AI と MongoDB を活用して、車内で意味のあるインタラクションを提供する方法を示しています。ここでの重要なポイントは次のとおりです。
会話型 AI は、適切なデータ基盤から始まります。インテリジェントな音声アシスタントを駆動するのは、豊富で文脈に富み、アクセス可能なデータです。MongoDB Atlas は、構造化テレメトリ、非構造化マニュアル、ベクトル埋め込みを単一の開発者向けプラットフォームに統合し、データ サイロを排除して、関連性の高いリアルタイムの応答を提供しやすくします。
MongoDB は、工場から製品完成に至るまでのプロセス全体でイノベーションを加速させます: 現代の自動車アプリケーションには、柔軟性と高速性が求められています。それは、予防保守や診断機能から、デジタル コックピット システムに至るまで多岐にわたります。MongoDB の柔軟なスキーマ設計、リアルタイム同期機能、そして水平方向へのスケーラビリティにより、チームはより迅速に連携し、効果的にコラボレーションし、他と差別化された機能を提供できるようになります。
ドライバーは次世代の音声アシスタント対応: 電気自動車、自律走行、スマート安全システムが業界を変革する中、車載システムに対する期待はかつてないほど高まっています。生成系 AI は、アシスタントが単純な指示を超えて、ニュアンスを含んだ双方向的な会話を実現し、MongoDB は開発者にこれらの体験を大規模に構築するためのツールを提供します。
使用した技術と製品
MongoDB 開発者データ プラットフォーム
提携技術
作成者
Dr. Humza Akhtar, MongoDB
Rami Pinto、MongoDB