
Omniで自然言語による分析・要約・計算フィールド作成ができるAIアシスタント機能を試してみた
さがらです。
OmniはGUIの操作を行いながらその定義をSemantic Layerのコード化できることを強みとしたBIツールです。Omni自体については以下のブログが参考になると思います。
そんなOmniですが、AIアシスタント機能が備わっています。この機能を試してみたので、本記事でその内容をまとめてみます。
参考:OmniのAI機能の利用に関するセキュリティポリシー
以下の公式Docにおいて、OmniのAI機能の利用に関するセキュリティポリシーがまとめられています。
主な内容として、提供されたデータはトレーニングに使用されないことや、LLMプロバイダーとして主にAmazon BedrockでホストされたAnthropicのClaudeを利用し、AI advanced visualizationsの機能ではOpenAIを利用すること、など言及があります。
Workbook上でのAI機能
まずはOmniのWorkbook上で試せるAI機能について試していきます。
クエリの生成
まず、Workbook上でのクエリ生成機能について試してみます。クエリ生成機能とはいいますが、実際にはディメンションやメジャーを選択して可視化まで行ってくれる機能となります。
Workbookの画面左上のAI query helperを押します。

その後、下図のような画面となるので、まずはどういうクエリが生成できそうか確認するため、このデータから、どういうクエリが生成できそうですか。と聞いてみます。すると、下図のように様々な候補を出してくれます。


試しに新規顧客と既存顧客の割合は?を押してみると、該当するディメンションとメジャーを選択してデータを表示してくれます。

続いて、顧客ごとに毎月の売上を出しながら、ランニングトータルでもまとめてくださいと聞いてみます。
すると、一度エラーを起こしたあとに自動で修正して、算出してくれました。ただ、中身はランニングトータルではないIFとSUMを使った演算が行われているだけでした。


自然言語でのフィルタ操作
次に、自然言語によるフィルタ操作を試してみます。
集計されたデータの上にNatural Language Filterというアイコンがあるため、こちらを押します。

下図のように入力欄が表示されるため、2016年に新規顧客となった顧客のデータだけで絞り込んでと聞いてみます。
すると、Customersというviewの中にFirst Ordered Atという各顧客の最初の注文日をまとめたフィールドがあったため、こちらを2016年に絞り込むフィルタを追加してくれました!


集計結果の要約
ボタンを押すだけで現在の集計結果からどのような結果が得られているのか、分析した内容を表示させる機能も備わっています。
集計されたデータの上にSummarize resultsというアイコンがあるため、こちらを押します。

すると、画面左に要約された結果が英語で表示されました。要約を日本語にしてと追加でチャット欄からリクエストすると、日本語にしてくれました。


新しい計算フィールドの作成
自然言語で新しい計算フィールドの作成を依頼することもできます。
集計されたデータの右上にNatural language formulaというアイコンがあるため、こちらを押します。

下図のように表示されるため、顧客ごとのランニングトータルを作成してください。と聞いてみます。すると、SUMIFSを用いた形でランニングトータルを算出してくれました。


ダッシュボード上のAI機能
次はダッシュボード上のAI機能を試していきます。
事前準備:ダッシュボードレベルでのAI機能の有効化
公式Docを参考に、ダッシュボードレベルでのAI機能の有効化を行います。
対象のダッシュボードの左上のFileから、Document settingsを押します。

表示された設定の中から、AI on dashboardを有効化します。

ダッシュボード上のAI機能を試してみる
ダッシュボードの右下にAI機能のアイコンが表示されます。

すると下図のように表示されます。雑にこのダッシュボードはどういうダッシュボードですかと聞いてみます。回答として、各グラフが何を表しているかが表示されます。


次は、「ダッシュボードのデータを2016年に絞り込んで」と聞いてみます。すると、各グラフのデータを絞り込んだ結果を見せてくれました。(これはこれで便利だと思います!)
他にも色々試しましたが、実際にダッシュボード上の値をチャット経由で変更する事はできなそうでした。


メニューから選べるAI Assistant機能
事前準備:Topics
Omniのメニューから選べるAI Assistant機能を利用するためには、Topicsの定義が必要です。
Topicsですが、Omni内でよく使う組み合わせでテーブルの結合定義を事前に行っておき、ユーザーが分析するときにわかりやすくするためのものです。使用するフィールドの絞り込みや、デフォルトのフィルターなども設定可能です。
Topicsは、今開いているWorkbookのGUIベースで定義したフィールドや結合条件などをまとめて、上部のModelからSave as topicで作成可能です。

Topicsもコードとして定義されます。今回は下図のように1つのviewをJOINしたシンプルなTopicsを用意しておきます。

メニューから選べるAI Assistant機能を試してみる
Topicsの準備ができたら、Omniのメニューから選べるAI Assistant機能を試してみます。

立ち上げるとこのような画面となります。チャット画面の左下部から使いたいTopicsを選ぶことが可能です。
まずは雑に、週別の食べ物と飲み物の売上比較を教えてと聞いてみます。

すると、下図のように該当するフィールドを選択して集計した結果の可視化まで行ってくれます。それだけでなく、どういった分析結果となったか文章でまとめる機能も備わっています。


次は新しいチャットを立ち上げ、あえてこのTopicsでは分析できない内容として国別の売上を知りたいと聞いてみます。

すると、該当するフィールドがないため下図のように表示されます。何も返さないだけでなく、候補となりえるフィールドを選定してくれるのが素晴らしいですね!

最後に
OmniのAIアシスタント機能を試してみました。分析・要約・計算フィールド作成と一通りのことが行えるので、困った時に試してみる価値はあると思います!







