Azure Cosmos DBのAI Assistantプレビューとは?VS Code拡張機能の変更点と確認事項

Azure Cosmos DBの開発で「NoSQLクエリの書き方を毎回調べる」「ポータルとVS Codeを行き来して作業が途切れる」と感じているなら、今回のAI Assistantプレビューは確認する価値があります。2026年6月3日に確認された公式更新では、Azure Cosmos DB extension for Visual Studio CodeにAI支援機能が追加され、自然言語からのクエリ生成、GitHub Copilot Chat上の@cosmosdbコマンド、スキーマを意識した入力補完を使えるようになります。(マイクロソフト Azure)

ただし、これは本番運用を自動化するための完成機能ではありません。Azure Updates上の「In preview」は、すべてのAzure顧客が非本番用途のテスト目的で利用できる段階と説明されています。管理者は権限、データ持ち出し、GitHub Copilotの利用ポリシー、RU消費を確認し、開発者は生成されたクエリを必ずレビューしてから実行する必要があります。(マイクロソフト Azure)

目次

Azure Cosmos DBのAI Assistantプレビューで何が変わるのか

今回の更新の中心は、Azure Cosmos DBをVS Code内で扱う作業にAI支援を組み込むことです。Microsoftの関連ブログでは、Azure Cosmos DB VS Code ExtensionのPre-release version 0.35.1でAI支援の生産性機能がPublic Previewとして発表されたと説明されています。(Microsoft for Developers)

従来は、Azure Cosmos DBのクエリを書くときに、ドキュメントを参照しながら構文を確認し、Azure Portalや別ツールで試行錯誤する流れになりがちでした。今回のAI Assistantでは、VS Code上でデータベースに接続したまま、自然言語で「欲しいデータ」を伝え、クエリ作成や説明、修正を支援してもらえるようになります。

変更点できるようになること実務での使いどころ
Natural Language to Query平易な英語の説明からAzure Cosmos DB NoSQLクエリを生成アドホック調査、検証用クエリ作成、新人の学習
Chat Experience AssistantVS CodeのGitHub Copilot Chatで@cosmosdbを使い、クエリ生成・説明・編集を依頼クエリレビュー、最適化案の確認、構文やベストプラクティスの質問
Auto IntelliSense Query Experienceコンテナーのスキーマを踏まえた入力補完を表示フィールド名の打ち間違い削減、WHERE句やGROUP BY句の作成支援
MCP連携を土台にした文脈理解AIツールがAzure Cosmos DBの文脈を扱いやすくなる将来的なエージェント連携やチーム内自動化の検証

重要なのは、AIが「正しい本番クエリを保証する」のではなく、開発者の下書き作成や確認作業を短縮する点です。Microsoftもベストプラクティスとして、生成されたクエリは本番データに対して実行する前にレビューし、パーティションキーとの整合性やインデックスのカバレッジを確認するよう案内しています。(Microsoft for Developers)

主な機能は3つ:クエリ生成、チャット、IntelliSense

自然言語からAzure Cosmos DB NoSQLクエリを生成できる

Natural Language to Queryでは、取得したいデータを英語で説明すると、Azure Cosmos DB向けのNoSQLクエリを生成できます。公式ブログでは、たとえば「過去7日間の失敗した配送で、合計金額が500ドルを超える注文を地域別に集計する」といった説明から、SELECT、WHERE、GROUP BYを含むクエリを生成する例が紹介されています。(Microsoft for Developers)

実務では、次のような場面で効果が出やすい機能です。

利用シーンプロンプト例確認すべき点
障害調査Find failed orders in the last 24 hours grouped by region.時刻フィールド、ステータス値、パーティションキー
運用レポートShow active users updated in the last 30 days and return only id and lastLogin.SELECT *になっていないか、必要な列だけ取得しているか
データ確認Find documents where deviceStatus is offline and tenantId is "contoso".テナントIDや顧客IDなど機密値をそのまま入力してよい運用か
性能改善の下書きRewrite this query to avoid unnecessary cross-partition scans.実際にRU消費が下がるか、実行計画やメトリックで検証

現時点の公式説明では「plain English」とされているため、初期検証では英語プロンプトを使うのが無難です。日本語プロンプトが実務レベルで安定するかは、利用環境、Copilot側の挙動、対象スキーマによって検証してください。

@cosmosdbでGitHub Copilot Chatから質問できる

Chat Experience Assistantでは、VS CodeのGitHub Copilot Chatで@cosmosdbチャット参加者を呼び出し、Azure Cosmos DBに関する質問やクエリ操作を行えます。Microsoftの説明では、GitHub Copilotが有効であれば、チャットモードで@cosmosdbを使って自然言語でAzure Cosmos DBと対話できるとされています。(Microsoft for Developers)

利用できる主なコマンドは次のとおりです。

コマンド目的使い方の例
/generateQuery自然言語からCosmos DB NoSQLクエリを生成@cosmosdb /generateQuery find active users created today
/explainQuery既存クエリの意味を説明@cosmosdb /explainQuery SELECT * FROM c WHERE c.status = "active"
/editQuery既存クエリを会話形式で修正@cosmosdb /editQuery optimize this query by using tenantId
/questionCosmos DBの概念、構文、ベストプラクティスを質問@cosmosdb /question How can I reduce RU consumption?
/help利用可能なコマンドや使い方を確認@cosmosdb /help

特に便利なのは、既存クエリの説明と修正です。運用で引き継いだクエリや、過去に作成したクエリの意図が分からない場合、/explainQueryで読み解きの助けを得られます。ただし、説明が正しいかどうかは最終的に開発者が判断する必要があります。

スキーマを意識したAuto IntelliSenseが使える

Auto IntelliSense Query Experienceは、従来の静的な入力補完より踏み込んだ支援です。公式ブログでは、コンテナーのドキュメント構造を読み取り、フィールド名、ネストしたパス、データ型を提示し、クエリパターンに応じた候補を出すと説明されています。(Microsoft for Developers)

たとえば、SELECT c.まで入力したときに、一般的な構文候補ではなく、実際のコンテナーに存在するcustomerId、orderDate、deliveryStatus、totalのようなフィールドが候補として出るイメージです。フィールド名の打ち間違いを減らせるため、手戻りの多い調査クエリや、スキーマに慣れていないメンバーのオンボーディングで効果があります。

一方で、スキーマに似た名前のフィールドが多い場合や、同じコンテナーに複数種類のドキュメントを格納している場合は、候補をそのまま信用しすぎないことが重要です。補完はあくまで入力支援であり、データモデルの設計ミスやクエリ設計の問題を自動で解決するものではありません。

利用前に確認すべき前提条件

AI Assistantを試すには、通常のVS Code拡張機能を入れるだけでは足りない場合があります。Microsoftの関連ブログでは、Azure Cosmos DB extensionをインストールした後、VS Codeで「Switch to Pre-Release Version」を選び、Pre-release版に切り替える必要があると説明されています。(Microsoft for Developers)

また、Visual Studio Marketplaceの拡張機能ページでは、AI-Powered Query AssistanceはGitHub Copilotと統合され、自然言語でCosmos DB NoSQLクエリの作成、編集、理解を支援すると説明されています。利用にはGitHub Copilot拡張機能と有効なCopilotサブスクリプションが必要です。([Visual Studio Marketplace][4])

確認項目内容管理者・開発者の判断ポイント
VS CodeAzure Cosmos DB extensionを利用組織でVS Code拡張機能の利用制限があるか確認
拡張機能の状態Pre-release版への切り替えが必要本番端末へ一斉展開せず、検証端末から開始
GitHub CopilotCopilot拡張機能と有効なサブスクリプションが必要組織のCopilot利用規約、監査、データ取り扱い方針を確認
対象APIAzure Cosmos DB for NoSQLが中心MongoDB APIなど別APIの業務では対象範囲を誤認しない
接続先Cosmos DBアカウントへの接続が必要開発・ステージング環境から始める
権限クエリ実行やデータ参照の権限が必要読み取り専用、コンテナー単位など最小権限で付与

特に注意したいのは、Visual Studio Marketplaceの既知の問題として、以前含まれていたMongoDB、PostgreSQL、Graph(Gremlin)、Table、Cassandraなどのサポートがこの拡張機能から削除されていると記載されている点です。Azure Cosmos DBという名前だけで全APIを対象にできると考えず、自社のワークロードがNoSQL API中心かを確認してください。([Visual Studio Marketplace][4])

管理者が見るべき影響範囲

本番環境ではなく、開発・検証環境から始める

Public Previewは、便利そうだからすぐ本番運用に組み込む機能ではありません。Azure Updates上のIn previewは非本番用途のテスト向けと説明されているため、まずは開発環境またはステージング環境で検証するのが基本です。(マイクロソフト Azure)

最初の検証では、次のように範囲を絞ると安全です。

検証段階対象ゴール
個人検証1〜2名の開発者、サンプルデータ機能が使えるか、生成クエリの傾向を把握
チーム検証開発用Cosmos DBアカウント既存クエリと比較し、RU消費や精度を確認
運用ルール整備ステージング環境プロンプト入力ルール、レビュー手順、権限設定を文書化
限定展開対象チームのみ開発効率、レビュー負荷、誤実行リスクを評価

いきなり全開発者に展開すると、生成されたクエリをそのまま実行する人、機密値をプロンプトに含める人、不要に広い権限で接続する人が出る可能性があります。AI機能そのものよりも、使い方のルール不備がリスクになります。

スキーマサンプリングとクエリ履歴の扱いを確認する

Microsoftの関連ブログでは、AI Assistantはスキーマサンプリングとクエリ履歴のコンテキストを活用し、接続時にコンテナーのスキーマをサンプリングして、生成・説明するクエリの品質を高めると説明されています。(Microsoft for Developers)

ここで管理者が確認すべきなのは、「どのデータやメタデータをAI支援に使ってよいか」です。実データそのものを丸ごと送るという意味に短絡する必要はありませんが、少なくともスキーマ情報、フィールド名、クエリ文、場合によっては業務上意味のある値がプロンプトやクエリに含まれる可能性は考えるべきです。

たとえば、以下のような運用ルールを決めておくと安全です。

リスク避けるべき使い方推奨ルール
顧客情報の混入顧客名、メールアドレス、電話番号を含む条件をそのまま入力IDをマスクし、検証用データで試す
業務機密の露出未公開プロダクト名や取引先名をフィールド値として入力機密度の高い値はダミー値に置換
過剰な権限本番アカウントキーで接続Entra IDとRBACを使い、読み取り専用から始める
履歴の再利用過去の危険なクエリを参考にしてしまうクエリ履歴の扱いとレビュー基準を定める

VS Codeや拡張機能のテレメトリも確認対象です。Visual Studio Marketplaceでは、VS Codeが利用データを収集してMicrosoftに送信する場合があり、無効化したい場合はtelemetry.enableTelemetryをfalseに設定できると説明されています。組織のセキュリティ基準に合わせ、VS Code本体、拡張機能、Copilotの設定をまとめて確認してください。([Visual Studio Marketplace][4])

RBACと最小権限を見直す

AI Assistantを使うからといって、開発者に広い権限を渡す必要はありません。むしろ、自然言語で簡単にクエリを生成できるようになる分、権限はより慎重に設計すべきです。

Microsoft Learnでは、Azure Cosmos DB for NoSQLでMicrosoft Entra IDとロールベースアクセス制御を使って接続する方法が説明されており、RBACは必要最小限のアクセス権を割り当てるための仕組みとされています。(Microsoft Learn)

特にデータプレーンの権限では、アカウント全体、データベース単位、コンテナー単位などのスコープを指定できます。Microsoft Learnでは、最も細かいスコープとして単一コンテナーへの割り当て例も示されています。(Microsoft Learn)

利用者推奨権限の考え方理由
新人・学習者サンプルDBまたは開発DBの読み取り中心誤更新や本番データ閲覧を防ぐ
アプリ開発者担当コンテナー単位の読み取り・必要最小限の書き込み調査対象を限定し、影響範囲を狭める
SRE・DB管理者ステージング、本番で権限を分離本番調査と開発作業を混同しない
外部委託メンバー期限付き、コンテナー単位、監査前提契約範囲外のデータ閲覧を避ける

アカウントキーや接続文字列を共有して使う運用は、誰が何を実行したか追いにくくなります。AI Assistantの検証を機に、Entra IDベースの接続とデータプレーンRBACを見直すとよいでしょう。

開発者向け:安全に使う基本手順

AI Assistantは、クエリ作成を速くする道具です。正確性、コスト、セキュリティの責任は引き続き開発者側にあります。最初は次の手順で試すと、失敗しにくくなります。

手順作業確認ポイント
1VS CodeにAzure Cosmos DB extensionをインストール組織で許可された拡張機能か
2Pre-release版に切り替える対象バージョンでAI支援が有効か
3GitHub Copilot拡張機能を有効化有効なCopilotサブスクリプションがあるか
4開発用Cosmos DBアカウントに接続本番アカウントではないか
5Query Editorで自然言語からクエリ生成生成結果を実行前に読む
6@cosmosdb /explainQueryで説明を確認意図と異なる条件が入っていないか
7実行後にRU消費と結果件数を確認想定より高コストなクエリになっていないか
8チームのクエリレビュー基準に反映便利だったプロンプトと失敗例を共有

Microsoftは、実際のデータベースに接続するとAI機能がスキーマ文脈を使いやすくなる一方、本番データに対して実行する前に生成クエリを検証するよう案内しています。まずは開発環境やステージング環境に接続し、生成結果の癖を把握するのが現実的です。(Microsoft for Developers)

生成クエリをレビューするときのチェックポイント

AI Assistantで作ったクエリは、見た目が自然でも、そのまま本番向きとは限りません。特にAzure Cosmos DBでは、クエリの書き方がRU消費やレイテンシに直結します。

チェック項目悪い例良い例
取得列SELECT * FROM cを多用必要なフィールドだけSELECT c.id, c.statusで取得
パーティションキーテナントIDやユーザーIDを条件に含めないパーティションキーに沿ったWHERE条件を入れる
件数制御全件を一度に取得TOPやページング前提で取得
集計大量データに対して無条件にGROUP BY期間、テナント、ステータスなどで絞り込む
並べ替え広範囲のクロスパーティションでORDER BYインデックスやパーティション設計を確認
日付条件文字列比較で曖昧に判定保存形式とタイムゾーンを確認して条件を書く
機密情報実顧客の値をプロンプトに含めるダミー値や抽象化した条件で相談

公式ブログでも、生成されたクエリについて、パーティションキーの整合性とインデックスのカバレッジを確認すること、RUコストやインデックスのトレードオフ、パーティション戦略の理解にチャットを活用することが推奨されています。(Microsoft for Developers)

実行前レビューでは、次の3つを習慣にしてください。

まず、条件が業務要件と一致しているかを確認します。「過去30日」と指示したのに、日付フィールドが別名だったり、UTC前提でずれていたりすることがあります。

次に、パーティションキーを使えているかを確認します。Azure Cosmos DBでは、パーティション設計に合わないクエリが広範囲をスキャンし、想定以上のRUを消費することがあります。

最後に、結果件数と取得列を絞ります。調査目的なら最初は少ない件数で試し、必要な列だけ返すクエリにするほうが安全です。

導入で失敗しやすいポイント

AIが作ったクエリをそのまま本番で実行する

一番避けたいのは、生成されたクエリを確認せずに本番コンテナーで実行することです。自然言語から生成されたクエリは、下書きとしては便利ですが、データモデル、インデックス、パーティションキー、業務ルールまで完全に理解しているとは限りません。

特に、障害調査中は焦っているため、SELECT *や広範囲スキャンをそのまま実行しがちです。本番では、最初に対象期間、テナント、ステータス、件数を絞るルールを設けてください。

Copilotの利用条件を確認せずに展開する

Marketplaceでは、AI-Powered Query AssistanceにはGitHub Copilot拡張機能と有効なCopilotサブスクリプションが必要とされています。([Visual Studio Marketplace][4])

そのため、「VS Code拡張機能を入れたのにAI Assistantが使えない」という問い合わせが発生する可能性があります。管理者は、Copilotライセンスの有無、組織ポリシー、利用可能なユーザー範囲を先に整理しておくべきです。

対象APIを誤解する

Azure Cosmos DBには複数のAPIがありますが、今回のVS Code拡張機能の説明ではAzure Cosmos DB for NoSQLが中心です。Marketplaceにも、Azure Cosmos DB for NoSQLをサポートしてデータベースの閲覧、管理、クエリ実行ができると記載されています。([Visual Studio Marketplace][4])

MongoDB APIやPostgreSQL系の業務で同じ体験を期待すると、検証計画がずれます。自社のCosmos DB利用状況を棚卸しし、対象APIごとに検証可否を分けてください。

プロンプトに機密情報を入れすぎる

AIに正確なクエリを作らせようとして、顧客名、契約名、メールアドレス、注文番号などをそのまま入力するのは避けるべきです。検証段階では、tenantId = "sample-tenant"やcustomerType = "premium"のように、意味が分かる範囲でダミー化した値を使いましょう。

プロンプトの良し悪しは、精度だけでなく安全性にも影響します。チームで使うなら、「プロンプトに入れてよい情報」と「入れてはいけない情報」を明文化してください。

移行や展開で考えるべきこと

今回の更新は、データベース自体のスキーマ変更やアプリケーション移行を必須にするものではありません。影響が大きいのは、開発者の作業フローです。

従来の「ドキュメントを検索する」「Azure Portalで試す」「ローカルに貼り付ける」という流れから、「VS Code内で質問し、生成し、説明を受け、修正する」流れへ移っていきます。うまく使えば、オンボーディングや調査クエリの作成時間を短縮できます。

一方で、展開時には次の順序をおすすめします。

フェーズやること完了条件
準備対象チーム、対象DB、利用ルールを決める本番接続禁止、機密値入力禁止などの基本ルールがある
検証既存クエリをAI Assistantで再現する結果、RU消費、読みやすさを比較できている
権限設計RBACスコープを見直す開発者ごとに必要最小限のアクセスになっている
教育プロンプト例と失敗例を共有するチームメンバーがレビュー観点を理解している
限定展開一部プロジェクトで実運用に近い使い方を試す問い合わせ、誤実行、コスト増の有無を確認できている
標準化チームの開発ガイドに反映するクエリレビュー、Copilot利用、ログ確認の手順が文書化されている

Azure Cosmos DB extensionにはMigration Assistant機能も含まれると公式ブログで触れられていますが、今回のAI Assistantプレビューとは目的が異なります。移行評価に使う機能と、日々のクエリ作成を支援する機能を混同しないようにしましょう。(Microsoft for Developers)

どのようなチームに向いているか

AI Assistantの効果が出やすいのは、Azure Cosmos DBを使っているものの、チーム内でクエリ経験に差がある組織です。

チームの状況期待できる効果
新人や異動者がCosmos DBを学んでいるクエリ構文や考え方をチャットで確認しやすい
障害調査でアドホッククエリが多い下書き作成が速くなり、調査開始までの時間を短縮しやすい
プロダクトマネージャーからデータ確認依頼が多い要件を自然言語で整理し、開発者との認識合わせに使える
複数チームが同じコンテナーを扱うスキーマ補完によりフィールド名の誤りを減らしやすい
RUコストの高いクエリが散発する/explainQueryや/questionで改善観点を学びやすい

逆に、厳格な本番接続制限があり、開発端末からデータベースに直接接続しない運用のチームでは、導入効果よりもガバナンス調整の負荷が大きい可能性があります。その場合は、サンプルデータや検証用アカウントだけで使う範囲に限定するのが現実的です。

まず確認すべきアクションリスト

Azure Cosmos DBのAI Assistantプレビューを試すなら、次の順番で進めてください。

優先度アクション担当
高利用対象がAzure Cosmos DB for NoSQLか確認する管理者・開発リーダー
高GitHub Copilotの利用可否とライセンスを確認する管理者
高開発・ステージング環境で検証用Cosmos DBアカウントを用意する管理者・SRE
高RBACを使い、読み取り中心の最小権限を割り当てる管理者
中VS Code拡張機能をPre-release版に切り替えて動作確認する開発者
中既存クエリを使って生成精度とRU消費を比較する開発者
中プロンプトに入れてよい情報、入れてはいけない情報を決める管理者・セキュリティ担当
低よく使うプロンプト例とレビュー観点をチームWikiにまとめる開発リーダー

今回の更新は、Azure Cosmos DBの開発体験を「手作業で構文を調べる」ものから「VS Code内でAIに下書きと説明を任せる」方向へ進めるものです。まずは非本番環境で、既存の安全なクエリを題材に試してください。そのうえで、権限、プロンプト、RU確認、レビュー手順を整えれば、Azure Cosmos DBの調査・開発作業をより速く、安定して進めやすくなります。
[4]: https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-cosmosdb “
Azure Cosmos DB – Visual Studio Marketplace
“

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次