IBMニュースレター
The DX Leaders
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
金融機関の不正取引を監視してフラグを立てる単一の人工知能(AI)エージェントから、在庫レベルを追跡して需要を予測するサプライチェーン管理用のマルチエージェント・システムまで、エージェント型AIは企業にとって大きなメリットとなります。では、企業はどのようにしてAIエージェントを導入できるでしょうか。ここで役立つのがAIエージェント・フレームワークです。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
AIエージェントは、ユーザーに代わってタスクを自律的に実行できるプログラムです。これらのAIシステムは、まず複雑なタスクを達成するための一連の手順を含む計画を考案します。
次に、関数呼び出しを使用して、アプリケーション・プログラミング・インターフェース(API)、データ・ソース、Web検索、その他のAIエージェントなどの外部ツールに接続し、知識のギャップを埋めるのに役立ちます。
自律エージェントは行動計画を実行した後、フィードバックから学習し、学習した情報をメモリーに保存して将来のパフォーマンスを向上させます。
組織は、PythonやJavaScriptなどのプログラミング言語を使用して、AIエージェントをゼロから構築できます。ただし、より迅速でスケーラブルなアプローチには、AIエージェント・フレームワークの使用が含まれます。
エージェント・フレームワークは、AIエージェントを開発、デプロイ、管理するための構成要素です。これらのソフトウェア・プラットフォームには、次のようなプロセスの合理化と高速化に役立つ機能が組み込まれています。
エージェント型AIの構造、特性、機能の概要を示す定義済みのアーキテクチャー。
AIエージェントと人間のユーザーまたは他のエージェント間の対話を容易にする通信プロトコル。
タスクを調整するためのタスク管理システム。
関数呼び出しのための統合ツール。
エージェント型AIのパフォーマンスを追跡するための監視ツール。
AIエージェントを導入する前に、組織の目標とユースケースについて考えてください。理想的なフレームワークは、技術的な能力、短期的な要件、長期的な目標の間でバランスをとります。
AIエージェント・フレームワークを選択する際に考慮すべきいくつかの側面を次に示します。
複雑さ
データのプライバシーとセキュリティ
操作性
シームレスな統合
効率とスケーラビリティー
AIエージェントに実行させたいタスクと、それらのタスクの複雑さを特定します。単一エージェントのみを使用したシンプルなシステムにするか、マルチエージェント・エコシステムが必要かを判断します。
マルチエージェント環境の場合、エージェントによる対応と、人間の介入が依然として必要な箇所をマッピングします。
例えば、カスタマー・サポートの分野では、単一のAIエージェントが、発生した問題の重大度を分類するのに役立ちます。ただし、より堅牢なワークフローを目指す場合は、問題のトラブルシューティング、修正の提案、複雑なケースを他のAIエージェントまたは人間のエージェントに割り当てるために、さまざまなエージェントを含むマルチエージェント・システムを構築することを検討してください。
エージェント・フレームワークを選択するときは、データのプライバシーとセキュリティーを最優先に考慮する必要があります。保存中および転送中のデータの暗号化、アクセス制御、機密情報の削除など、選択したフレームワークのセキュリティー・ポリシーと対策を確認します。
開発チームのスキル・レベルを考慮してください。例えば、CrewAIなどの初心者向けのAIフレームワークには、迅速なプロトタイピングのためのコード不要のインターフェースと、迅速なデプロイメントのための既製のAIエージェント・テンプレートが備わっています。
より経験豊富なAI開発者は、管理の手間が少なく、カスタマイズ可能なコード・オプションを提供するLangGraphなどの高度なエージェント・フレームワークを選択する場合があります。
既存のテクノロジー・スタックとの互換性に基づいて、エージェント型AIフレームワークを評価します。選択したフレームワークが現在のデータ・ソース、インフラストラクチャー、ツールとどの程度統合されるかを確認します。
エージェント型AIをオンプレミスまたはクラウドの環境にどのようにデプロイするか、また小規模または大規模なデプロイメントが必要かどうかを判断します。
選択したAIエージェント・フレームワークのパフォーマンスを評価します。リアルタイム・アプリケーションの応答時間や待ち時間を考慮し、膨大な量のデータや複数の同時リクエストを処理するときにパフォーマンスが低下するかどうかを評価します。短期的な視野に立ち計画しているかもしれませんが、ビジネスの成長に合わせてフレームワークがどのように拡張するかについても考慮しましょう。
エージェント型AIはまだ初期段階です。AIエージェントの背後にあるテクノロジーが進化するにつれて、その基盤となるフレームワークも進化します。現在人気のあるAIエージェント・フレームワークをいくつか紹介します。
AutoGenは、複雑なタスクを実行するマルチエージェント型AIアプリケーションを作成するためのMicrosoft社のオープンソース・フレームワークです。このアーキテクチャーは3層で構成されています。
Coreは、エージェント・ワークフローのトレースとデバッグを行うツールを備えた、スケーラブルで分散されたエージェント・ネットワークを開発するためのプログラミング・フレームワークです。非同期メッセージングを採用し、リクエスト対応とイベント駆動型のエージェント対話の両方をサポートします。
AgentChatはCore上に構築されており、対話型のAIアシスタントを作成するために使用できます。これは初心者向けの出発点として提案されており、事前定義された動作とインタラクション・パターンを備えたデフォルトの単一エージェントとマルチエージェント・チームを提供します。
Extensionsは、CoreおよびAgentChatコンポーネントの実装を含むパッケージで、それらの機能をさらに拡張し、外部ライブラリーやその他のサービスと連携します。組み込みの拡張機能やAutoGenコミュニティーによって開発された拡張機能を使用することも、独自の拡張機能を作成することもできます。
AutoGenは、エージェント型AIのパフォーマンスを評価およびベンチマークするためのAutoGen Benchと、エージェントを開発するためのノーコードののインターフェースを提供するAutoGen Studioという2つの便利な開発者ツールを提供しています。AutoGenはGitHubからアクセスできます。
CrewAIは、マルチエージェント型AIソリューション用のオーケストレーション・フレームワークです。AutoGen同様、CrewAIはオープンソースです。
CrewAIのロールベースのアーキテクチャーは、エージェント型AIを「労働者」の「クルー」として扱います。クルーの中核となる構成要素は次のとおりです。
エージェントには、複雑なワークフローで共同作業しながらも専門的な役割が割り当てられます。開発者は自然言語を使用して、エージェントの役割、目標、背景を概説できます。
タスクは各エージェントの特定の責任を定義します。開発者は自然言語を使用して、各エージェントのタスクと予想される出力を記述することもできます。
プロセスは、エージェントがどのように連携し、タスクがどのように実行されるかを識別します。タスクは事前に設定された順序に従って完了する順次型にすることも、カスタム・マネージャー・エージェントがタスクの委任、実行、完了を監視する階層型にすることもできます。
CrewAIの例集の1つに、株式市場分析チームが含まれています。このチームは、特定の株式のデータを分析する役割を担う市場アナリスト・エージェント、データ分析を検証する裏付け情報を収集する役割を担う研究者エージェント、分析と裏付けデータに基づいて段階的な行動計画を作成する役割を担う戦略エージェントというように、順番に連携します。
CrewAIは、AnthropicのClaude、GoogleのGemini、MistralのAIモデル、OpenAIのGPTモデル、IBM® watsonx.aiの基盤モデルなど、さまざまな大規模言語モデル(LLM)への接続をサポートしています。
このフレームワークには、さまざまなデータ・ソースを検索するための一連の検索拡張生成(RAG)ツールも含まれています。
CrewAIはGitHubからアクセスできます。
LangChainは、簡単なワークフローを備えたシンプルなAIエージェントを開発するのに役立ちます。ベクター・データベースと、アプリケーションにメモリーを組み込むユーティリティーをサポートし、結果として履歴とコンテキストを保持します。
LangSmithプラットフォームでは、デバッグ、テスト、パフォーマンス監視が可能です。
LangChainはGitHubからアクセスできます。
LangGraphは、LangChainエコシステム内に存在します。このフレームワークは、マルチエージェント・システムの複雑なワークフローのオーケストレーションに優れています。
これはグラフ・アーキテクチャーを適用し、AIエージェントの特定のタスクまたはアクションがノードとして表され、それらのアクション間の移行がエッジとして表されます。
状態コンポーネントは、すべてのインタラクションにわたってタスク・リストを維持します。このタイプのアーキテクチャーは、循環的、条件付き、または非線形のワークフローに適しています。
例えば、航空会社は、ユーザーがフライトを検索して予約するのを支援する旅行アシスタントAIエージェントを構築したいかもしれません。LangGraphを使用すると、これらの各アクションはノードとして表され、それらのノードには特定のタスクを実行する複数のエージェントを含めることができます。
人間が介入するステップを追加することで、ユーザーは検索リストからフライトを選択でき、好みに合うものがない場合、旅行アシスタント・エージェントは簡単に「フライトの検索」ノードに戻って検索をやり直すことができます。
LangGraphは、GitHubからアクセスできます。
LlamaIndexは、生成AIおよびエージェント型AIソリューションを構築するためのオープンソースのデータ・オーケストレーション・フレームワークです。パッケージ化されたエージェントとツールを提供し、最近導入されたワークフロー、つまりマルチエージェント・システムを開発するためのメカニズムも提供します。
LlamaIndexのワークフローを構成する主な要素は次のとおりです。
ステップはエージェントの特定のアクションです。これらはワークフローの基本的なコンポーネントです。
イベントはステップをトリガーし、ステップが通信する手段となります。
コンテキストはワークフロー全体で共有されるため、ステップは実行中にデータを保管、検索、パスし、状態を維持します。
このイベント駆動型アーキテクチャーにより、ワークフロー・ステップを非同期的に実行できるようになります。つまり、グラフ・アーキテクチャーとは異なり、ステップ間のパスを定義する必要がないため、エージェント・アクション間の移行がより柔軟になります。
そのため、LlamaIndexワークフローは、頻繁に前のステップに戻ったり、複数のステップに分岐したりする必要がある、より動的なAIエージェント・アプリケーションに適しています。
LlamaIndexはGitHubからアクセスできます。
Semantic Kernelは、エンタープライズ・グレードの生成AIアプリケーションを構築するためのMicrosoftのオープン・ソース開発キットです。現在実験段階としてマークされているエージェント・フレームワークは、エージェントを作成するためのコア抽象化を提供します。
チャット完了エージェントと、より高度なアシスタント・エージェントという2つの組み込みエージェント・タイプがあります。
複数のエージェントは、グループ・チャットを通じて、またはより複雑なワークフローのためにSemantic Kernelのプロセス・フレームワーク(これも実験的としてマークされています)を使用してオーケストレーションできます。
プロセスはステップで構成されます。ステップはAIエージェントに割り当てられたタスクを表し、ステップ間でデータがどのように流れるかを示します。
Semantic KernelはGitHubからアクセスできます。
より情報に基づいた意思決定を行うには、好みのフレームワークを試してみることを検討してください。シンプルな単一エージェント実装から小規模に開始し、各フレームワークの動作と他のフレームワークとの比較をテストします。
適切なエージェント・フレームワークは企業のニーズに適合し、ワークフローを自動化するAIエージェントの作成に役立ち、より効率的なビジネス・プロセスにつながります。
業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。
AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。