エージェント型AIアプリケーションの展開
エージェント型AIは、高度な推論と反復的なプランニングを用いて、複雑な複数ステップの問題を自律的に解決する人工知能の一種である。 AIエージェントが人間のように考え、行動し、ダイナミックな環境の中で意思決定を行い、行動を起こすことを可能にする。
主な違い:ジェネレーティブAIとエージェント型AI
エージェント型AIシステムは、さまざまなソースから大量のデータを収集・処理し、課題を特定し、計画を立て、自ら行動を起こす。 従来の生成AIシステムとは異なり、エージェント型AIは、テキスト、画像、データの処理など、複数のステップやインタラクションを必要とするタスクを引き受けることができる。 これらのアプリケーションは、LLMを使用して意思決定を行い、テキストを生成し、タスクを実行する。 企業はエージェント型AIを利用して、顧客サービスの向上、ソフトウェア開発プロセスの改善、患者とのやり取りの改善を行っている。
対照的に、ジェネレーティブAIのアプリケーションは、意思決定を行い、行動を起こし、環境に適応することに重点を置いている。 ジェネレーティブAIとは、人工知能の一種で、データから学習し、オリジナルのコンテンツを生成することで、テキスト、画像、音楽、動画などの新しいコンテンツを生み出す。 機械学習アルゴリズムを使用し、学習データから学習したパターンや構造に基づいて新しい出力を生成する。
以下の表は、生成AI、エージェントAI、LLMベースのエージェントAIアプリケーションの違いをまとめたものである:
| カテゴリー | 説明 | 主な焦点 | アプローチ | 自律型 | 例 |
|---|---|---|---|---|---|
| 生成 AI | 新しいコンテンツ(テキスト、画像、音楽、ビデオ)の作成 | コンテンツの生成 | 創造 | 限定的(指示/プロンプトに従う) | チャットボット、言語モデル、画像ジェネレーター、作曲家、ビデオ編集者 |
| エージェント AI | LLMを使用して意思決定と行動を強化する | 意思決定、行動 | 分析的(LLMの支援を受ける) | 高い(自律的に動作する) | バーチャルアシスタント、言語ベースのチャットボット、コンテンツ生成ツール、テキスト要約ツール |
エージェント型AIアプリケーションの展開
を使用して、シングルエージェントまたはマルチエージェントアプリケーションを展開できます。 watsonx.ai:
シングルエージェントアプリケーションの展開シングルエージェントシステムでは、エージェントは独立して動作し、自身のゴールと目的に基づいて意思決定と行動を行う。 他のエージェントやシステムとは相互作用しない、自己完結型のシステムである。
エージェントは、APIやデータベースのような外部リソースを含め、過去の情報やツールを保存・検索するためのメモリにアクセスする。 他のエージェントとの連携がないため、システムはシンプルだが、複雑なタスクの処理には限界がある。
シングルエージェントのAIシステムは、チャットボット、バーチャルアシスタント、自律走行車などのアプリケーションでよく使われている。
マルチエージェントアプリケーションの展開マルチエージェントシステムは、共通の目標を達成するために、互いに影響し合う複数のエージェントとその環境から構成される。 マルチエージェントシステムでは、各エージェントが独自の目標、動機、行動を持ち、全体的な目標を達成するために互いに協調し、相互作用しなければならない。
これらのエージェントは協力し合い、情報を交換し、エージェント間でタスクを分配する。 各エージェントは独立してメモリやツールにアクセスできるため、並列処理による効率化が可能だ。 エージェントは互いに通信し、システムの適応性を高め、複雑な分散タスクを処理できるようにする。
マルチエージェントAIシステムは、ロボット工学、自律システム、複雑な意思決定システムなどの用途でよく使われる。
次の図は、シングル・エージェント・システムとマルチ・エージェント・システムの違いを示している。 シングルエージェントシステムでは、AIエージェントは独立して情報を処理し、意思決定を行う。 対照的に、マルチエージェントシステムでは、ユーザーは1人ではなく複数のAIエージェントと対話する。
エージェント型AIアプリケーションの展開方法
エージェント型AIアプリケーションは、AIサービスとして展開される。 AIサービスは、ジェネレーティブAIのユースケースのロジックをキャプチャする、デプロイ可能なコード単位である。 AIサービスが正常にデプロイされたら、アプリケーションからの推論にエンドポイントを使用できます。
シングル・エージェント・アプリケーションの展開
watsonx.ai、以下のようなアプローチでシングルエージェントのAIアプリケーションを展開することができる:
ノーコードアプローチ :エージェントラボでは、ノーコードアプローチでシングルエージェントアプリケーションを構築することができます。 エージェントラボを使用してエージェント型AIソリューションを構築した場合、インターフェイスからアプリケーションをデプロイするだけで、 デプロイメント自動的に作成できます。 アプリケーションのカスタマイズがあまり必要ない場合は、エージェントラボから直接デプロイメントするこの方法を使用します。
ノーコード・アプローチによるシングル・エージェント・アプリケーションのAIサービスとしてのデプロイについては、 ビジュアル・ツールによるAIサービスのデプロイを参照。
ローコードアプローチ :エージェントラボでエージェントAIソリューションを構築したが、 デプロイメント前にカスタマイズが必要な場合、 デプロイメント作業を保存することができます。 デプロイメント作業を保存すると、 watsonx.ai、エージェント型AIアプリケーションのロジックをデプロイ可能なコード単位であるAIサービスに取り込んだノートブックが自動的に生成されます。 デプロイメントノートブックには、AI サービス資産 デプロイメント・スペースプロモートし、 資産 デプロイメント作成するための自動生成コードが含まれています。
ローコード・アプローチによるシングル・エージェント・アプリケーションのAIサービスとしてのデプロイについて詳しくは、 ビジュアル・ツールによるAIサービスのデプロイをご覧ください。
フルコードのアプローチ : LlamaIndex のようなフレームワークを使用してアプリケーションを構築し、独自のワークフローや既存のパイプラインにエージェント型AIアプリケーションを完全にカスタマイズまたは統合する必要がある場合、 デプロイメントフルコードアプローチを採用することができる。 ソリューションをコーディングすることで、カスタマイズの柔軟性と高い拡張性が実現します。
アプリケーションのコーディングについては、AIサービスを手動でコーディングして、エージェント型AIアプリケーションをデプロイすることができる。
あるいは、 CrewAI, LangGraph, などのフレームワークを使用してエージェント型AIアプリケーションを構築している場合は、あらかじめ定義されたサンプルテンプレートを使用して、アプリケーションをAIサービスとしてデプロイすることもできます。 これらのテンプレートは、AIアプリケーションのための事前構築された基盤を提供し、ゼロから始めるのではなく、アプリケーションのコアロジックに集中することができます。
アプリケーションをAIサービスとしてデプロイする方法については、 コードによるAIサービスのデプロイを参照してください。
マルチエージェントアプリケーションの展開
CrewAI や LangGraph, のようなフレームワークを使ってマルチエージェント・アプリケーションを構築した場合、プログラム的なアプローチに従ってアプリケーションをデプロイしなければならない。 AIサービスを作成してアプリケーションのプログラミング・ロジックをキャプチャし、AIサービスをデプロイして推論用のエンドポイントを取得します。
マルチエージェントシステムをプログラムでデプロイするには、ノートブックにAIサービスを作成することで、手動コーディングのアプローチを採用することができる。 手作業によるコーディングは、完全なカスタマイズとデプロイメントための高い拡張性を提供する。
また、事前に定義されたテンプレートを使用して、 watsonx.ai でAIサービスを展開することもできます。 これらのテンプレートは、AIアプリケーションのための事前構築された基盤を提供し、ゼロから始めるのではなく、アプリケーションのコアロジックに集中することができます。
CPDCTLは、 IBM Cloud Pak for Data (CPD)プラットフォーム上でAIサービスを展開・管理するためのコマンドラインツールです。
マルチ・エージェント・アプリケーションをAIサービスとしてデプロイする方法については、 コードによるAIサービスのデプロイを参照。
エージェント型AIアプリケーションの推論
エージェント型AIアプリケーションをAIサービスとしてデプロイした後、デプロイされたアプリケーションの推論や対話のためのAPIエンドポイントを取得することができます。
単一エージェント・アプリケーションの推論
デプロイメントために選択したアプローチに応じて、シングルエージェントアプリケーションは、エージェントラボから、またはプログラムで推論することができます。
シングルエージェントのAIアプリケーションはAIサービスとしてデプロイされるため、エージェントラボを使用する際に、デプロイされたアプリケーションと対話するためにチャットメソッドを使用することもできます。 配備されたアプリケーションとチャットすることで、 デプロイメント自然で直感的な対話が可能になり、質問したり、回答を受け取ったり、タスクを完了したりするのが容易になります。
また、 watsonx.ai Python クライアント・ライブラリまたは REST API を使用することで、デプロイされたアプリケーションをプログラムで推論し、テキスト生成やストリーミングを行うこともできます。
AIサービスとしてデプロイされた単一エージェントAIアプリケーションの推論エンドポイントを取得する方法については、 AIサービスデプロイメントテスト を参照。
マルチエージェントアプリケーションの推論
マルチエージェントアプリケーションをAIサービスとしてプログラム的にデプロイする場合、 watsonx.ai Python クライアントライブラリまたはREST APIを使用することで、デプロイされたアプリケーションをプログラム的に推論することができます。
AIサービスとしてデプロイされたマルチエージェントAIアプリケーションの推論エンドポイントを取得する方法については、 AIサービスデプロイメントテスト を参照。
配備されたエージェント型AIアプリケーションの管理
エージェント AI アプリケーションをデプロイした後、詳細を更新したり、 デプロイメントをスケーリングしたり、削除したりすることで、 デプロイメントを管理できます。 AIサービスとしてデプロイされたエージェント型AIアプリケーションを管理するには、 AIサービスのデプロイメント管理 を参照。