> インテリジェントエージェントは、多くの人々にとってAIの究極の目標とされています。スチュアート・ラッセルとピーター・ノーヴィグによる古典的名著『*Artificial Intelligence: A Modern Approach*』(1995年、Prentice Hall)では、AI研究の分野を「*合理的なエージェントの研究と設計*」と定義しています。
*本記事は、[**AI Engineering**](https://amzn.to/49j1cGS) (2025) の「**エージェント**」セクションを編集し、独立した記事として公開するために若干の修正を加えたものです。
> 「エージェント」という用語は、ソフトウェアエージェント、インテリジェントエージェント、ユーザーエージェント、会話エージェント、強化学習エージェントなど、さまざまなエンジニアリングの文脈で使用されてきました。では、エージェントとは一体何なのでしょうか?
環境を認識し、その環境に基づいて行動できるものはすべてエージェントである。『*Artificial Intelligence: A Modern Approach*』(1995年)では、エージェントを「センサーを通して環境を認識し、アクチュエーターを通してその環境に基づいて行動できるもの」と定義している。
つまり、エージェントは、その動作環境と実行可能な「一連の動作」によって特徴づけられる。
エージェントが活動できる*環境*は、ユースケースによって定義されます。エージェントがゲーム(例:Minecraft、囲碁、Dota)をプレイするために開発された場合、そのゲームがその環境となります。エージェントにインターネットから文書を収集させたい場合、その環境はインターネットとなります。自動運転車のエージェントの環境は道路システムとその周辺地域です。
AIエージェントが実行できる「一連のアクション」は、アクセス可能な「ツール」によって拡張されます。 皆さんが日常的に使用する多くのジェネレーティブAI搭載アプリケーションは、単純なものではあるものの、ツールにアクセスできるエージェントです。 ChatGPTはエージェントです。 ウェブ検索、Pythonコードの実行、画像の生成が可能です。 RAGシステムはエージェントです。 テキスト検索、画像検索、SQL実行がそのツールです。
エージェントの環境とツールのセットの間には強い依存関係があります。環境によって、エージェントが潜在的に使用できるツールが決まります。例えば、環境がチェスゲームの場合、エージェントが実行できる唯一のアクションは有効なチェスの手だけです。しかし、エージェントのツールのインベントリは、動作可能な環境を制限します。例えば、ロボットのアクションが泳ぐことだけの場合、水環境に限定されます。
図6-8は、GPT-4を基盤として構築されたエージェントである[[SWE-agent]](Yang et al., 2024)の視覚化を示しています。その環境は、端末とファイルシステムを備えたコンピュータです。そのアクションのセットには、repoのナビゲート、ファイルの検索、ファイルの表示、行の編集が含まれます。
