※ 本記事は、Marty Gubarによる”Conversations are the next generation in natural language queries“を翻訳したものです。

2024年2月13日


Autonomous Database Select AI は、データとの会話を可能にする強力な新機能を導入しました。自然言語問合せと会話の違いはいくつもあります。

会話は、データを分析するための自然な方法を提供します。質問をし、結果を確認し、情報の詳細を明確化または検索します。なぜなら、私たちは皆、話し方を習った時からそうしてきたからです。 

例を見てみましょう。まず、アナリストによる動画ストリーミングサービスに関するトップレベルの質問から始めます。続いて、アナリストは質問を追加で行い、フォローアップしていきます。:

  • “What are our total streams?”「私たちの総ストリーム数は?」
  • “Break that out by genre”「その数字をジャンルごとに表示して」
  • “Add customer segment”「顧客セグメントも追加しよう」
  • “Keep the top 5 customer segments and genres by total views. Include a rank in the result”「総トータル数トップ5の顧客セグメントとジャンルを残して。出力する時にはランキングも含めて」

まるで同僚との一般的な会話ですね(少し上司ぽいかもしれませんね😉)  次のデモでは、Select AIを使って同じような一連の会話をデータと行う方法をご確認いただけます。LLMが会話スレッドを解釈し、SQLを生成していますね。:

Select AIは新しい種類のSQLのサポートしているので、そちらも確認してください: 

SELECT AI
Start with our total streams

“SELECT” 構文はSQLを知っている人に慣れているように見えます。その後の記述は、まったく変わります。Autonomous DatabaseのSQLは、新しい”AI”キーワードによって拡張されました。これは、後続のテキストが自然言語であることを示します。データがどこに存在するか、またはクエリをどのように書くか心配する必要はありません。ただ質問するだけです。あなたが自然言語で質問した内容はLLMを活用してOracle SQLに変換されます。 Autonomous DatabaseでのSelect AI構文の詳細は、ブログ記事Autonomous Database speaks “human”と、生成AI LiveLabに掲載されているワークショップChat with Your Data in Autonomous Databaseを参照してください。

デモの最後には、生成されたクエリについて、SQLコードとコードの意味の両方を説明するようSelect AIに求めます。会話のやりとりによってSelect AIの説明を確かめることは、結果を確認するときに本当に役立ちます。

「会話」を有効にする方法

「Select AI」プロファイルで会話を有効にできます。Select AIプロファイルでは、AIプロバイダに関する情報、自然言語をクエリに変換するために使用されるLLM、クエリに使用されるソース・テーブルなどの情報を収集します。会話を行う場合、Azure経由、またはOpenAIから直接OpenAI GPTモデルを使用する必要があります。プロファイルで、会話フラグを”true”に設定して機能を有効にします。:

BEGIN
  DBMS_CLOUD_AI.CREATE_PROFILE (
    profile_name => 'your_profile',
    attributes =>       
        '{"provider": "azure",
          "azure_resource_name": "your-resource",                    
          "azure_deployment_name": "your-deployment",
          "credential_name": "AI_CREDENTIAL",
          "comments":"true", 
          "conversation": "true",         
          "object_list": [
            {"owner": "moviestream", "name": "GENRE"},
            {"owner": "moviestream", "name": "CUSTOMER"},
            {"owner": "moviestream", "name": "PIZZA_SHOP"},
            {"owner": "moviestream", "name": "STREAMS"},            
            {"owner": "moviestream", "name": "MOVIES"},
            {"owner": "moviestream", "name": "ACTORS"}              
          ]          
          }'
    );
END;
/

その後、あなたの使いたいセッションでプロファイル設定を有効にします:

BEGIN
    DBMS_CLOUD_AI.SET_PROFILE (
        profile_name => 'your_profile'
    );
END;
/

以上です! データとの会話を始めましょう。

まとめ

会話は、自然言語クエリにとって真のブレークスルーです。可能なかぎり自然な方法で、あらゆる方向にデータを探索できます。今日から会話を始められますよ。Autonomous Databaseを使用している方は、すでにデプロイされています。そうでない方も、Autonomous Database 無償インスタンスをスピンアップして試してみてください。Autonomous Databaseのスタートガイド・ページで、Webキャスト、チュートリアル、デモなどもぜひご確認ください。

 

Marty Gubar

プロダクトマネージメント・ディレクター

Autonomous Database開発チームの製品マネージャーです。