HOME/ブログ/Databricks Genie Codeとは?データ開発・分析を加速するAIコーディングエージェント🚀
databricks-genie-code-thumbnail
技術解説・Tips

Databricks Genie Codeとは?データ開発・分析を加速するAIコーディングエージェント🚀

avatar
Mikako Terada

Databricksワークスペースに統合された自律型AIコーディングエージェント「Genie Code」の概要と主な機能、そしてDBUコストを抑えながら使いこなす3つのコツを紹介します。


背景・課題

Databricksで日々の開発・分析を行っていると、以下のような場面で時間とコストがかさみがちです。

  • SQLを都度手で書いて実行する
  • ノートブックでエラーが出るたびに原因を調査する
  • 「このテーブルに何が入っているか」を確認するだけで意外と時間がかかる

こうした手間を、自然言語でのやり取りだけで解消しようというのがGenie Codeです。

Genie Codeとは

Genie Codeは、Databricksワークスペースに統合された開発者・データ実務者向けのAIコーディング/データアシスタントです。コードの生成・実行だけでなく、Unity Catalogとの統合により複数ステップのタスクを自律的にこなせる点が特徴です。

Genie Codeは「Genie」ファミリーの一つで、混同されやすい類似機能との違いは次の通りです。

名称役割
Genie Code開発者・データ実務者向けのAIコーディング/データアシスタント(本記事のテーマ)
Genie SpacesダッシュボードやAI/BI上のデータについて、自然言語のQ&Aで答えを得る仕組み(読み取り専用)
Genie Oneビジネスユーザー向けの、よりシンプルなチャットインターフェース

Genie Codeはノートブック、SQLエディタ、Lakeflow Pipelinesエディタ、AI/BIダッシュボード、MLflowなど複数の画面で動作し、チャットスレッドはページを移動しても保持されます。また、チャットセッションを開始したユーザーのUnity Catalog権限がそのまま適用されるため、そのユーザーがアクセスできないテーブルにはGenie Codeも触れません。

参考までに、Databricksの発表によると実データを使ったデータサイエンスタスクで、Genie Codeは既存の主要コーディングエージェントの成功率を32.1%から77.1%まで引き上げたと報告されています(Databricks公式発表より)。

Chatモード / Agentモード

Genie Codeには2つの動作モードがあり、画面右下の切り替えボタンで変更できます。

ChatモードAgentモード
用途簡単な質問・コード生成・説明複数ステップのタスクを自律的に計画・実行
送信データプロンプトと関連メタデータ(テーブル名・カラム名など)メタデータに加え、セル出力やテーブルのデータサンプルも解析対象
既定値-こちらがデフォルト

できること

  • データ探索:「直近30日でキャンセル率が高い商品を集計して」のように、自然言語でデータ集計ができる
  • ダッシュボード作成:欲しい項目を指示すると、Genie Codeが自動でダッシュボードを組み立てる
  • パイプライン開発・エラー修正
  • 複数スレッドの並列実行:フルページ表示のコマンドセンター画面でのみ利用可能

デモでの所感

実際に試したところ、あるデータをもとに欲しい項目を指定してダッシュボード作成を依頼すると、約5分程度で形になりました。ただし、1回の指示でいきなり完成形になったわけではなく、何度か会話を往復しながら仕上げる形でした。

📸 補完提案:ここに実際に生成されたダッシュボードのスクリーンショットを挿入すると読者のイメージが湧きやすくなります。

裏側の仕組み:モデルとセキュリティ

モデル:Databricksの「パートナー提供AI機能」が有効な場合、Chat/Agentどちらのモードも Azure OpenAI Service・OpenAI on Databricks・Anthropic on Databricks のいずれかのモデルによって処理されます。ユーザー側で個別にモデルを選択することはできない仕様で、これはコンプライアンス・ガバナンス上の設計とのことです。

セキュリティ:通信中・保存中のデータは暗号化され、モデルの学習にプロンプトやレスポンスが使われることはありません(Databricks公式ドキュメントより)。

チャット・インラインアシスト機能

  • インライン提案・オートコンプリート:コード入力中に候補が自動表示され、Tabキーで確定。コメントを書くとそれに沿ったコードも提案してくれる
  • Quick Fix:エラー発生時に自動で修正候補が提示され、その場で適用できる
  • Diagnose Error:ジョブでエラーが出た際、ボタン一つで原因調査から修正案の提示までを行える
  • スラッシュコマンド/explain(コードの説明)や/fix(エラー修正)など。通常のチャットでの修正依頼と異なり、変更前後の差分が表示されAccept/Rejectを選べる
  • @メンション:テーブル名・パイプライン名・ノートブック名・クエリ名といったリソースを指定してチャットに含められる
  • チャット履歴:コンピュートを停止しても消えず、画面右上の履歴アイコンから過去のセッションを再開できる

コストを抑える3つのコツ

Genie Codeは1回のやり取りで狙い通りのSQLを返してくれるとは限りません。試行錯誤のたびにSQLが実行されるため、その分DBU消費がかさみコストに直結します。そこで、以下の3点を意識すると無駄を減らせます。

  1. 完結する指示を書く:「グラフを作って」ではなく「グラフのX軸は月、Y軸は売上で」のように詳しく指定する
  2. まとめて指示する:集計・グラフ化・保存などを都度依頼せず、あらかじめまとめて依頼する
  3. @メンションで対象リソースを先に指定する:曖昧な探索を減らし、無駄な実行を防ぐ

あわせて、目的に応じてChatモードとAgentモードを使い分けることも効果的です。

設定でできること

  • 承認モード:ツール実行の承認方式を「Ask first」(デフォルト、都度承認)と「Auto-approve」(自動でSQL等を実行)から選べます。Auto-approveはリスクのある操作を自動実行するモードのため、本番データや共有リソースを扱う際は慎重に判断してください。
  • MCPサーバー接続:SlackやGitリポジトリなど外部ツールと接続し、チャンネルへの投稿やリポジトリ情報の参照といった操作を任せられます。

カスタム指示とエージェントスキル

似た機能に見えて役割が異なります。

  • カスタム指示:Markdownファイル(.assistant_instructions.mdなど)としてワークスペースディレクトリに配置すると、Chatモード・Agentモード・インライン提案・Suggest Fixなど幅広い場面に自動適用されます(Quick FixとAutocompleteは対象外)。ユーザー単位・ワークスペース単位(管理者のみ編集可)の両方を用意でき、常に守ってほしいルールを書く場所です。AGENTS.mdCLAUDE.mdといったファイルも自動的に読み込まれます。
  • エージェントスキルSKILL.mdファイルを.assistant/skills/配下に置く形式です。Agentモードが関連する場面で自動的に読み込むほか、@メンションで明示的に呼び出すこともできます。カスタム指示と異なり、実行スクリプト(Pythonファイルなど)を同梱できるのが特徴で、「専門知識や処理そのものを渡したいとき」に向いています。

サンプルはDatabricksが公開しているgenie-code-skills-demoリポジトリで確認できます。

まとめ

項目内容
提供元Databricks
動作場所ノートブック / SQLエディタ / Lakeflow Pipelines / AI/BIダッシュボード / MLflow
モードChatモード・Agentモード(既定はAgent)
モデルAzure OpenAI Service / OpenAI on Databricks / Anthropic on Databricks(切り替え不可)
コスト注意点試行錯誤のたびにSQLが実行されDBU消費に直結
カスタマイズカスタム指示(常時適用)/エージェントスキル(文脈に応じて自動読み込み)/MCP連携

Genie Codeを使えば、データ探索からダッシュボード作成、パイプラインのエラー修正までを自然言語ベースで進められます。一方でDBUコストに直結する仕組みでもあるため、プロンプトの書き方や@メンションの活用でコストをコントロールする意識が重要です。

社内でも継続的に活用ノウハウを蓄積しています。Databricksの活用やAI駆動開発の導入に興味のある方は、お気軽にKDDIアイレットへご相談ください。


参考:Databricks Genie Code 公式ドキュメント / Introducing Genie Code(Databricks Blog) / Customize Genie Code with custom instructions / Extend Genie Code with agent skills