AIエージェントツール
この記事では、Mosaic AI エージェント フレームワークを使用した AI エージェント ツールの構築の概要について説明します。
AIエージェントツールを使用すると、エージェントは、構造化データや非構造化データの取得やカスタムコードの実行など、言語生成以外のタスクを実行できます。
Unity Catalog 関数ツールとエージェントコードツール
Agent Framework でツールを作成するには、主に 2 つの方法があります。ツールを Unity Catalog 関数として定義する方法と、エージェントのコードで直接定義する方法です。
エージェントは、Unity Catalog 関数ツールまたはエージェントコードツールを任意に組み合わせて使用できます。どちらのタイプのツールも、ネイティブのPythonを使用して作成されたエージェント、またはLangGraphやOpenAI SDKなどのGen AIオーサリングライブラリを使用して作成されたエージェントで動作します。
Unity Catalog 機能ツール | エージェント コード ツール |
---|---|
|
|
エージェントツールの作成
エージェント ツールを作成する方法については、「 Unity Catalog 関数を使用してカスタム AI エージェント ツールを作成する」を参照してください。
エージェントツールの一般的なタイプには、次のものがあります。
- コードインタープリターツール:エージェントが任意のPythonコードを実行できるようにします。
- 構造化データ取得ツール: SQL テーブルのような構造化データソースをクエリします。
- 非構造化データ取得ツール:ドキュメントコレクションなどの非構造化データソースをクエリして、取得拡張生成を実行します。
- 外部接続ツール: 外部のサービスや API に接続して、データをフェッチしたり、タスクを実行したりします。
Unity Catalog ツールの管理
Databricks Function Client を使用して、Unity Catalog ツールを管理します。Databricks Function Client は、オープンソース の Unity Catalog Function Client に基づいていますが、Databricks独自の改善点がいくつかあります。
Unity Catalog 関数の管理に関する情報については、Unity Catalog ドキュメント - 関数クライアントを参照してください。
Unity Catalog ツールをエージェントに追加する
エージェントのコードで直接定義されるエージェントコードツールとは異なり、Unity Catalog ツールは、エージェントに明示的に追加して利用できるようにする必要があります。
Databricks では、 UCFunctionToolkit
を使用して Unity Catalog ツールを LangChain、OpenAI、その他の SDK などのエージェントオーサリングフレームワークと統合することを推奨しています。このツールキットは、異なるフレームワーク間での一貫性を確保し、便利な機能を自動化します。「Unity Catalog 関数を使用したカスタム AI エージェント ツールの作成」を参照してください。
AI Playground を使用すると、Unity Catalog ツールをエージェントにすばやく追加し、デプロイする前にその動作のプロトタイプを作成できます。「AI Playground でのプロトタイプ ツール呼び出しエージェント」を参照してください。