RAG、ルーティング、エージェントにおけるPhi-3-Miniのパフォーマンスの評価

Phi-3-MiniのパフォーマンスをRAG、ルーティング、エージェントの観点から評価する。単純なRAGクエリ、複雑なクエリ分解、エージェントオーケストレーションなど、実用的なユースケースにおけるモデルの機能を探る。

2025年2月17日

party-gif

このブログ記事では、検索、クエリーラウティング、エージェントベースのフレームワークなどの実用的なユースケースにおける Phi-3-Mini 言語モデルの機能を探ります。内容では、さまざまなタスクにおけるモデルのパフォーマンスを詳細に分析し、その長所と短所について洞察を提供しています。読者は、このモデルが実世界のアプリケーションに適しているかどうかについてより良い理解を得るでしょう。

シンプルな検索とRAG

このモデルは、RAG (Retrieval-Augmented Generation) パイプラインを使用した単純な検索タスクでは、まあまあ良好なパフォーマンスを発揮します。「OpenAIとMetaのAIツールの違いは何ですか」といった単純な質問に対して、関連する文章の断片を圧縮し、まとまりのある要約を提供することができます。

しかし、質問がより複雑になると、モデルにはいくつかの制限が見られます。例えば、「ChatGPTにOpenAIが追加した新機能は何ですか」と尋ねると、モデルはMetaが導入した機能の一部をOpenAIに誤って帰属させるなど、異なるソースからの情報を混同したり幻想を生み出したりする傾向があります。

「ツリー要約」モードを使うと、モデルのパフォーマンスが向上します。このアプローチでは、最終的な応答を生成する前に、各文章の断片を再帰的に要約することで、異なる断片間の矛盾する情報の問題を軽減できます。

全体として、このモデルはRAGを使った単純な検索タスクでは適切な能力を示しますが、より複雑な質問に対しては性能が低下し、基礎となる情報の深い理解が必要とされます。

複雑なクエリとRAGの制限

このモデルの複雑な質問に対するパフォーマンスは、RAG (Retrieval-Augmented Generation) アプローチの限界を示しています。単純な質問には比較的うまく対応できますが、異なる文書の断片にわたる矛盾する情報を含む複雑な質問には苦戦します。

OpenAIの新機能について尋ねられると、モデルはMetaが実際に導入した機能の一部を誤って帰属させています。これは、モデルが情報の不一致や矛盾を解消し、統合することが難しいことを示唆しています。

しかし、モデルの質問分解機能はより有望です。複雑な質問が提示されると、モデルはそれを関連するサブ質問に分解し、適切な情報を検索することができました。これは、モデルが質問の基本的な構造を理解し、より体系的に対処しようとしていることを示唆しています。

エージェントオーキストレーションの文脈では、モデルのパフォーマンスは混合的でした。単純な質問に対しては、ツールは必要ないと判断し、自力で応答を生成することができました。しかし、より複雑な質問に対しては、利用可能なツールを効果的に活用して包括的な回答を提供することができませんでした。

全体として、結果はモデルがRAGベースのタスクを処理する一定の能力を持っていることを示していますが、複雑な質問やエージェントオーキストレーションに関しては限界があることを示しています。矛盾する情報の調整、知識の統合、外部ツールの効果的な活用など、さらなる改善が必要です。

クエリルーティングとクエリ分解

モデルの質問ルーティングと質問分解タスクに対するパフォーマンスは混合的でした。

質問ルーティングでは、提供されたツールの説明を効果的に使って、特定の質問に対してどのベクトルストアを使用すべきかを判断することができました。Metaに関する情報について質問された場合、モデルは「ベクトルツール」が適切なリソースであると正しく識別し、関連する回答を提供しました。同様に、Metaが導入したパーソナリティ駆動型チャットボットの数に関する具体的な質問に対しても、正しいベクトルストアを使って正確な情報を検索しました。

しかし、モデルが複数のツールを選択できるようになると、パフォーマンスが低下しました。OpenAIや他の企業が導入した主な機能について尋ねられた際、モデルはTeslaやAppleに関する情報を誤って帰属させました。これは、複雑な質問ルーティングに苦戦し、複数のソースを組み合わせようとすると幻想を生み出す可能性があることを示唆しています。

モデルは質問分解タスクでは良好なパフォーマンスを示しました。Metaとオープンエーアイの扱いの違いについての複雑な質問が提示されると、モデルはそれを3つのサブ質問に分解し、それぞれに関連する情報を検索して最終的な回答を合成することができました。生成されたサブ質問は論理的で、全体としての回答は両社を適切に比較するものでした。

要約すると、モデルは基本的な質問ルーティング機能を示していますが、複数のソースからの情報を組み合わせる必要がある複雑な質問では性能が低下します。一方、質問分解機能はより堅牢で、複雑な質問に効果的に取り組むことができます。ただし、実用的なユースケースを十分に活用するには、さらなる改善が必要です。

エージェントと数学的操作

Retrieval-Augmented Generation (RAG) モデルに対して行われたテストから、その機能と限界について興味深い洞察が得られました:

  1. 単純なRAG質問: モデルは単純なRAG質問に対して、文書内の情報に基づいて正確な回答を提供することができます。

  2. 複雑なRAG質問: 異なる文書の断片にわたる矛盾する情報を含む複雑な質問に直面すると、モデルは苦戦し、情報を誤って帰属させたり幻想を生み出したりする傾向があります。

  3. 質問ルーティング: モデルは質問ルーティングの能力を示しており、質問に応じて適切なベクトルストアを選択して関連情報を検索することができます。これは、モデルが異なる情報源のメタデータと機能を理解できることを示唆しています。

  4. 質問分解: モデルは複雑な質問をサブ質問に分解し、個別に情報を検索して結果を統合することができます。これは、複雑な情報ニーズに対処する能力の可能性を示しています。

  5. エージェントオーキストレーション: エージェントベースのフレームワークでテストした際、モデルの能力は限定的でした。特に複雑なタスクでは、数学演算を行うツールを効果的に活用することができませんでした。モデルは自力で計算を行うことを好む傾向にあります。

  6. 数学演算: 興味深いことに、モデルは提供されたツールを使うよりも、自力で簡単な数学演算を行う方が得意なようです。これは、モデルに一定の数学的推論能力があることを示唆しています。

全体として、RAGモデルは単純な情報検索や質問ルーティングなどの特定のアプリケーションで潜在的な可能性を示していますが、複雑なタスク、矛盾する情報の処理、エージェントオーキストレーションなどの面では限界があります。実用的なユースケースを十分に活用するには、モデルの推論能力と外部ツールとの統合の向上が必要です。

FAQ