1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

これらの記事を翻訳していたのですが、自分できちんと試していませんでした。

要はGenieスペースAI関数を使えるようにすることで、自然言語処理を含む問い合わせに対応できるようになると。

Genieとは

Databricks AI/BI Genieは、専門的なSQL知識がなくても、日本語で質問するだけでデータ分析ができるツールです。営業担当者が「今月の売上は?」と聞けば、自動的にSQLクエリを生成し、結果をグラフで表示してくれます。複合AIシステムを活用し、組織独自の用語やデータ構造を理解して、正確な分析結果を提供します。データアナリストがGenieスペースを設定すれば、ビジネスユーザーは自由にデータを探索でき、意思決定のスピードが大幅に向上します。行レベルのセキュリティにも対応し、各ユーザーが見るべきデータのみにアクセスできるため、安全性も確保されています。

機能概要

Databricks AI/BI Genieは、自然言語でデータ分析を可能にするAIツールです。

Genieの基本構成

構成要素 説明
Genieスペース データ分析の環境。部署や用途ごとに複数作成可能
複合AIシステム 質問を理解し、SQLクエリに変換する頭脳部分
Unity Catalog データのメタデータを管理する基盤
SQLウェアハウス クエリを実行する計算エンジン

動作の流れ

[ユーザーの質問]
    ↓
[Genieが質問を解析]
    ↓
[関連データの特定]
    ↓
[SQLクエリの自動生成]
    ↓
[結果の表示(表・グラフ)]

Genieが利用する情報

Genieは以下の情報を組み合わせて、正確な回答を生成します:

  1. テーブルメタデータ

    • テーブル名と説明
    • 主キー・外部キーの関係
  2. 列情報

    • 列名と説明
    • サンプル値
  3. カスタマイズ要素

    • SQLクエリの例
    • 業務固有の指示
    • 過去のチャット履歴

AI関数とは

Databricks AI関数は、SQLクエリーで直接AIモデルを呼び出せる機能です。感情分析、テキスト要約、翻訳などの高度なAI処理を、従来のSQLと同じような簡単な構文で実行できます。プログラミングの専門知識がなくても、データアナリストが自分のデータに最先端のAIを適用できるようになりました。汎用的なai_query関数と、特定タスクに特化した関数(ai_summarizeai_translateなど)の2種類があり、用途に応じて使い分けが可能です。エンドポイントの設定も不要で、すぐに使い始められるため、データ分析業務の生産性を大幅に向上させることができます。

機能概要

Databricks AI関数は、SQLクエリーの中で直接AIモデルを呼び出せる組み込み関数群です。大きく分けて2つのカテゴリーがあります。

1. 汎用関数:ai_query

任意のAIモデルを適用できる汎用関数です。以下のようなモデルに対応しています:

モデルタイプ 設定要件
Databricksホスト型基盤モデル Meta Llama 3.3 70B 設定不要(Runtime 15.4 LTS以降)
ファインチューンされた基盤モデル カスタム学習済みモデル モデルサービングへのデプロイが必要
外部ホスト型モデル OpenAI、Anthropic等 APIエンドポイントの設定が必要
従来のMLモデル scikit-learn、PyTorch等 Model Servingへのデプロイが必要

2. タスク固有関数

特定のAIタスクに特化した関数群です:

関数名 機能
ai_analyze_sentiment テキストの感情分析(ポジティブ/ネガティブ等)
ai_classify テキストをカスタムラベルで分類
ai_extract 指定したエンティティ(人名、組織名等)を抽出
ai_fix_grammar 文法エラーの修正
ai_generate プロンプトに基づいてテキスト生成
ai_mask 個人情報等の機密データをマスク
ai_summarize テキストの要約生成
ai_translate 多言語翻訳
ai_similarity 2つのテキストの類似度計算
ai_forecast 時系列データの予測

ウォークスルー

冒頭の記事に倣って設定してみます。対象データは自分のQiita記事のデータを格納しているテーブルです。

最初は何も設定せずに問い合わせを行います。

ページビュー数が最も多い投稿はどれですか?

数値のカラムに対する問い合わせなので問題なく結果を得ることができます。

では、以下のようにテキストの処理を求める質問はどうでしょうか。

本文を要約してください

残念ながら手立てがないのでテキスト列を返却するのみです。

Screenshot 2025-06-24 at 16.42.33.png

まずは指示から記入していきます。日本語で回答を返すようにします。

* あなたはIT記事の専門家です。
* 質問に対して簡潔に日本語で回答します。
* 質問に回答するために大規模言語モデルを使用する必要あるのであれば、AI関数を用いて回答を生成してください。

Screenshot 2025-06-24 at 16.43.31.png

しかし、これでも回答自体は変わりません。

Screenshot 2025-06-24 at 16.45.18.png

次にクエリーのサンプルを追加します。要約して欲しいのでai_summarizeの使い方を例示します。

-- プロンプト:Genie Space 用の SQL クエリ例:顧客レビューの200字の要約
-- review_text に対して要約を生成するよう Genie に指示する。
  SELECT ai_summarize(
    review_text,
    200
  );

Screenshot 2025-06-24 at 16.48.54.png

今度は適切に要約されました。

Screenshot 2025-06-24 at 16.50.28.png

次は汎用関数であるai_queryです。モデルとプロンプトを指定できるので、基本的になんでもできます。

-- プロンプト:Genie Space 用の SQL クエリ例:記事のテーマは何か?
-- review_text から記事のテーマを抽出するよう Genie に指示する。

SELECT
  review_id,
  review_text,
  ai_query(
   -- 使用する基盤モデルエンドポイント指定
     "databricks-llama-4-maverick",
CONCAT(
      "主要なテーマを1キーワードで表現して前後の文字列を含めずキーワードのみを返却 (例: 「Spark」、「Delta Lake」、「MLflow」: ",
review_text
    )
  ) AS main_keyword
FROM
  your_catalog.your_schema.customer_reviews

問い合わせとai_queryへと入力となるプロンプトの連携に関しては何度か試行錯誤して質問やサンプルクエリーを調整しました。また、問い合わせの方法、サンプルクエリー、スペースの設定ともに改善の余地はあると思います。

ページビューが多いトップ10の記事のテーマは何か、1キーワードで表現して前後の文字列を含めずキーワードのみを返却して集計して

Screenshot 2025-06-24 at 17.17.59.png

まとめ

私自身、サンプルクエリーの使い所がよく分かってなかったのですが、このウォークスルーで腑に落ちた感があります。Genie自体はデフォルトではSQLの構文は理解しているが、どの特殊関数を呼び出したらいいのかまでは全てカバーできているわけではないので、サンプルクエリーで例示することで既存の知識と組み合わせて呼び出しが可能になると。面白い。まだまだキュレーションの余地があるってことですね。

はじめてのDatabricks

はじめてのDatabricks

Databricks無料トライアル

Databricks無料トライアル

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?