6章 ツールとメモリーを使う自律エージェント
エージェント
AIを利用して複雑タスクを実現するために、AIとユーザー間で動作するプログラムのこと
目標達成のために自律的に行動するものを自律エージェントと呼ぶ
エージェントは以下の構成要素を持つ
入力
エージェントがさまざまな環境から受け取れるデータのことを指す
LLMを使ったエージェントの場合は、主にテキストを使った行われる。
温度の測定値や温度などの場合で、テキスト化することを要求される
目標関数または報酬関数
目標ベースの行動指針は、特定の終了状態に達成するタスクをまかせるこという。
報酬ベースの行動指針は、時間とともに、長期的な視点で報酬を最大化することすると目的とする
LLMを使ったエージェントの場合は、プロンプト内部に定義した目標を達成するように動く(目標関数)
選択可能な行動
行動空間(Action Scope)とは、エージェントが任意の時点で取りうるすべての行動
LLMを使ってエージェントはテキスト生成に限らず、Web検索やカスタマイズされたスクリプトなどを使用でき、行動空間を拡張している。
メモリ
状態の保存が可能。チャットボットなどのチャット履歴などで利用ができる
エージェントの計画または実行戦略
高い水準の目標を達成するために、計画と実行の組み合わせで行う。
リトリーバル(検索)
ベクトルデータベースを使った検索が一般的だが、RDBから必要なプロンプトのメタ情報を取得することもある
ReAct(Reason and Act)
LLMの応答が目標に向かうように改善させるため、最初に登場したフレームワークがReAct(Reason and Act: 推論と行動)という
ReACT は CoT 推論を発展したもの
ReActは以下の思考ループで設計をする
1. 環境(エージェントが操作する外部の世界)を観察する
2. 観察記録(環境から得た情報)を用いて思考(問題解決のための推論)を行う
3. 行動(エージェントが環境に対して行う操作)を決定する
4. 環境に対して行動する
5. 快活策を見つけるか、最大の反復回数に達するまで1~ 4のステップを繰り返す