メインコンテンツへスキップ

VillageSQL is a drop-in replacement for MySQL with extensions.

All examples on this page work on VillageSQL. Install Now →
要約は、長いテキストを要点を押さえた短い版に変換します。サポートチケット、顧客のフィードバック、記事、およびログエントリはいずれも、内容を素早く確認できる短い要約フィールドがあると役立ちます。MySQL には要約関数がありません。VillageSQL の ai_prompt() がそれを追加します。

VillageSQL の場合: SQL の中の要約

要約のプロンプトでは、望む長さと残すべき内容を指定します。
要約は他の列と同じようにクエリできます。読み取り時に AI 呼び出しは発生しません。

構造化された要約

特定のフィールドを抽出する必要がある用途では、JSON 出力を求めます。

複数列の内容を要約する

複数のフィールドを結合して、より豊富なコンテキストをモデルに与えます。
LEFT(body, 3000) は、過度に長いテキストをモデルに送ることを防ぎます。ほとんどの AI モデルにはトークンの上限があります。非常に長いドキュメントでは、最初の数千文字を要約するか、内容をチャンクに分割してください。

長さとスタイルの制御

プロンプトの言い回しが出力の長さとトーンを制御します。 UI のプレビューで使う要約では、あふれを防ぐために文字数の上限を指定してください。

モデルの選択

要約は一般に、より高速で安価なモデルで十分にこなせます。一括要約には claude-haiku-4-5 または gpt-4o-mini を使ってください。次の場合は claude-sonnet-5 に切り替えます。
  • 元のテキストが長く複雑である
  • ニュアンスのあるフィールドを含む構造化 JSON 抽出が必要である
  • 抽出した事実の正確さがコストより重要である
セットアップとプロバイダーの選択肢については、MySQL を AI API に接続するを参照してください。

よくある質問

元のテキストはどのくらいの長さまで扱えますか?

実用的な上限は 1 回の呼び出しあたり数千語です。AI モデルにはトークンの上限があります(現在のモデルでは通常 100K〜200K トークン)が、非常に長い入力はコストが高く、時間もかかります。約 5000 語を超えるドキュメントでは、最初のセクションを要約するか、チャンクに分割して各チャンクを要約してください。

要約を全文検索インデックスで使えますか?

はい。要約列にデータを入れた後、その列に FULLTEXT インデックスを追加します。要約は短くキーワード密度が高いため、生の内容よりも全文検索の対象として優れていることがよくあります。

同じドキュメントからは常に同じ要約が生成されますか?

いいえ。AI モデルは確率的です。同じプロンプトでも、呼び出しごとにわずかに異なる出力が生成されることがあります。一貫性が重要な場合は、要約を一度生成して保存し、読み取りのたびに再生成しないでください。

すでに要約済みの行はどう扱いますか?

元の内容が変わらない限り、再要約しないでください。WHERE summary IS NULL を使って、新規または更新された行だけを処理します。変更を追跡する必要がある場合は、summary_updated_at 列を追加し、内容の最終更新タイムスタンプと比較してください。

トラブルシューティング

関連項目