IBMニュースレター
The DX Leaders
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
ツール呼び出しとは、人工知能(AI)モデルが外部ツール、アプリケーション・プログラミング・インターフェース(API)、またはシステムと対話して、その機能を強化する能力を指します。
ツール呼び出し機能を備えたAIシステムは、事前トレーニングされた知識だけに依存するのではなく、データベースにクエリーを実行したり、リアルタイム情報を取得したり、機能を実行したり、オペレーションを実行したりすることができます。
ツール呼び出しは関数呼び出しとも呼ばれ、エージェント型AIを実現する重要な要素です。外部リソースに動的にアクセスし、それに基づいて動作することで、自律システムが複雑なタスクを完了できるようになります。
ツール呼び出し機能を備えた大規模言語モデル(LLM)は、単に質問に答えるだけでなく、ワークフローを自動化したり、データベースを操作したり、複数ステップの問題解決を実行したり、リアルタイムで意思決定を行ったりすることができます。
この変化により、LLMは受動的なアシスタントから、複雑なタスクを実行できる能動的なデジタル・エージェントへと変化しています。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
大規模言語モデル(LLM)は従来、トレーニングに使用されるデータによって制限され、時間と計算量が多くなるプロセスです。
主要なLLMは膨大なデータセットでトレーニングされていますが、リアルタイムのデータ、外部計算、強化されたインタラクティブ性の必要性から、ツール呼び出し機能が統合されました。
OpenAIのGPT-2を含む初期のLLMは静的でした。新しい情報を取得する機能がなく、学習データに基づいて応答を生成していました。
これには素晴らしい点もありましたが、現実世界に対する認識が欠如しており、現在の出来事、株価、ユーザー固有のアクションなど、リアルタイムのデータを必要とする動的なクエリーに苦労していました。
こうした制限に対処するために、開発者は外部プラグイン、API、データベースを統合し始め、モデルが静的なトレーニング・データだけに頼るのではなく、リアルタイムの情報を要求して処理できるようにしました。
開発者は、クエリーに外部からの支援が必要な場合を認識できるようにLLMをトレーニングしました。さらに、外部システムには特定のインプット・スキーマがあることがよくあります。ツール呼び出しは、外部システムで使用される特定のスキーマに一致するモデル応答を要求します。
ツール呼び出しには、AIと外部ツールの連携を容易にするために連携する複数の主要コンポーネントが含まれます。AnthropicのClaude、MetaのLlama 3、Mistral、IBM® Granite™といった最新のLLMはすべてツール呼び出し機能を備えていますが、それぞれ処理方法が若干異なります。
最初のコンポーネントはAIモデル自体で、十分な知識が不足している場合や、リクエストを完了するために外部機能が必要な場合を認識します。
次に、ツール選択メカニズムは、検索エンジン、データベース、計算リソースなど、特定のタスクを処理するための適切な依存関係を識別します。
ツールを選択すると、APIインターフェースが機能し、AIが構造化されたクエリーを送信し、機械が読み取り可能な形式で応答を受信できるようになります。
最後に、応答処理システムは、取得されたデータが正しくフォーマットされ、意味のある方法でユーザーに提示されるように支援します。
ユーザーがLLMに「今のサンフランシスコの天気はどうですか」と質問したとします。AIは自然言語理解を使用して、静的なナレッジ・ベースからは得られないリアルタイムの天気データが必要であることを認識します。
モデルがツールを使用するために行ったリクエストには、一意のツール呼び出しIDが自動的に割り当てられます。このIDは、リクエストと対応する結果をリンクするための追跡番号として機能します。
AIはタスクに最適なツールを特定します。このケースでは、最新の気象データベースをチェックします。このステップにより、取得した情報の正確性と関連性が確保されます。
各ツールには、一意のツール名(または関数名)などのメタデータと構造化情報が含まれており、モデルとシステムがツールを正しく識別するのに役立ちます。その他のメタデータには、説明、ツールパラメータ、必要な入出力タイプなどがあります。
モデルは、利用可能なツールの選択肢からデータを取得する必要があると判断した後、ツールの選択を実行します。
テンプレートは、使用するツールとどの議論(または「arg」)をモデルに指示する構造化されたプロンプト形式で、APIとのより制御的で構造化されたやり取りが可能になります。
ツール呼び出しのコンテキストでは、argsは、生成モデルによってツールまたは関数が開始されたときにツールまたは関数に渡される構造化されたインプットを指します。これらの引数は、ツールが適切に実行するために必要なパラメーターを定義します。
ツール呼び出しと検索拡張生成 (RAG)を組み合わせると、システムが構造化出力を生成する前に構造化データと非構造化データの両方を取得できるようになり、AI機能が強化されます。
このアプローチでは、応答を生成する前に最も関連性の高いデータを取得することでコンテキストの関連性を高め、より情報に基づいた正確なアウトプットを実現します。
また、1つのステップで複数の取得を行うことでAPIのオーバーヘッドを最小限に抑え、遅延を抑え、コストを削減します。RAGは従来のツール呼び出しよりも柔軟性が高く、さまざまなソースからモデルを取得できるため、さまざまなドメインにわたって高度な適応性が実現されます。
従来のツール使用の厳格な構造とは異なり、RAGは取得した知識と推論および生成をより流動的に統合することを可能にし、より動的で洞察力に富んだ応答をもたらします。
次に、AIはツールまたはAPIが理解できる構造化されたリクエストを作成します。
各ツールは、ツールの機能を定義する特定のツール関数に関連付けられています。これらの関数はAPIリファレンスに依存しており、エンドポイントURL、リクエスト・メソッド、レスポンス形式など、ツールのAPIの操作方法に関するドキュメントが提供されています。
多くのサービスでは、外部APIにアクセスするにはAPIキーが必要です。APIキーは、リクエストを実行するための権限を付与する一意の識別子です。ツールが選択され、パラメーターが設定されると、要求されたデータを取得するためのAPI呼び出しが行われます。このリクエストは通常、HTTP経由で外部サーバーに送信されます。
外部ツールはデータを返します。AIはツールの結果を解析する必要があります。天気予報のリクエストの場合、APIは気温、湿度、風速を含むJSONスキーマ・オブジェクトを返します。AIはこのデータをフィルタリングして構造化し、ユーザーにとって意味のある応答を要約します。
AIは処理済みの情報を直感的に提供します。リクエストにリマインダーの設定などの自動化が含まれる場合、AIはアクションがスケジュールされていることを確認します。
ユーザーがさらに詳しい情報や変更を要求した場合、AIは調整されたクエリーを使用してプロセスを繰り返すことができ、ユーザーのニーズに基づいて応答を継続的に改善することができます。
LangChainは、外部ツール、 API 、機能をLLMと統合するためのオープンソースフレームワークを提供することで、ツール呼び出しでよく利用されています。ツールの実行、アウトプットまたはインプットの処理、およびコンテキストに応じた意思決定の管理に役立ちます。
たとえば、LangChainはユーザー・クエリーのパーサーを使用して関数の引数を処理し、関連するパラメーターを抽出してツールに合わせて正しくフォーマットします。単純なツール呼び出しとは異なり、LangChainは以前のツール・アウトプットを保存して呼び出すことができるため、より優れたマルチターン相互作用が可能になります。
LangChainは複数のツールを連続的に組み合わせることができるため、より複雑なエージェント・ワークフローを実現できます。たとえば、まず天気APIからデータを取得し、その後別のツールを使用して天気予報に基づいた服装を推奨することができます。
ツール呼び出しにより、LLMはさまざまなタスクを実行できます。ツール呼び出しを利用するAIアプリケーションのユースケースは無限にありますが、ここでは一般的な5つのカテゴリーと実際の例をご紹介します。
AIは、Web、ニュースソース、学術データベース、金融市場などからリアルタイムデータを取得します。たとえば、AIチャット・モデルは検索APIを呼び出して最新の株価やAI研究論文を提供し、チャットボットを通じてその情報を提供することができます。
これにより、AIはWolfram AlphaやPython実行環境などの数学エンジンを使用して複雑な計算を実行したり、スクリプトを実行したりできるようになります。これは、方程式を解いたり、シミュレーションを実行したり、小さなコードスニペットを実行したりするのに役立ちます。
AIは、GoogleカレンダーやZapierなどのプラットフォームとの連携を通じて、会議のスケジュール設定、メールの送信、ToDoリストの管理といったワークフローを自動化します。AIエージェントはSalesforceやQuickBooksといったCRM、財務、分析ツールと連携できるため、顧客データの取得や財務報告といったプロセスを自動化できます。
エージェント型AIシステムは、ホーム・オートメーション・システム、産業用IoTデバイス、ロボットを監視・制御できます。将来的には、エンドツーエンドのワークフロー全体が自律エージェントによって処理されるようになることも容易に想像できます。
生成AIを使用してワークフローとプロセスを自動化する強力なAIアシスタントとエージェントを構築、デプロイ、管理しましょう。
信頼できるAIソリューションでビジネスの未来を構築します。
IBMコンサルティングAIサービスは、企業がAIをトランスフォーメーションに活用する方法を再考するのに役立ちます。