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

Agent Bricksの使用: 情報抽出

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。「Databricks プレビューの管理」を参照してください。

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

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

Agent Bricks: 情報抽出とは?

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

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

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

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

Agent Bricks は、デフォルトのストレージを使用して、各エージェントを動かす一時的なデータ変換、モデル チェックポイント、および内部メタデータを保存します。エージェントを削除すると、エージェントに関連付けられているすべてのデータがデフォルトのストレージから削除されます。

必要条件

  • 次のものを含むワークスペース。

  • サポートされているリージョン ( us-east-1 または us-west-2のいずれかのリージョンのワークスペース。

  • ai_query SQL関数を使用する機能。

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

    • PDF を使用する場合は、まず Unity Catalog テーブルに変換します。Agent Bricks での PDF の使用を参照してください。
    • エージェントをビルドするには、Unity Catalog ボリュームに少なくとも 1 つのラベル付けされていないドキュメント、またはテーブルに 1 行が必要です。

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

へ移動エージェントアイコン。ワークスペースの左側のナビゲーション ペインにある エージェント情報抽出 タイルから、 「ビルド」 をクリックします。

ステップ 1: エージェントを構成する

エージェントを構成します。

  1. 名前 フィールドに、エージェントの名前を入力します。

  2. 提供するデータの種類を選択します。[ ラベルなしデータセット ] または [ラベル付きデータセット] のいずれかを選択できます。

  3. 提供するデータセットを選択します。

[ ラベルなしデータセット ] を選択した場合:

  1. [ データセットの場所] フィールドで、Unity Catalog ボリュームから使用するフォルダーまたはテーブルを選択します。フォルダを選択する場合、そのフォルダには 、サポートされているドキュメント形式のドキュメントが含まれている必要があります。

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

    /Volumes/main/info-extraction/bbc_articles/

  2. 表を指定する場合は、テキスト データを含む列をドロップダウンから選択します。テーブル列には、 サポートされているデータ形式のデータが含まれている必要があります。

    PDF を使用する場合は、まず Unity Catalog テーブルに変換します。Agent Bricks での PDF の使用を参照してください。

  3. Agent Bricks は 、サンプル JSON 出力 フィールドにデータセットから抽出されたデータを含むサンプル JSON 出力を自動的に推測して生成します。サンプル出力を受け入れたり、編集したり、目的の JSON 出力の例に置き換えたりすることができます。エージェントはこの形式を使用して抽出された情報を返します。

  1. サンプル JSON 出力 フィールドが、希望する応答形式と一致していることを確認します。必要に応じて編集します。

    たとえば、次のサンプル JSON 出力を使用して、一連のニュース記事から情報を抽出できます。

    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
    }
  2. 「モデルの選択」 で、情報抽出エージェントに最適なモデルを選択します。

    • スケールの最適化 (デフォルト): 大量のデータを処理する場合、またはコスト効率の高いエージェントを希望する場合は、このオプションを選択します。このモデルは、高いスループットとより速いターンアラウンドタイムを実現するように設計されており、ほとんどの情報抽出タスクに適しています。
    • 複雑さを最適化 : 複雑な推論が必要で、速度とコストよりも精度を優先する場合は、このオプションを選択します。このモデルは、長いドキュメント (財務書類など) に対して高度な推論機能を提供し、より複雑な抽出 (40 を超えるスキーマ フィールドの抽出など) を処理できます。
  3. エージェントの作成 をクリックします。

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

次の表は、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
  • enum (エージェントが定義済みのカテゴリからのみ選択する必要がある分類タスクに使用されます)
  • オブジェクト
  • 配列

enum(エージェントが定義済みのカテゴリのセットからのみ出力するようにしたい分類タスクに適しています) オブジェクト(「カスタムネストフィールド」の代わりに) 配列

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

[ビルド] タブでは、サンプル出力を確認して、スキーマ定義を調整し、より良い結果を得るための指示を追加します。

  1. 左側でサンプル応答を確認し、エージェントを調整するためのフィードバックを提供します。これらのサンプルは、現在のエージェント構成に基づいています。

    1. 行をクリックすると、入力内容と応答全体を確認できます。
    2. 下部の 「この回答は正しいですか?」 の横で、次のいずれかを選択してフィードバックを提供します。 親指を立てたアイコン。はい、 または 低評価アイコン。修正してくださいFix it フィードバックでは、エージェントが応答をどのように変更すべきかの詳細を追加し、クリックします。 アイコンを確認します。保存
    3. すべての回答を確認したら、 アイコンを確認します。はい、エージェントを更新します 。または、少なくとも 3 つの回答を確認した後で、 「フィードバックを保存して更新」 をクリックすることもできます。
  2. 右側の 「出力フィールド」 で、抽出スキーマ フィールドの説明を調整します。これらの説明は、エージェントが抽出したいものを理解するためのものです。左側のサンプル応答を使用して、スキーマ定義を調整します。

    1. 各フィールドについて、必要に応じてスキーマ定義を確認し、編集します。左側のサンプル回答を使用して、これらの説明を改良してください。
    2. フィールド名とタイプを編集するには、 鉛筆アイコン。フィールドを編集します
    3. 新しいフィールドを追加するには、 プラスアイコン。新しいフィールドを追加します 。名前、タイプ、説明を入力し、 「確認」 をクリックします。
    4. フィールドを削除するには、 ゴミ箱アイコン。フィールドを削除します
    5. エージェント構成を更新するには、 [保存して更新] をクリックします。
  3. (オプション) 右側の [指示] の下に、エージェントに対するグローバル指示を入力します。これらの手順は、抽出されたすべての要素に適用されます。指示を適用するには、 「保存して更新」を クリックします。

  4. 新しいサンプル応答が左側に生成されます。これらの更新された応答を確認し、応答が満足のいくものになるまでエージェント構成を継続的に調整します。

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

Databricks 全体のワークフローでエージェントを使用できます。デフォルトでは、Agent Bricks エンドポイントは 3 日間非アクティブになるとゼロにスケールされるため、稼働時間に対してのみ課金されます。

エージェントの使用を開始するには、 [使用] をクリックします。エージェントの使用方法はいくつかあります。

  • すべてのドキュメントのデータを抽出します[抽出の開始] をクリックして SQL エディターを開き、 ai_queryを使用して新しい情報抽出エージェントにリクエストを送信します。
  • ETL パイプラインの作成 : 「 パイプラインの 作成」をクリックして、スケジュールされた間隔で実行されるパイプラインをデプロイし、新しいデータでエージェントを使用します。パイプラインの詳細については、 Lakeflow Spark宣言型パイプライン」を参照してください。
  • エージェントをテストする : 「プレイグラウンドで開く」 をクリックして、テスト環境でエージェントを試し、どのように動作するかを確認します。AI Playground詳細については、 「LLM とチャットし、 AI Playgroundを使用してAIアプリのプロトタイプを生成する」を参照してください。

(オプション) ステップ 4: エージェントを評価する

高品質のエージェントを構築できたことを確認するには、評価を実行し、結果として得られた品質レポートを確認します。

  1. 品質 タブに切り替えます。

  2. クリック プラスアイコン。評価を実行します

  3. スライド表示される [新しい評価] ペインで、評価を構成します。

    1. 評価実行名を選択します。生成された名前を使用するか、カスタム名を指定するかを選択できます。
    2. 評価データセットを選択します。エージェントの構築に使用したのと同じソース データセットを使用するか、ラベル付きまたはラベルなしのデータを使用してカスタム評価データセットを提供するかを選択できます。
  4. [評価を開始]を クリックします。

  5. 評価実行が完了したら、品質レポートを確認します。

    • デフォルトでは 概要 ビューが表示されます。総合的な品質、コスト、スループット、評価メトリクスの概要レポートを確認します。 クリック情報ブックのアイコン。スキーマ フィールドの横にある をクリックすると、そのフィールドがどのように評価されるかを確認できます。

      評価レポートの概要ビュー。

    • 追加の詳細については、 詳細 ビューに切り替えてください。このビューには、各リクエストと各メトリクスの評価スコアが表示されます。 リクエストをクリックすると、入力、出力、評価、トレース、リンクされたプロンプトなどの追加の詳細が表示されます。リクエストの評価を編集し、追加のフィードバックを提供することもできます。

      評価レポートの詳細表示。

エージェント エンドポイントをクエリする

作成したナレッジアシスタントエンドポイントをクエリするには、複数の方法があります。AI Playground で提供されているコード例を出発点として使用します。

  1. [ 構成] タブで、[ プレイグラウンドで開く ] をクリックします。
  2. Playground から [ コードを取得] をクリックします。
  3. エンドポイントの使用方法を選択します。
    • [ データに適用] を選択して、エージェントを特定のテーブル列に適用する SQL クエリを作成します。
    • curl を使用してエンドポイントをクエリするコード例として、 [Curl API ] を選択します。
    • Python を使用してエンドポイントと対話するためのコード例として、 Python API を選択します。

権限を管理する

デフォルトでは、エージェント ブリックの作成者とワークスペース管理者のみがエージェントに対する権限を持ちます。他のユーザーがエージェントを編集または照会できるようにするには、明示的に権限を付与する必要があります。

エージェントの権限を管理するには:

  1. Agent Bricks でエージェントを開きます。

  2. 上部のケバブメニューアイコン。ケバブメニュー。

  3. [権限の管理] をクリックします。

  4. [権限設定] ウィンドウで、ユーザー、グループ、またはサービスプリンシパルを選択します。

  5. 付与する権限を選択してください:

    • 管理可能 : 権限の設定、エージェント構成の編集、品質の向上など、エージェント ブリックの管理を許可します。
    • クエリ可能 : AI PlaygroundおよびAPIを通じて Agent Bricks エンドポイントをクエリできます。 この権限のみを持つユーザーは、エージェント ブリックでエージェントを表示または編集することはできません。
  6. [ 追加 ] をクリックします。

  7. 保存 をクリックします。

注記

2025 年 9 月 16 日より前に 作成されたエージェント エンドポイントの場合は、 [サービス エンドポイント] ページからエンドポイントに クエリ可能 権限を付与できます。

Agent Bricks での PDF の使用

PDF は、Agent Bricks: 情報抽出とカスタムLLMではまだネイティブにサポートされていません。ただし、Agent Brick の UI ワークフローを使用して、PDF ファイルのフォルダをマークダウンに変換し、エージェントを構築するときに結果の Unity Catalog テーブルを入力として使用できます。 このワークフローでは、変換に ai_parse_document を使用します。以下の手順に従います。

  1. 左側のナビゲーション ウィンドウで [エージェント] をクリックして、Databricks で Agent Bricks を開きます。

  2. 情報抽出またはカスタム LLM ユースケースで、 [PDF の使用] を クリックします。

  3. 開いたサイドパネルで、次のフィールドを入力して、PDF を変換するための新しいワークフローを作成します。

    1. PDF または画像を含むフォルダーを選択 : 使用する PDF が含まれているUnity Catalogフォルダーを選択します。
    2. 宛先テーブルの選択 : 変換されたマークダウン テーブルの宛先スキーマを選択し、必要に応じて、下のフィールドのテーブル名を調整します。
    3. アクティブな SQLウェアハウスの選択 : ワークフローを実行する SQLウェアハウスを選択します。

    Agent Bricks で PDF を使用するようにワークフローを設定します。

  4. インポートの開始 をクリックします。

  5. [ すべてのワークフロー ] タブにリダイレクトされ、すべての PDF ワークフローが一覧表示されます。このタブを使用して、ジョブのステータスを監視します。

    Agent Bricks で PDF を使用するためのワークフローステータスを確認します。

    ワークフローが失敗した場合は、ジョブ名をクリックして開き、デバッグに役立つエラーメッセージを表示します。

  6. ワークフローが正常に完了したら、ジョブ名をクリックしてカタログエクスプローラーでテーブルを開き、列を探索して理解します。

  7. エージェントを設定するときは、 Unity Catalog テーブルをAgent Bricksの入力データとして使用します。

制限

  • 情報抽出エージェントのトークンの最大コンテキスト長は 128k です。
  • セキュリティとコンプライアンスの強化が有効になっているワークスペースはサポートされていません。
  • ユニオン スキーマの種類はサポートされていません。