Summarization use cases
=======================

``aidb.summarize_text_aggregate()``
は、テキストの要約をネイティブSQL集計に変換します。すべてのアナリストが既に知っているのと同じ\ ``GROUP BY``
セマンティクス。このページでは、ビジネス価値とエンタープライズユースケースについて説明します。

問題
----

企業は、PostgreSQL内に大量の非構造化テキスト—顧客のフィードバック、サポートチケット、セールスノート、コンプライアンスログ、臨床ナラティブなどを保存しています。このデータから洞察を抽出するには、従来、脆弱なパイプラインが必要です。データベースから抽出、変換およびバッチ、外部LLM
APIに送信し、応答を解析し、結果をロードして戻します。すべての手順で、遅延、障害モード、セキュリティ露出、およびエンジニアリングコストが発生します。

SQLを知っているアナリストは完全にロックアウトされています。「北東部の顧客は何について不満を持っていますか?」のような質問に答えるだけでもデータエンジニアとMLエンジニアが必要です。

AIDBの違い
----------

AIDBは、データをLLMに移動するのではなく、LLMをデータにもたらします。要約はネイティブSQL集計になります。

.. code:: sql

   SELECT region,
          aidb.summarize_text_aggregate(
              customer_feedback,
              aidb.summarize_text_config(gpt-4o)::json
          ) AS feedback_summary
   FROM support_tickets
   WHERE created_at > NOW() - INTERVAL 7 days
   GROUP BY region;

1つのクエリー。パイプラインはありません。パイソンはありません。外部オーケストレーションはありません。各行には、そのリージョンのすべてのフィードバックのLLM生成の概要が含まれており、
SQLクライアントに直接返されます。

同じデータ、別の質問、別のプロンプト

.. code:: sql

   SELECT region,
          aidb.summarize_text_aggregate(
              customer_feedback,
              aidb.summarize_text_config(
                  gpt-4o,
                  prompt => Identify the top 3 product issues and suggest fixes
              )::json
          ) AS issues
   FROM support_tickets
   WHERE created_at > NOW() - INTERVAL 7 days
   GROUP BY region;

同じ機能。文字列を1本変更しました。全く新しい分析 —
コードの展開、パイプラインの変更はありません。

ビジネス価値
------------

**データはデータベースから離れることはありません**
規制対象業界ヘルスケア、金融、政府などでは、機密データを外部APIに移動するには、数か月のコンプライアンスレビューが必要になる場合があります。
AIDBは、すべてのデータをPostgreSQL内に保持しますLLMエンドポイントは、オンプレミス、プライベートVPC内、またはローカルで実行できます。

**SQLはユニバーサルインターフェイス** —
世界中には約1,000万人のSQLリテラシーの専門家がいます。
AIDBは、すべてのアナリスト、
DBA、およびBI開発者を、新しいツール、ノートブック、またはAPIキーを管理せずにAI搭載アナリストに変えます。

**インフラストラクチャのカテゴリ全体を排除します** — Airflow
DAG、Lambdaファンクション、SQSキュー、またはKubernetesジョブはありません。データベースはコンピューティングレイヤーです。

**リアルタイム、アドホックインテリジェンス** —
従来のNLPパイプラインはバッチ指向です。
AIDBは、ライブデータに対するアドホッククエリーを有効にします。エグゼクティブは、午後3時に新しい質問をし、午後3時1分までに回答を得ることができます。

**PostgreSQLでスケール** —
PostgreSQLの成熟したクエリプランナー、パラレルワーカー、接続プーリング、およびロールベースのアクセス制御を活用します。すでにPostgreSQLインフラストラクチャに投資している企業は、限界インフラコストゼロでAI機能を入手できます。

エンタープライズユースケース
----------------------------

**小売とeコマース** —
何百万ものレビューとフィードバックエントリにわたる\ ``GROUP BY``
製品カテゴリ。好み、苦情、および新しいトレンドのカテゴリごとの概要を取得します。新しいレビューが到着すると、リアルタイムで更新されます。

**金融サービス** —
融資担当者ノート、借り手とのコミュニケーション、および引受コメントにわたる\ ``GROUP BY``
リスクセグメント。量的モデルが見逃す表面パターン—デフォルトの前にあるフリーテキストフィールドのナラティブシグナル。

**ヘルスケアとライフサイエンス** — ``GROUP BY``
患者のフィードバック、臨床ノート、および退院概要にわたる\ ``GROUP BY``
施設、部門、または状態。
PHIを外部サービスに公開せずに、ケアの質の変動を特定します。

**法とコンプライアンス** — ``GROUP BY``
数千のコンプライアンス文書、監査結果、および規制対応にわたる\ ``GROUP BY``
管轄または規制タイプ。数週間の手動レビューを単一のクエリーに削減します。

**営業とカスタマーサクセス** — ``GROUP BY``
CRMノート、通話のトランスクリプト、およびメールの概要全体の営業担当者、地域、または取引ステージ。すべてのCRMの非構造化テキストから勝敗パターンとコーチングの機会を抽出します。

**製造とサプライチェーン** — ``GROUP BY``
調達通信、品質レポート、および出荷ノートにわたる\ ``GROUP BY``
サプライヤーまたはコンポーネント。配信メトリックに表示される前に、ナラティブシグナルからサプライチェーンリスクを検出します。

**HRとタレント** — ``GROUP BY``
退職インタビューの記録と従業員アンケートの回答にわたる部門、在職期間、またはロールレベル。人々が去った本当の理由を表面化します。

その仕組み
----------

AIDBは、データベースのネイティブ状態蓄積フレームワークを使用して、真のPostgreSQL集計を実装します。

- **Stateファンクション** —
  グループ内の各行からテキストを蓄積し、メモリ内のグループごとの状態を維持します

- **ファイナライズファンクション** -
  蓄積されたテキストを構成済みのLLMに送信し、結果を返します

- **チャンキングエンジン** -
  大きなテキストグループを管理可能なチャンクに自動的に分割しますワード数または文字数で構成可能、状況保存のためのオーバーラップあり

- **削減戦略** — ``append`` はチャンクサマリーを連結します。 ``reduce``
  は、出力が収束するまで繰り返し再要約します。データベース内で実行される真のマップ-リデュースパターン

- **カスタムプロンプト**
  —各クエリーは独自の指示を指定できます。要約、翻訳、センチメントの抽出、分類、トレンドの特定
  —同じ機能を無限に柔軟にする

- **モデルに依存しない** —
  クエリごとに構成可能なOpenAI互換エンドポイントGPT-4o、Llama、Mistral、オンプレミスモデルで動作します

すごい瞬間
----------

顧客設定データのテーブルから始めます -
20の顧客と5つの製品カテゴリにわたる126行。生データは、非構造化テキストの壁です。

次のクエリーを実行します。

.. code:: sql

   SELECT name,
          aidb.summarize_text_aggregate(
              preferences,
              aidb.summarize_text_config(gpt-4o)::json
          ) AS style_profile
   FROM customer_preferences
   GROUP BY name;

数秒で、126行は20行になります。それぞれは、その顧客のすべてのデータポイントから合成されたリッチで一貫したスタイルのプロファイルです。パイプラインはありません。エンジニアリングチームはありません。データベースからデータは残りませんでした。

次に、プロンプトを変更します。

.. code:: sql

   SELECT category,
          aidb.summarize_text_aggregate(
              preferences,
              aidb.summarize_text_config(
                  gpt-4o,
                  prompt => Identify the 3 strongest purchasing signals and recommend inventory actions
              )::json
          ) AS buying_signals
   FROM customer_preferences
   GROUP BY category;

同じデータ。同じ機能。別の質問。異なる洞察力。アナリストは文字列を1つ変更し、まったく新しい分析を取得しました。コードの展開、パイプラインの変更、チケットのファイルはありません。

それは、カチッとした瞬間です。アナリストが既に知っているツールを使用して、組織全体の非構造化データが自然言語で照会可能になります。

チャンクとカスタムプロンプトを使用した例
----------------------------------------

大規模なテキストグループの場合、チャンクとターゲットを絞ったプロンプトを組み合わせます。

.. code:: sql

   SELECT product_category,
          aidb.summarize_text_aggregate(
              review_text,
              aidb.summarize_text_config(
                  local-llama,
                  aidb.chunk_text_config(120, 120, 15, words),
                  Identify the top 3 quality issues and suggest improvements,
                  reduce
              )::json
          ) AS quality_analysis
   FROM product_reviews
   GROUP BY product_category;

競争力のあるポジション
----------------------

.. csv-table::
  :header: Capability,Traditional ETL + LLM API,AIDB in-database aggregate
  :widths: 12,25,15
  :align: left
  :class: longtable

  Data movement,Required (security risk),None (data stays in place)
  User interface,Python / custom app,SQL (universal)
  Infrastructure,Airflow + queues + compute,PostgreSQL (existing)
  Time to first insight,Days to weeks,Minutes
  Ad-hoc queries,Requires new pipeline,Change the SQL
  Access control,Separate system,PostgreSQL RBAC / RLS
  Audit trail,Must be built,PostgreSQL native logging
  Compliance,Requires separate review,Inherits DB compliance posture
  Model flexibility,Locked to provider,Any OpenAI-compatible endpoint
