ユーザーが指定した命令に基づき、大規模言語モデル (LLM) を使用して特定の列を集約します。
構文
AI_AGG([<resource_name>], <expr>, <instruction>)
パラメーター
パラメーター | 説明 |
|
リソースの名前です。このパラメーターはオプションです。 |
|
集約対象のテキスト列です。各テキスト値は 128 K 文字未満である必要があります。 |
| 実行する命令。リテラル値のみが受け付けられます。 |
戻り値
-
集約結果を含む文字列を返します。
すべての入力値が NULL の場合は NULL を返します。
-
結果は LLM によって生成されるため、出力が異なる場合があります。
例
例 1:次のテーブルには、顧客サポートチケットのサンプルが含まれています。
CREATE TABLE support_tickets (
ticket_id BIGINT,
customer_name VARCHAR(100),
subject VARCHAR(200),
details TEXT
)
DUPLICATE KEY(ticket_id)
DISTRIBUTED BY HASH(ticket_id) BUCKETS 5
PROPERTIES (
"replication_num" = "1"
);
INSERT INTO support_tickets VALUES
(1, 'Alice', 'Login Failure', 'Cannot log in after password reset. Tried clearing cache and different browsers.'),
(2, 'Bob', 'Login Failure', 'Same problem as Alice. Also seeing 502 errors on the SSO page.'),
(3, 'Carol', 'Payment Declined', 'Credit card charged twice but order still shows pending.'),
(4, 'Dave', 'Slow Dashboard', 'Dashboard takes >30 seconds to load since the last release.'),
(5, 'Eve', 'Login Failure', 'Getting redirected back to login after entering 2FA code.');
AI_AGG を使用して、問題タイプ別に顧客の問題を要約します。
SELECT
subject,
AI_AGG(
'ai_resource_name',
details,
'すべてのチケットの詳細を 40 ワード以下の短い段落 1 つに要約してください。'
) AS ai_summary
FROM support_tickets
GROUP BY subject;
+------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| subject | ai_summary |
+------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Slow Dashboard | The dashboard loading time has significantly increased to over 30 seconds following the latest release, indicating a potential issue with the recent update. |
| Login Failure | User experiences login issues, including redirection post-2FA, inability to log in after password reset despite using different browsers and clearing cache, and encountering 502 errors on the SSO page. |
| Payment Declined | The customer's credit card was charged twice, but the order status remains pending, indicating a potential issue with the transaction processing or system update. |
+------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
例 2: 次のテーブルには、E コマースプラットフォームからのユーザーレビューのサンプルが含まれています。
CREATE TABLE product_reviews (
review_id BIGINT,
product_id BIGINT,
rating TINYINT,
comment STRING
)
DUPLICATE KEY(review_id)
DISTRIBUTED BY HASH(product_id) BUCKETS 10
PROPERTIES (
"replication_num" = "1"
);
INSERT INTO product_reviews VALUES
(1, 1001, 5, '靴のサイズはぴったりで、履き心地も良く、色も素敵で、配送も速かったです!'),
(2, 1001, 4, '品質は良いですが、靴底が少し硬く、慣れるまでに数日かかります。'),
(3, 1001, 3, '見た目は写真と同じですが、届いた時に少し接着剤の匂いがしました。'),
(4, 1002, 5, 'カップはコンパクトで、すぐにジュースが作れ、手入れも簡単で、職場に持っていくのに最適です。'),
(5, 1002, 3, '少し音が大きいですが、許容範囲です。フル充電でジュース 5 杯分しか作れません。'),
(6, 1002, 2, '2 週間で充電できなくなり、アフターサービスの交換プロセスが遅すぎます。'),
(7, 1003, 5, '生地は通気性が良く、蒸れません。袖口のデザインも工夫されていて、UPF50+ で本当に日焼けを防げます。'),
(8, 1003, 4, '色はきれいですが、ジッパーが引っかかり、力を入れないと動きません。'),
(9, 1004, 5, 'ノイズキャンセリングが素晴らしいです。地下鉄で静かに音楽が聴けます。バッテリーは 1 回の充電で 1 週間持ちます。');
AI_AGG を使用して、レビューを要約および集約します。
SET default_ai_resource = 'ai_resource_name';
SELECT
product_id,
AI_AGG(
comment,
'ユーザーレビューを、購入者が最も言及した長所と短所を強調しながら、50 文字以下の 1 文に要約してください。'
) AS review_summary
FROM product_reviews
GROUP BY product_id;
+------------+------------------------------------------------------------------------------------------------------------------------------------+
| product_id | review_summary |
+------------+------------------------------------------------------------------------------------------------------------------------------------+
| 1003 | この製品は通気性の良い生地、優れた日焼け防止効果、きれいな色が特徴ですが、ジッパーがスムーズではありません。 |
| 1004 | ユーザーは、効果的なノイズキャンセリングと、週に 1 回の充電で済む長いバッテリー持続時間を高く評価しています。 |
| 1001 | 購入者は、この靴が快適でスタイリッシュであり、配送が速いと概ね評価していますが、靴底が硬く、わずかに接着剤の匂いがする点を指摘しています。 |
| 1002 | 購入者は、このジューサーカップがコンパクトで、素早く、手入れが簡単であると評価していますが、バッテリー持続時間の短さと交換プロセスの遅さを批判しています。 |
+------------+------------------------------------------------------------------------------------------------------------------------------------+