GraphQLでAIのハルシネーションを軽減し、プライバシーを保護

F5エコシステム | 2023年11月09日

生成AIは、運用と開発の分野に多くの機会をもたらす一方で、セキュリティソリューションへの導入を試みる際には多くの課題も生じます。

そのような課題の1つは、アプリケーションやAPIを不正行為や悪用から保護するためのセキュリティポリシーなど、サードパーティのAIサービスとの共有が許可されていない機密性の高いコンテンツについて、LLM(大規模言語モデル)を通じて知見を得る方法です。

LLMの2つ目の課題は、ハルシネーションを起こしやすいことです。特に、LLMがほとんど知識を持たないテーマに関するコンテンツの分析や生成を求められた場合に顕著です。これは、DEXなどのドメイン固有言語でよく見られます。DEXは、仕様が明確に定義されているものの、広く利用されているわけではない、純粋関数型かつ静的型付けの非チューリング完全言語です。

第1の課題であるデータプライバシーは、一見すると克服不可能に思えます。セキュリティ企業は、ポリシーを含むすべての顧客データのプライバシーとセキュリティを極めて重視しなければなりません。そのため、LLMを活用してポリシーから知見を引き出すことは、運用面でもお客さまにとっても有益ですが、機密データをサードパーティのLLMと共有せず、LLMがそのデータを処理できない状態を保ちながら、知見を抽出できるソリューションが必要です。第2の課題であるハルシネーションは、業界全体が現在克服に取り組んでいる問題であり、特にポリシー、構成、コードに関する回答で顕著です。

人間にはプログラムが文字の並びとして見えますが、コンパイラは異なる形で捉えます。コンパイラにとって、DEXプログラムはAST(抽象構文木)と呼ばれるデータ構造の一種です。この木は有向非巡回グラフであるため、対象となるポリシーはグラフでの表現に適しています。そこでF5が見いだしたソリューションでは、グラフデータベース(Neo4j)を活用し、GPTエージェントによってそのデータベースに対するGraphQLクエリを生成します。このアプローチでは、データを格納したグラフデータベースにGraphQLでクエリを実行しながら、第三者のLLMにデータを開示せずプライバシーを保護できるため、最初の課題を的確に解決できます。

2つ目の課題であるハルシネーションは、克服がより困難です。しかし、この課題にもF5のアプローチは有効であり、複数のAI技術を用いてリスクを軽減します。さらに、GraphQLは広く利用され、十分なドキュメントが整備されたクエリ言語です。ほとんどのGPTモデルがGraphQLに精通しており、さまざまなツールで構文を容易に検証できます。これにより、ハルシネーションが発生する可能性を低減し、使用前に正確性を確認できます。

AIのハルシネーションとは

AIハルシネーションとは、生成AIが実際のデータやパターンに基づかず、捏造または歪曲された出力を生成する現象を指します。多くの場合、AIのトレーニングデータに限界や偏りがある場合や、AIがこれまで遭遇したことのない状況に対して出力を生成しようとする場合に発生します。ハルシネーションは、捏造された内容や意味をなさない内容、論理的に矛盾する可能性のある結論、入力データと一致しない可能性のある結論として現れることがあります。たとえば、テキスト生成AIが、一見もっともらしくても、実際には意味をなさない文や、与えられた文脈とは無関係な文を生成する場合があります。

GraphQLとは

GraphQLは、API(アプリケーションプログラミングインターフェース)向けのオープンソースのクエリ言語であり、データ用に定義された型システムを使用してクエリを実行するサーバー側ランタイムでもあります。Meta(Facebook)が開発したもので、従来のRESTful APIに代わる、より効率的で強力かつ柔軟な選択肢となるよう設計されています。GraphQL APIは、クエリまたは変更が可能なデータ型を指定するスキーマによって定義されます。この強い型付けにより、ツールの機能、イントロスペクション、検証を強化できます。

F5のアプローチ

生成AIをセキュリティに安全に組み込むため、GPTエージェントを採用しました。十分に文書化された言語を使用することでハルシネーションのリスクを軽減できますが、機密データをOpenAIに送信することなく、エージェントの出力範囲を、エラーをプログラムで検証できる形式に制限する方法が必要でした。そこで、出力形式としてGraphQLを使用しています。GraphQLは、ほとんどの質問に回答できる十分な表現力を備えていると同時に、既知のスキーマに照らしてプログラムで検証できる抽象化レイヤーとして機能するためです。

このアプローチはDEXに適用していますが、ソーシャルネットワーク、ネットワークおよびインフラストラクチャのトポロジー、サプライチェーン、地理空間(マッピング)データなど、相互接続性と関連性が十分に高いあらゆるデータセットにも適用できます。

PCグラフアーキテクチャ

PC-graphアーキテクチャは、DEXをグラフ表現に変換するコンポーネントで構成されます。生成されたグラフデータはNeo4jデータベースに保存されます。GPTエージェントの出力はAPI経由でGraphQL Apolloサーバーに送信でき、同サーバーがグラフデータベースに対してクエリを実行します。

このエージェントはGPT4を使用し、DEXで記述されたポリシーに関する情報を求める自然言語のリクエストに応答します。pc-graph APIを理解し、ユーザーが確認して実行できる適切なクエリまたはミューテーションを返すことで、これを実現します。

pc-graph APIに加え、このエージェントは使用されているライブラリとDEX言語に関するいくつかの概念も理解します。最適な結果を得られるよう、実行時のコンテキストに含める情報を慎重に選定しています。

この方法の課題の1つは、スキーマの関連部分に加え、ライブラリによって生成される追加の型、クエリ、ミューテーションを含むneo4j-graphQLドキュメントなどの補足資料を保持するために、エージェントが大きなコンテキストを必要とすることです。GPT4-8kでは、適切なインコンテキスト学習に必要な容量が不足します。32kのコンテキストであれば許容可能な結果が得られますが、追加コストも発生します。たとえば、OpenAIへのリクエストごとにGraphQL SDL(Schema Definition Language)を送信する必要があります。GPT4の対話モデルをスキーマでファインチューニングできれば、スキーマをコンテキストに含める必要がなくなるため、この問題は解消されます。しかし、現時点ではOpenAIでサポートされていません。

GPT4の結果を改善する3つのAIアプローチが明らかになりました。

  1. 思考の連鎖
    • Chain of Thought(CoT)は、人間のような思考プロセスをシミュレートするAIの概念です。人間が思考を鎖のようにつなげるのと同様に、システムがアイデアや概念を論理的な順序でたどれるようにします。これは、自然言語の理解、推論、文脈の把握に役立ちます。この手法は、最先端モデルのGPT-4に適用した場合に最良の結果が得られます。
  2. リフレクティブAI
    • Reflective AIは、自己認識型AIまたは内省機能を備えたAIとも呼ばれ、自らの行動やプロセスを内省し、それらについて意思決定を行う能力を持つ人工知能システムを指します。このレベルのAIは、より高度な自己認識と自己評価を伴うため、従来の機械学習や基本的な意思決定機能の枠を超えています。言語的強化学習を用いた言語エージェント向けフレームワーク「Reflexion」は、「タスクのフィードバック信号を言語化して振り返り、その内省テキストをエピソード記憶バッファに保持することで、その後の試行における意思決定の改善を促します」。
  3. 自己との対話
    • 対話型解決エージェント(DERA)は、フィードバックを伝達することでLLMの出力を反復的に改善する手法として提案されました。この手法では、情報処理を担うリサーチャーと、最終判断を担うディサイダーという2つのエージェントを使用します。両者のやり取りはエージェント間の対話として構成され、ディサイダーには最終出力を自律的に判断する権限が与えられます。

最後のステップとして、GraphQLクエリの構文エラーを静的にチェックするツールを使用し、初期の緩和策をすり抜けた可能性のあるハルシネーションを検出します。

GPTエージェントの図

この設計では、同じプロンプトで最初に3つの回答候補を生成することで、さらなる改善を図っています。これにより、特定のプロンプトにかかる時間とコストを削減できるだけでなく、回答の正しい要素が現れる可能性が高まり、一貫性も向上します。また、可能性は低くても正確な選択肢を探るために、ランダムな変動を取り入れる余地も生まれます。

このアプローチにより、非公開データを共有することなく、ポリシーから知見を得られるようになりました。また、クエリ結果の品質と一貫性も大幅に向上し、特に複数のフィルターや集計関数を含む大規模または複雑なクエリを構築するタスクでは、ハルシネーションが顕著に減少しました。

ある意味、創造性と決定論的な動作のどちらかを選ぶ必要がある場合でも、両方を採用することで双方の利点を得られます。

共有

関連するブログ記事

SOAS 2025:足並みの乱れが凡庸さを招く
F5エコシステム | 2025/05/13

SOAS 2025:足並みの乱れが凡庸さを招く

AI導入における方針の不一致は、非効率を招きます。セキュリティ、自動化、導入の各戦略を整合させ、AIの可能性を最大限に引き出す方法をご紹介します。

WebAssemblyが重要な理由
F5エコシステム | 2024/10/02

WebAssemblyが重要な理由

WebAssembly(Wasm)は、あらゆるプラットフォームで高性能なアプリケーションを実現する、ポータブルで高速かつセキュアなバイナリ命令セットです。

クラウドのコモディティ化
F5エコシステム | 2022/07/19

クラウドのコモディティ化

パブリッククラウドはもはや目新しい存在ではありませんが、XaaSやエッジ、そして新たなイノベーションサイクルへの道を切り開きました。

インフラストラクチャは依然として格好の攻撃経路
F5エコシステム | 2021/05/17

インフラストラクチャは依然として格好の攻撃経路

クラウドコンピューティングでは、APIやドラッグ&ドロップ式の設定ツールを活用し、ネットワークやインフラストラクチャを敬遠する人がそれらを直接扱わずに済むようにすることで、インフラストラクチャへの対応を不要にすることが長年追求されてきました。しかし、インフラストラクチャを無視することも、攻撃の主要な標的であるという事実を見過ごすこともできません。

堅牢なデータアーキテクチャがもたらす戦略的メリット
F5エコシステム | 2021/01/25

堅牢なデータアーキテクチャがもたらす戦略的メリット

適切に構築されたデータアーキテクチャがもたらす効果は、業務プロセスの改善にとどまりません。戦略的な業務効率の向上、より深いビジネスインサイトの獲得、隣接するビジネス機会への展開にもつながり、これらすべてをより俊敏に実行できるようになります。

デジタルワークフローにおける不正検知には、データだけでは不十分
F5エコシステム | 2020/09/21

デジタルワークフローにおける不正検知には、データだけでは不十分

2019年には、業界全体でクレジットカード詐欺の試みが約25万件確認されました。これは約2分に1件の割合です。今日、不正を検知するには、デジタルワークフロー上のできるだけ多くのポイントから収集したデータを相互に関連付け、手作業によるデータ処理をはるかに上回る速度で分析する能力が求められます。