ChatGPTを業務活用する際に役立つRAGと社内文書を活用する上での課題

2023年12月8日掲載

キービジュアル

ソフトバンク アドベントカレンダー 2023 8日目の記事を担当する松岡です。

普段は、TASUKIというAIを構築するためのアノテーション、データ構造化サービスを開発しています。

TASUKI事業では、画像認識分野のアノテーションの代行案件の引き合いが多かったのですが、最近では、ChatGPTブームの影響で、このChatGPTや他の大規模言語モデル(LLM)を業務効率化に活用しようとする案件が増えてきました。

この記事では、LLMやRAGを導入したいと考えている方々に向けて、私がTASUKIを通して得たLLM活用のノウハウを共有します。具体的には、LLMとRAGの基本的な仕組みや特徴精度向上のポイントについて説明し、最後に導入後に課題となりやすいポイントデータ構造化の重要性について触れます。

 

目次

この記事では
  • LLMやRAGをこれから業務活用したいと考えている方や、ChatGPTやCognitive Searchを導入したが会社でうまく活用できてない担当者に向けた記事です。
  • LLMやRAGを業務利用する際に、つまずきやすいデータの前処理・構造化の重要性について記載しています。
  • AIやITの専門知識がなくとも読める技術レベルの記事です。

ChatGPTを業務効率化に利用するために

ChatGPTを含む多くのLLMは、インターネット上の情報をあらかじめ学習しているため、一般的な知識、例えばWikipediaに書かれている知識を基に回答を生成できます。しかし、公開されていない社内データや、個人情報を含むデータから回答を生成することはできません。

業務データをLLMで活用する方法として、次の2つがあります:LLMのFine-tuning(再学習)と、LLMを拡張したRAG(Retrieval-Augmented Generation、検索拡張生成)

LLMのFine-tuningは、以下の点から難易度が高いと言われています:データの準備、GPUを使ったコンピューティングコスト、MLOps(継続的なデータ収集と再学習、重みの管理、ホスティング)。

そのため、AIの学習やMLOpsなどのノウハウが無い場合や、業務改善の検証を速やかに行いたい場合には、クラウドコンピューティング技術を使ってLLMを拡張させたRAGシステムの構築が有効です

RAGと外部データ検索

RAGは、ユーザの質問に関連するドキュメントをデータベースから検索し、検索した複数の情報を組み合わせてユーザの質問に回答するAIアプリケーションです。

システムの詳細な説明は省略しますが、ユーザがRAGから正しく回答を得るために必要な処理は次の通りです。

1.データストレージから質問と関連性の高いドキュメントを検索。

2.取得したチャンク(ドキュメント中の段落等の文章のかたまり)を組み合わせて適切な回答を生成。

現在のLLMの能力を考慮すると、2番目のステップは容易に行えます。一方で、1番目のステップで適切なドキュメントのチャンクを選び出すことは、LLMが出てくる前の検索技術が主に使用されるため、検索の精度が回答の精度を左右するという問題が出てきます。

Azure Cognitive Searchでは検索対象に応じて、以下の3つの検索方法が提供されています。

  • キーワード検索: 従来のインターネット検索技術を用いたキーワード検索
  • ベクトル検索: LLMを用いて質問文と検索対象をそれぞれベクトル化したい際の分散表現による検索。単語だけでなく単語の意味や文脈を考慮可能な検索
  • ハイブリッド検索: キーワード検索とベクトル検索を組み合わせた検索

TASUKIが検証した結果では、ハイブリッド検索>ベクトル検索>キーワード検索の順に検索精度が高い傾向でした。この結果は、以下の図に示すように、ベースとなるテキスト検索とベクトル検索の良さを併せ持つハイブリッド検索が有効であるという仮説を裏付けています。

RAGで回答精度が下がる要因

前述の通り、検索精度がRAGの回答精度を左右する重要な要因となりますが、全てのデータを適切に検索できる状況(つまり、1つのチャンクのみ登録されているRAG)を考えてみましょう。このシナリオにおいてデータ構造化とデータクレンジングの重要性について説明します

下記のようなシンプルなプレスリリースのような文章なら、プログラムが文章を左上から右下へと読み込むだけで、人間もLLMも同様に文章を理解できます

しかし、PDFやパワーポイントのような図表が含まれるドキュメントをプログラムで読み込むことは難しい傾向があります

例えば、下に示す決算資料の例では、セグメント別の売上高が積み上げ棒グラフで表現されています。人間は文字だけでなく視覚的な構造を理解できるため、こうしたグラフを直感的に解釈ができます。一方で、LLMはまだ視覚的な構造と言語(文字)を組み合わせるマルチモーダルな情報処理の研究が進んでおらず、LLMは文字のみを入力として内容を理解し、回答を生成します。

このグラフをLLMが理解しやすいように、構造化された文章で表現すると以下のようになります。ここでは、カンマと改行を用いて情報を表現します。この形式では、グラフの視覚構造が保持されているため、LLMも人間と同等のレベルで内容を理解できます。

余談ですが、TASUKIではGPT-4Vを利用した図表の認識や画像アノテーションの検証を行いました。しかし、現時点では人の手作業を代替するレベルのマルチモーダルな情報処理はまだ不可能であると判断しました。

今回紹介するのは簡単な例ですが、PyMuPDFというPythonでPDFを読み込むライブラリを利用してPDFを読み込んだ結果は右の図となります。左のグラフと読み込み結果を比較すると、視覚的に間違ったデータとして読み込まれています。

Pythonで読み込んだ文章を最初から確認していくと、2022年度Q1の売上が3,852億、2023年度Q1の売上が3,781億円と読み取れます。しかし、左のグラフでは、該当の売上金額はメディア・ECセグメントに対応しています。2022年度Q1、2023年度Q1の正しい売上はそれぞれ1兆3,620億、1兆4,297億となります。

PDFなどのドキュメントデータは、他の形式からPDFに変換する際に、PDFに埋め込まれた文字のテキストボックス、段落情報などの情報が失われる傾向があります。その結果、人間やLLM関わらず、PDFから取得した文字列を正しく理解することが難しくなります。

以上より、人間が理解しやすい図表を用いたドキュメントは、コンピュータで扱う場合に想定外の形式の文字列になり、人間、または人間と同等以上の言語理解能力を持つLLMでも正しく回答することが困難となります。

AIが読み込めないデータは人手で構造化

OCR(光学文字認識)などの技術が急速に進化していますが、複雑な図形を構造的な意味を保ちつつ文章化することは依然として課題となっています。マルチモーダルなAI技術が進歩することで、人間が手で構造化するデータの割合は減っていくと考えています。しかし、現時点ではRAGを業務利用する場合、1つ1つの図表に対してオーダーメイドで構造化する必要があります。

ここで2つの構造化方法を紹介します。

1つ目の例は、前の章で紹介したセグメント別の売上高を示す積み上げ棒グラフです。このグラフの情報は表として表すことができるため、コンマで区切ったCSVのような文章で表すことができます

2つ目の例は、ソフトバンクのESGレポートに記載されているサステナビリティ戦略の図表です。この図は、企業の抽象的な軸となる企業理念からソフトバンクが具体的に取り組む6つのマテリアリティ(重要課題)への繋がりを縦横の二次元の構造で表したものです。

マテリアリティは表として表すことができるため、1つ目の例と同じように、コンマで区切った構造で表すことができます「最上位」などの単語を用いてピラミッド構造を文章に書き起こすと、LLMが図表の構造を文章と認識して処理することが可能になります。

以上のように、構造化させたい図表が1つずつ異なる場合、個別に手作業で構造化する必要があります。

まとめ

この記事では、ChatGPTのようなLLMを業務活用する方法としてFine-tuningやRAGの構築方法を比較し、RAGの基本的な構造や技術としてのボトルネック、RAGの信頼性を評価するための精度考え方を紹介しました。また、RAGの代表例であるCognitive Searchの文章検索方法の特徴と、実際に業務に導入する場合に課題となる図表データの対応方法を解説しました。

LLMが回答できない図表でも、その構造的な意味を保持した文章に構造化することで、LLMが図表データに対して回答できるようになりますしかし、図形の種類は無数に存在し、1つずつ手作業でオーダーメイドで構造化する必要があります。図表によって構造化方法が千差万別であり、全ての図表に共通する「魔法の構造化方法」を紹介することは難しいのが現状です。

同様に、自社内の無数のドキュメントを1度に機械的に処理することも現状では困難で、社員自身やパートナー企業によって、データ構造化を行う必要があります。

ココはどうしても人手でがんばらなければいけないポイントですが、自社のリソースではむずかしい場合、アウトソーシングする手段もあります。

TASUKIは、学習データアノテーションの代行サービスに加え、RAG向けのデータ構造化サービスも提供しています。ChatGPTやRAGの精度向上にご興味がある方は、ぜひご相談ください。

 

それでは、ソフトバンク アドベントカレンダー 2023 9日目にバトンを渡します。

関連サービス

TASUKI Annotation

AI開発を加速する最高品質のアノテーション代行サービス。

自動アノテーション技術で迅速・安価に高品質な凝視データを作成。データ収集・撮影にも対応。

おすすめの記事

条件に該当するページがございません