著者:
(1)ケクサン・チャン、カリフォルニア大学サンタバーバラ校および平等な貢献
(2)ホンチャオ・チェン、ノースウッド高校と平等な貢献。
(3)カーネギーメロン大学のレイ・リー氏
(4)ウィリアム・ヤン・ワン、カリフォルニア大学サンタバーバラ校
大規模言語モデル (LLM) は、外部ツールを使用して複雑な問題を解決する上で有望な機能を示しています。ただし、既存のアプローチでは、ツールのデモンストレーションを微調整するか (追加のトレーニングなしでは新しいツールに一般化されない)、コンテキスト内でツールのドキュメントを提供するため、ツールの数が制限されます。どちらのアプローチでも、構文的に無効なツール呼び出しが生成されることがよくあります。この論文では、ツール拡張 LLM 用の有限状態マシン誘導デコード アルゴリズムである TOOLDEC を提案します。TOOLDEC は、有効なツール名と型に準拠した引数を保証することで、ツール拡張 LLM のツール関連エラーを排除します。さらに、TOOLDEC を使用すると、LLM は名前に含まれる情報のみを使用してツールを効果的に選択できるため、微調整やコンテキスト内ドキュメントは必要ありません。数学関数、ナレッジ グラフ関係、複雑な現実世界の RESTful API などのツールを含むさまざまなタスクで、複数の以前の方法とそれらの TOOLDEC 拡張バージョンを評価しました。私たちの実験では、TOOLDEC は構文エラーをゼロに削減し、その結果、大幅に優れたパフォーマンスと 2 倍の高速化を達成しました。また、TOOLDEC は、未知のツールに対して優れた一般化パフォーマンスを達成し、ベースラインよりも最大 8 倍優れたパフォーマンスを発揮することも示しました [1]
大規模言語モデル (LLM) を外部ツールで拡張すると (Mialon et al., 2023)、複雑な問題を解決できるようになります。現在の LLM は、リトリーバー (Shen et al., 2023; Gupta & Kembhavi, 2022; Schick et al., 2023)、RESTful API (Qin et al., 2023; Song et al., 2023)、プログラムインタープリター (Chen et al., 2022; Gao et al., 2023)、およびその他のさまざまなツールを利用できます。ツール拡張 LLM のパフォーマンスは、ツールをいつ使用するか、どのツールを使用するか、およびツールをどのように呼び出すかという 3 つの重要な決定を行う能力に依存します。既存のアプローチは、微調整またはコンテキスト内学習を通じてこれらの決定を行うことを学習します。
ただし、これらのアプローチでは、依然として誤ったツール呼び出しが生成されます。たとえば、コンテキスト内学習では、存在しないツールも次のトークンとして妥当に見える可能性があるため、ツールインベントリに存在しないツール名が簡単に生成される可能性があります (Song et al., 2023; Qin et al., 2023)。微調整されたモデルは、通常、正しい名前でツールを呼び出しますが、コンテキスト内学習と同様に、無効な引数を正しいツール関数に渡すことがよくあります (Hao et al., 2023)。さらに、従来のアプローチは、目に見えないツールにうまく一般化されません。微調整アプローチでは、新しいツールを採用するために追加のトレーニングデータとさらなる微調整が必要です。コンテキスト内学習アプローチでは、プロンプトにツールのドキュメントが必要です。
これらの問題に対処するために、我々は有限状態マシン (FSM) によってガイドされるデコード アルゴリズム TOOLDEC を提案します。これは、LLM がツールを適切に呼び出すことを保証するものです。我々の核となる洞察は、LLM デコード中に状態を明示的に表現することです。各状態は、ツール名とツール引数に対応する有効なトークン セットに関連付けられています。TOOLDEC は、デコードが進むにつれて状態から状態へと遷移します。各デコード ステップで、TOOLDEC は言語モデルの語彙全体からサンプリングするわけではありません。代わりに、現在の状態で許可されているトークンのサブセットからサンプリングします。TOOLDEC にガイダンスを提供する FSM は、ツール ドキュメントと API 署名から構築され、マシンがツール呼び出しの文法を正確に表現できるようにします。このようにして、TOOLDEC は常に次の文を生成することができます。
構文的に正しいツール呼び出し。図 1 は、TOOLDEC によって拡張された LLM が正確な引数 (“3.14” と “123”) で正しい関数呼び出し multiply を生成でき、そのためツールによって正しい結果が返されることを示しています。TOOLDEC と他のツール LLM を比較したその他の例については、付録 A.3 を参照してください。
さらに、TOOLDEC は、これまで登場したことのない新しいツールに、はるかに効率的に一般化します。新しいツールの微調整やコンテキスト内記述を必要とする従来のアプローチとは異なり、TOOLDEC はツールの API シグネチャ (名前と引数の型) から有限状態マシンを自動的に構築し、それを既存の FSM に追加します。その後、TOOLDEC は、微調整やコンテキスト内デモンストレーションなしで新しいツールを呼び出すことができます。事前トレーニング済みの言語モデルは、プロンプトが表示されたときにツール名を生成できますが、多くの場合、インベントリにない妥当なツール名を幻覚します。TOOLDEC はそうしません。図 1 では、product と multiply の両方がシナリオに対して妥当に聞こえますが、multiply のみが特定のツールです。TOOLDEC は存在するツールのみを呼び出すため、妥当だが存在しないツールを幻覚することはなく、ツール名を頼りに適切なツールを見つけることができます。
この論文の貢献は次のように要約できます。
• LLM がツールを適切に使用できるようにするための有限状態デコード アルゴリズム TOOLDEC を提案します。TOOLDEC には 2 つの利点があります。生成されたツール呼び出しは構文的に正しいことが保証され、未知のツールに効率的に一般化されます。
• 異なるドメインの 4 つの多様なデータセットで、TOOLDEC が以前の強力なベースラインと比較して優れたパフォーマンスを発揮することを実証的に検証しました。広範囲にわたる実験により、TOOLDEC はすべての構文エラーと幻覚的なツール名を排除し、精度が向上し、推論時間が最大 50% 短縮されることが示されました。また、結果は、TOOLDEC が 9 つの未知のツールを使用した数学的推論でベースラインの 8 倍以上、204 の未知のツールを使用した知識質問応答で 7 倍以上優れていることを示しています。
この論文は、CC 4.0 DEED ライセンスの下でarxiv で公開されています。
[1] 私たちはコードとデータをhttps://github.com/chenhongqiao/tooldecで公開しています。