ジョインとLLMを使ったアート作品の鑑定(UltorgデータベースUI)
Ultorgの「Fill with AI」機能は、GPT-4.1-miniなどの大規模言語モデル(LLM)を使用してデータベースビューのデータ編集を自動化します。デモでは、国立美術館のデータベースからアート作品とタイムラインエントリをジョインし、カスタムプロンプトに基づいて作品のドル評価額を生成し、Excelファイルに書き込みます。この機能はUltorg 2.2.0以上とAnthropicまたはOpenAIのAPIキーが必要です。
Ultorgは、「Fill with AI」と呼ばれる新機能を導入しました。この機能は、大規模言語モデル(LLM)を利用してデータベース内のデータ編集を自動化するものです。ユーザーはUltorgのパースペクティブ(ビュー)でフィールドとジョインを調整し、AIに参照させたいデータを表示した後、編集対象の各カラムに対して簡単な英語のプロンプトを提供するだけで、LLMが対応する編集内容を生成します。例えば、あるデモでは、ユーザーが国立美術館のデータベースからアート作品のテーブル、タイムラインエントリのテーブル、その他の関連テーブルをビジュアルジョインで結合し、OpenAIのGPT-4.1-miniモデルに各作品の米ドルでの評価額を生成させ、その結果をExcelファイルに書き込みました。
この機能を使用するには、Ultorgバージョン2.2.0以上(2026-06-04リリース)が必要で、初回使用時にAIプロバイダ(AnthropicまたはOpenAI)を設定し、APIキーを入力する必要があります。設定後、編集メニューから「Fill with AI」を選択し、編集する各カラムにプロンプトを入力します(例:「保険目的のアート作品の評価額(米ドル)」、「評価の根拠」)。下部の大きなテキストフィールドに追加の指示を入力することもでき、ドロップダウンから特定のAIモデルを選択することも可能です。Ultorgはサポートされているプロバイダのデフォルトモデル(例:claude-sonnet-4-6やgpt-4.1-mini)を選択し、互換性のないモデルは非表示にします。
編集は段階的に行われます。「OK」をクリックすると、AI生成の編集内容がビューに順次表示され、ダイアログは開いたままになります。ユーザーはその間もスクロールやフィールドの表示/非表示の切り替えが可能です。最後の編集が完了する前に「キャンセル」を押すと、それまでにステージングされた編集は保持され、元に戻すこともできます(Ctrl+Z)。すべての編集が完了すると、LLMからの短い結論メッセージが表示され、プロンプトの曖昧さや判断が難しかったケース、処理中の仮定などが示されることがあります。データが複数のバッチに分割された場合は、各バッチの要約をまとめたものが表示されます。
ステージングされた編集をデータソースに永続的に書き込むには、「Apply Edits」をクリックします。適用前に、「Discard Edits」と元に戻す/やり直し(Ctrl+Z/Y)を使用して、編集前後の値を比較できます。
この機能は、数値、日付、タイムスタンプなど、あらゆる標準データ型のカラムで動作します。UltorgはLLMに対して正しい出力形式に関する指示を自動的に渡すため、ユーザーが自分で指示を書く必要はありません。プロンプトの例としては、「スウェーデン語に翻訳」、「架空のサポートチケットの説明を20個生成」、「住所から通り名を抽出」、「過去の履歴に基づいて各リードに1〜10のスコアを割り当てる」などがあります。LLMは複数の行にわたってコンテキストを維持することも可能で、例えば「アートレビュアーがリストの後半になるほど作品の質に懐疑的になり、最後には完全にうんざりしている簡潔なメモ」といった指示にも対応できます。
大量のデータを扱う場合、Ultorgは自動的にバッチ処理を行います。パースペクティブ内のデータが約100KB(約30Kトークン)を超えると、レコードはより小さなバッチに分割され、ダイアログボックスで通知されます。バッチ処理は透過的に行われますが、LLMが一度にすべての行を認識できるわけではないため、複数行にまたがるコンテキストが必要なプロンプトを使用する場合は、データ量がバッチしきい値を超えないように注意する必要があります。
Ultorgデスクトップアプリケーションは、中間サーバーを介さずに選択したAIプロバイダに直接接続します。APIキーはオペレーティングシステムのユーザーディレクトリに保存されます。現在サポートされているプロバイダは、Anthropic(有料)、OpenAI(有料)、およびOpenAI APIと互換性のあるその他のプロバイダ(API Base URLを変更)です。すべてのモデルはストリーミングと構造化JSON出力をサポートしている必要があります。
LLMに送信されるデータには、Ultorgにハードコードされた汎用編集指示、OKクリック時にパースペクティブに表示されているデータ(既存のステージング編集を含む)、Ultorgで表示されるフィールド名(データソースレベルの技術的なテーブル列名は意図的に省略)、編集対象の各カラムの表示名、データ型とそのデータ型の値提供に関する指示、NULL値のサポートとその出力方法に関する指示、ユーザーがカラムに対して指定した指示、および「Fill with AI」ダイアログでオプションで指定した追加指示が含まれます。LLMはすべての行を編集する義務はなく、OKをクリックした時点でパースペクティブに表示されていた行のみを編集できます。より多くの行をロードするにはスクロールダウンします。操作の実行中もユーザーはパースペクティブの操作を続けられますが、新しいデータ編集を行うと操作が中断されます。テキストフィールドは、LLMに要求される出力形式で他のフィールドより自動的に前に配置され、LLMが数値スコアなどを生成する際に「根拠」タイプのフィールドの推論を最近のコンテキストとして含めることができます。