BigQuery と Document AI の統合によりドキュメント分析や生成 AI のユースケース構築を促進
Google Cloud Japan Team
※この投稿は米国時間 2024 年 1 月 5 日に、Google Cloud blog に投稿されたものの抄訳です。
デジタル トランスフォーメーションの加速に伴い、組織は膨大な量のテキストデータやその他のドキュメント データを生成しています。これらのすべてのデータには、インサイトの取得や生成 AI の新たなユースケースを実現する計り知れない可能性が秘められています。こうしたデータの活用を支援するため、このたび BigQuery と Document AI を統合したことを発表いたします。この統合により、ドキュメント データから簡単にインサイトを引き出して、新しい大規模言語モデル(LLM)アプリケーションを構築できるようになりました。
また、BigQuery をご利用のお客様は、Google の最先端の基盤モデルを利用した Document AI カスタム エクストラクタを作成して、それを独自のドキュメントやメタデータに基づいてカスタマイズすることができるようになりました。こうしてカスタマイズしたモデルを BigQuery から呼び出せば、シンプルで強力な SQL を活用して安全かつ管理された方法でドキュメントから構造化データを抽出できます。
この統合が行われる前、一部のお客様は、抽出ロジックや抽出スキーマを手作業でキュレートしながら、独立した Document AI パイプラインを構築することを試みていました。また、ネイティブな統合機能がないなか、データを同期して、その整合性を維持するには特注のインフラストラクチャを開発する必要がありました。そのため、ドキュメント分析プロジェクトはいずれも多額の投資を必要とする大規模な事業になっていました。今回の統合により、Document AI のカスタム エクストラクタ用のリモートモデルを BigQuery で簡単に作成できるようになりました。そのリモートモデルを利用してドキュメント分析や生成 AI を大規模に実行すれば、データ主導のインサイトやイノベーションの新時代を切り開くことができます。
データを統合、管理して AI エクスペリエンスにつなげる
カスタム エクストラクタは、Document AI Workbench を使用して以下の 3 つの手順で構築できます。
- ドキュメントから抽出する必要のあるデータを定義します。これはドキュメント スキーマと呼ばれるもので、カスタム エクストラクタの各バージョンとともに保存され、BigQuery からアクセスできます。
- 必要に応じて、アノテーション付きの追加ドキュメントを抽出のサンプルとして使用します。
- Document AI で提供される基盤モデルに基づいて、カスタム エクストラクタのモデルをトレーニングします。
Document AI では、手動トレーニングが必要なカスタム エクストラクタに加えて、経費精算、領収書、請求書、税務フォーム、政府発行の ID など、多数のシナリオですぐに使用できるエクストラクタがプロセッサ ギャラリーに用意されています。上記の手順を省略して、これらを直接使用することもできます。
カスタム エクストラクタの準備ができたら、BigQuery Studio に移動し、以下の 4 つの手順で SQL を使用してドキュメントを分析します。
- SQL を使用してエクストラクタの BigQuery リモートモデルを登録します。このモデルは、上記で作成したドキュメント スキーマを理解し、カスタム エクストラクタを呼び出して結果を解析できます。
- Cloud Storage に保存されているドキュメントについて、SQL を使用してオブジェクト テーブルを作成します。行レベルのアクセス ポリシーを設定してテーブル内の非構造化データを管理すると、ユーザーによる特定のドキュメントへのアクセスを制限して、プライバシーとセキュリティのために AI の能力を抑えることができます。
- オブジェクト テーブルで ML.PROCESS_DOCUMENT 関数を使用して API エンドポイントへの推論呼び出しを行い、関連するフィールドを抽出します。関数の外部で「WHERE」句を使用して、抽出対象のドキュメントをフィルタすることもできます。この関数は、抽出されたフィールドを各列とする構造化テーブルを返します。
- 抽出されたデータを他の BigQuery テーブルと結合して構造化データと非構造化データを組み合わせ、ビジネス価値を生み出します。
次の例は、ユーザー エクスペリエンスを示しています。
結果のテーブル
テキスト分析、要約、その他のドキュメント分析のユースケース
ドキュメントからテキストを抽出したら、以下のような方法でドキュメント分析を実施できます。
- BigQuery ML を使用してテキスト分析を実行する: BigQuery ML は、さまざまな方法でテキストモデルのトレーニングとデプロイをサポートしています。たとえば、BigQuery ML を使用してサポートへの問い合わせ時の顧客の感情を識別したり、製品に関するフィードバックをさまざまなカテゴリに分類したりできます。Python をご利用の場合は、Pandas 用の BigQuery DataFrames や scikit-learn などの API を使用して、データのテキスト分析を行うこともできます。
- PaLM 2 LLM を使用してドキュメントを要約する: BigQuery には、PaLM 2 モデルを呼び出してテキストを生成する ML.GENERATE_TEXT 関数があり、ドキュメントの要約に使用できます。たとえば、Document AI を使用して顧客のフィードバックを抽出し、PaLM 2 を使用してそのフィードバックを要約することができます。なお、いずれの作業でも BigQuery SQL を使用します。
ドキュメントのメタデータを BigQuery テーブルに保存されている他の構造化データと結合する: これにより、構造化データと非構造化データを組み合わせて、より強力なユースケースを実現できます。たとえば、オンライン レビューから収集したフィードバックを使用してライフタイム バリューが高い顧客を特定したり、顧客のフィードバックから特に要望の多い製品機能の一覧を作成したりすることができます。
検索および生成 AI のユースケースの実装
ドキュメントから構造化テキストを抽出したら、BigQuery の検索機能とインデックス作成機能を生かして「干し草の中から針を見つける」ようなクエリのために最適化されたインデックスを構築できます。これにより、強力な検索機能を利用できるようになります。
この統合は、SQL やカスタム Document AI モデルを使用したプライバシー フィルタリング、コンテンツの安全性チェック、トークン チャンクのためのテキスト ファイル処理の実行など、新しい生成 LLM アプリケーションの実現にも役立ちます。抽出されたテキストを他のメタデータと組み合わせれば、大規模な言語モデルを微調整するために必要なトレーニング コーパスのキュレーションを簡素化できます。さらに、BigQuery のエンべディング生成機能とベクトル インデックス管理機能によって確立された、管理されたエンタープライズ データ上に LLM ユースケースを構築できます。このインデックスを Vertex AI と同期させることで、検索拡張生成ユースケースを実装し、より管理され合理化された AI エクスペリエンスを実現できます。
次のステップ
上記の機能は現在プレビュー版で利用可能です。利用を開始するには、Google の営業担当者にお問い合わせいただくか、以下のチュートリアルをご覧ください。
ー ソフトウェア エンジニア Oliver Zhuang