メインコンテンツまでスキップ

Agent Bricksの使用: 情報抽出

備考

ベータ版

この機能は ベータ版です。

この記事では、Agent Bricks: 情報抽出を使用して情報抽出用の生成AI エージェントを作成する方法について説明します。

Agent Bricks は、一般的なAIユースケース向けに、ドメイン固有の高品質なAIエージェントシステムを構築および最適化するためのシンプルなノーコードアプローチを提供します。

Agent Bricks: 情報抽出とは?

Agent Bricks は、情報抽出をサポートし、ラベルのない大量のテキスト ドキュメントを、各ドキュメントの抽出された情報を含む構造化テーブルに変換するプロセスを簡素化します。

情報抽出の例を次に示します。

  • 契約から価格とリース情報を抽出します。
  • 顧客メモからのデータの整理。
  • ニュース記事から重要な詳細を取得します。

Agent Bricks: 情報抽出は、 MLflow や エージェント評価などの自動評価機能を活用して、特定の抽出タスクのコストと品質のトレードオフを迅速に評価できるようにします。 この評価により、精度とリソース投資のバランスについて、十分な情報に基づいた決定を下すことができます。

必要条件

  • サーバレスがサポートするワークスペースには、次のものが含まれます。

    • ワークスペースで Unity Catalog が有効になっている。
    • サポートされているリージョン ( us-east-1 または us-west-2のいずれかのリージョンのワークスペース。
    • system.aiスキーマを使用した Unity Catalog の基盤モデルへのアクセス。
    • 非ゼロの 予算を持つサーバレス 予算ポリシー へのアクセス。
  • ai_query SQL関数を使用する機能。

  • データの抽出元となるファイル。ファイルは、Unity Catalog ボリュームまたはテーブルに存在する必要があります。

    • エージェントを作成するには、 Unity Catalog ボリュームに少なくとも10個のラベル付けされていないドキュメント、またはテーブルに10行が必要です。
    • エージェントを最適化するには ((オプション) ステップ 4: 最適化されたエージェントを確認してデプロイする)、Unity Catalog ボリュームに少なくとも 75 個のラベル付けされていないドキュメントがあるか、テーブルに少なくとも 75 行ある必要があります。

情報抽出エージェントを作成する

ワークスペースの左側のナビゲーション ウィンドウで エージェントアイコン。 エージェント に移動し、 情報抽出 をクリックします。

Agent Bricks:情報抽出

ステップ 1: 入力データと出力例を追加する

構成 タブで、 >例を表示 をクリックして、情報抽出エージェントの入力およびモデル応答の例を展開します。

下のペインで、エージェントを設定します。

  1. [ソース ドキュメント ] フィールドで、Unity Catalog ボリュームから使用するフォルダーまたはテーブルを選択します。テーブルを選択した場合は、ドロップダウンからテキスト データを含む列を選択します。

    フォルダには サポートされているドキュメント形式の ドキュメントが含まれている必要があり、テーブル列には サポートされているデータ形式のデータが含まれている必要があります。このデータセットは、エージェントを作成するために使用されます。

    次に、ボリュームの例を示します。

    /Volumes/main/info-extraction/bbc_articles/

  2. 出力サンプル フィールドに、応答の例を入力します。

    JSON
    {
    "title": "Economy Slides to Recession",
    "category": "Politics",
    "paragraphs": [
    {
    "summary": "GDP fell by 0.1% in the last three months of 2004.",
    "word_count": 38
    },
    {
    "summary": "Consumer spending had been depressed by one-off factors such as the unseasonably mild winter.",
    "word_count": 42
    }
    ],
    "tags": ["Recession", "Economy", "Consumer Spending"],
    "estimate_time_to_read_min": 1,
    "published_date": "2005-01-15",
    "needs_review": false
    }
  3. エージェントの名前を入力します。変更しない場合は、デフォルト名のままにしておくことができます。

  4. エージェントの作成 を選択します。

サポートされているドキュメント形式

次の表は、Unity Catalog ボリュームを提供した場合にソースドキュメントでサポートされているドキュメントファイルの種類を示しています。

コードファイル

ドキュメントファイル

ログファイル

  • .c
  • .cc
  • .cpp
  • .cs
  • .css
  • .cxx
  • .go
  • .h
  • .hpp
  • .htm
  • .html
  • .java
  • .js
  • .json
  • .jsonl
  • .jsx
  • .lua
  • .md
  • .php
  • .pl
  • .py
  • .rb
  • .sh
  • .swift
  • .tex
  • .ts
  • .tsx
  • .md
  • .rst
  • .tex
  • .txt
  • .xml
  • .xsd
  • .xsl
  • .diff
  • .err
  • .log
  • .out
  • .patch

サポートされているデータ形式

Agent Bricks: 情報抽出は、Unity Catalog テーブルを提供する場合、ソース ドキュメントの次のデータ型とスキーマをサポートします。Agent Bricks は、各ドキュメントからこれらのデータ型を抽出することもできます。

  • str
  • int
  • float
  • boolean
  • カスタムネストされたフィールド
  • 上記のデータ型の配列

ステップ 2: エージェントを構築して改善する

[ ビルド ] タブの [エージェント構成 ] ウィンドウで、より良い結果が得られるようにスキーマ定義を絞り込みます。

  1. (オプション)エージェントのグローバル指示 (すべてのフィールドに適用できるプロンプトなど) を追加します。

  2. エージェントが出力応答に使用するスキーマフィールドの説明を調整します。これらの説明は、エージェントが抽出したいものを理解するために依存しているものです。

    ABIEの[ビルド]タブにあるエージェント設定ペイン

  3. [エージェントの更新 ] をクリックします。

[ビルド ] タブの左側で、推奨事項とサンプル出力を確認します。

  1. 各フィールドに用意されている仕様に基づいて、モデルの出力例を確認します。

  2. エージェントのパフォーマンスを最適化するための Databricks の推奨事項を確認します。

  3. 推奨事項を適用し、必要に応じて エージェント構成 ペインの説明と指示を調整します。

    ABIEのビルドタブのエージェントペインを改善する

  4. 変更と推奨事項を適用した後、 エージェントの更新 を選択して、それらの変更をエージェントに保存します。 エージェントの改善 ペインが更新され、新しいモデル例の出力が表示されます。このペインの推奨事項は更新されません。

これで、情報抽出のエージェントができました。

ステップ 3: エージェントを使用する

エージェントは、Databricks 全体のワークフローで使用できます。

使用 タブで、

  1. [ 抽出の開始 ] を選択して SQL エディターを開き、 ai_query を使用して新しい情報抽出エージェントに要求を送信します。

  2. (オプション)エージェントのコストを最適化する場合は、 最適化 を選択します。

    • 最適化には少なくとも 75 個のファイルが必要です。
    • 最適化には約 1 時間かかる場合があります。
    • 最適化が進行中の場合、現在アクティブなエージェントへの変更がブロックされます。

最適化が完了すると、[ レビュー ] タブに移動し、現在アクティブなエージェントとコストに最適化されたエージェントの比較が表示されます。(オプション) ステップ 4: 最適化されたエージェントを確認してデプロイするを参照してください。

  1. (オプション)[ パイプラインの作成 ] を選択して、スケジュールされた間隔で実行される DLT パイプラインをデプロイし、新しいデータでエージェントを使用します。パイプラインの詳細については LakeFlow 宣言型パイプライン を参照してください。

ABIE の [使用] タブにある [すべてのドキュメント] タイルと [エージェント パフォーマンスの最適化] タイルのデータを抽出します。

(オプション)ステップ 4: 最適化されたエージェントを確認してデプロイする

使用 タブで 最適化 を選択すると、Databricks は複数の異なる最適化戦略を比較して、最適化されたエージェントを構築して推奨します。これらの戦略には、 Databricks Geosを使用する基盤モデル ファインチューニングが含まれます。

レビュー タブで、

  1. 評価結果 では、最適化されたエージェントとアクティブなエージェントを視覚的に比較できます。評価を実行するために、 Databricks は各フィールドのデータタイプに基づいてメトリクスを選択し、評価データセットを使用してアクティブなエージェントとコストに最適化されたエージェントを比較します。 この評価セットは、元のエージェントの作成に使用したデータのサブセットに基づいています。

    1. メトリクスは、フィールドごとに MLflow 実行に記録されます (最上位のフィールドに集約されます)。
    2. ドロップダウンから overall_score 列と is_schema_match 列を選択します。
  2. これらの結果を確認した後、現在アクティブなエージェントの代わりにこの最適化されたエージェントをデプロイする場合は、 デプロイ をクリックします。

制限

  • Databricks では、エージェントを最適化するために少なくとも 75 個のドキュメントが必要です。より良い最適化結果を得るには、少なくとも 1000 個のドキュメントをお勧めします。ドキュメントを追加すると、エージェントが学習できるナレッジ ベースが増え、エージェントの品質と抽出精度が向上します。
  • ソースドキュメントに 3 MB を超えるファイルが含まれている場合、エージェントの作成は失敗します。
  • 64 KB を超えるドキュメントは、エージェントの構築中にスキップされる可能性があります。
  • 入力と出力の制限は 128K トークンです。
  • PrivateLink を使用するワークスペース (PrivateLink の背後にあるストレージを含む) はサポートされていません。
  • ユニオン スキーマの種類はサポートされていません。