AI Functionsを使用して顧客レビューを分析する

プレビュー

この機能はパブリックプレビュー段階です。

この記事では、 AI Functionsを使用して顧客レビューを調査し、応答を生成する必要があるかどうかを判断する方法を説明します。この例で使用されるAI Functionsは、Databricks基盤モデルAPIsによって利用できる生成AIモデルを搭載した、組み込みのDatabricks SQL 関数です。「DatabricksのAI Functions」を参照してください。

この例では、AI Functionsを使用して、reviews というテスト用データセットに対して次の処理を実行します。

  • レビューのセンチメントを決定します。

  • 否定的なレビューについては、レビューから情報を抽出して原因を分類します。

  • 顧客への応答が必要かどうかを識別します。

  • 顧客を満足させられる可能性のある代替製品に言及した応答を生成します。

要件

  • 基盤モデルAPIsの トークン単位の従量課金がサポートされているリージョン内のワークスペース。

  • これらの関数は、Databricks SQL Classicでは使用できません。

  • プレビュー中は、これらの関数のパフォーマンスは制限されています。ユースケースでより高いクォータが必要とされる場合は、Databricksアカウントチームにお問い合わせください。

レビューのセンチメントを分析する

ai_analyze_sentiment()を使用すると、顧客がどう感じているかをレビューをもとに理解することができます。次の例では、センチメントは肯定的、否定的、中立、または混合にすることができます。

SELECT
  review,
  ai_analyze_sentiment(review) AS sentiment
FROM
  product_reviews;

以下の結果から、この関数はプロンプトエンジニアリングや解析結果なしに各レビューのセンチメントを返すことがわかります。

ai_sentiment 関数の結果

レビューを分類する

この例では、否定的なレビューを特定した後、 ai_classify()を使用して、否定的なレビューの原因が物流、製品品質、またはその他の要因であるかどうかなど、顧客レビューについてさらに多くの情報を得ることができます。

SELECT
  review,
  ai_classify(
    review,
    ARRAY(
      "Arrives too late",
      "Wrong size",
      "Wrong color",
      "Dislike the style"
    )
  ) AS reason
FROM
  product_reviews
WHERE
  ai_analyze_sentiment(review) = "negative"

この場合、ai_classify()はカスタムラベルに基づいて否定的なレビューを正しく分類し、さらなる分析を可能にします。

ai_classify 関数の結果

レビューから情報を抽出する

顧客が否定的なレビューをした理由に基づいて、製品の説明を改善することができます。ai_extract()を使用すると、テキストの塊から重要な情報を見つけることができます。次の例では、情報を抽出し、否定的なレビューが製品のサイズ設定の問題に基づいているかどうかを分類します。

SELECT
  review,
  ai_extract(review, array("usual size")) AS usual_size,
  ai_classify(review, array("Size is wrong", "Size is right")) AS fit
FROM
  product_reviews

以下は、結果のサンプルです。

ai_extract 関数の結果

レコメンデーションによるレスポンスの生成

顧客の応答を確認した後、ai_gen()関数を使用して苦情に基づいた顧客への応答を生成し、フィードバックに対する迅速な返答により顧客との関係を強化できます。

SELECT
  review,
  ai_gen(
    "Generate a reply in 60 words to address the customer's review.
    Mention their opinions are valued and a 30% discount coupon code has been sent to their email.
    Customer's review: " || review
  ) AS reply
FROM
  product_reviews
WHERE
  ai_analyze_sentiment(review) = "negative"

以下は、結果のサンプルです。

ai_gen_results 関数の結果