18.9K Views
September 22, 23
スライド概要
DL輪読会資料
LLMベースの自律型エージェントシステムのサーベイ 岡田 領 / Ryo Okada(@anonymousgraba)
アウトライン 1. 2. 書誌情報 LLMベースの自律型エージェントとは 3. 具体例 4. 共通するアーキテクチャ構造 5. 評価について 6. 課題 2
書誌情報 2つの文書から抜粋して紹介 https://lilianweng.github.io/posts/2023-06-23-agent/ arXiv, submitted on Aug 2023, Revised 7 Sep 2023 • Blog post, 2023/6/23 動機:LLMを用いて自動化アプリケーションみたいなものを作る上でAutoGPT等の自律型エージェントの外観や課 題感を抑えたかった 3
LLMベースの自律型エージェントとは 概要 • • • BabyAGI(左図) OpenAIの自然言語処理能力を使って、目的に基づいて新 しいタスクを作成し、Chroma/Weaviate(ベクトルデー タベース)を使ってタスクの結果を保存し、コンテキス トを取得する 過去のタスクの結果と事前定義された目的に応じてタス クを作成 https://yoheinakajima.com/task-driven-autonomous-agent-utilizing-gpt-4-pinecone-and-langchain-for-diverse-applications/ • • LLMをコントローラとして人間のように意思決定するようなエージェント(like AutoGPT, BabyGPT, …) アイディア:LLMに記憶やプランニングといった人間の重要な能力を持たせることで人間のように振る舞い,様々 なタスクを行えるのでは? 4
Generative Agents Arxiv, submitted on Apr 2023 • 25人の村社会を構築し,集団行動をシミュレーション(The Simsを参考にした仮想環境) • メモリストリーム,リフレクション, プランニングの3つのモジュールで複雑なシミュレーションを可能に • メモリストリームに経験を記録,抽象的な思考をリフレクションによって獲得する. • 1日の大まかなプランを計画→再起的にプランの詳細を生成する.(プランニング) 5
Generative Agents リフレクションの例 • メモリストリームから100件の過去イベント(例:Klaus Mueller is reading a book on gentrification, ...)を取得し, LLMに以下プロンプトともに入力. ‒ Given only the information above, what are 3 most salient high-level questions we can answer about the subjects in the statements? • 生成された質問 ‒ What topic is Klaus Mueller passionate about?, … • これらの質問をクエリとし,関連メモリを収集 • そこからLLMでインサイト抽出.(右上プロンプト) • 結果:Klaus Mueller is dedicated to his research on gentrification Reflectionを反映したメモリ構造 6
MetaGPT Arxiv, submitted on Aug 2023 • SOP(標準作業手順書)に着目し,タスク 分解,各専門エージェントが連携してシス テム開発を行う. • コード生成のための関数を動的に構築する 際にエージェントの協力を活用(メタプロ グラミング) • 基礎コンポーネント:ロール,環境,アク ション,ツール,メモリ • Knowledge sharing: エージェント同士が効 率的に情報交換 • Encapsulating workflows: サブタスクを適切 なエージェントに割当,アウトプットの標 準化 7
MetaGPT 8
• 人間から要求を受け取ると • プロダクトマネージャーが要求分析,実現 可能性分析を行う • 次にアーキテクトが技術設計を行う • 次にプロジェクトマネージャは各要件に対 応するためのシーケンス図を作成する • エンジニアがコード開発 • 品質保証(QA)エンジニアがテストを実施 する
MetaGPT • 3が最も成功したケース 10
アーキテクチャ
LLMベースの自律型エージェントシステムのアーキテクチャ 共通するアーキテクチャ構造 12
プロファイル エージェントがコーダー,教師,ドメイン専門家などの特定の役割を担う場合 手法 説明 例 手作り(Handcrafting) エージェントのプロファイルを手動で作成 Generative Agents MetaGPT ChatDev LLMで生成 プロファイル生成ルールを用意し,LLMが生 成する. データセットアライメント 実データセット中の人間に関する情報をプ ロンプトに整形し,活用する. 人口統計データセット( 人種/ 民族、性別、年齢、居住州など)に基づい て、GPT-3に役割を割当* *Out of one, many: Using language models to simulate human samples. Political Analysis, 31(3):337–351, 2023. 13
メモリ 環境から知覚した情報を記憶し,将来の行動を促進する. • • メモリ構造 ‒ 短期記憶:トランスフォーマーのコンテキストウィンドウ内の情報 ‒ 長期記憶:外部ベクトルデータベース フォーマット ‒ • 自然言語形式,埋め込みベクトル,データベース,構造化リスト メモリ操作 ‒ 読み込み,書き出し,反映(リフレクション) 14
メモリ メモリ構造 手法 説明 例 統合メモリ 短期記憶のみを再現し,プロンプトへ記憶 情報を書き込む. RLP*:話し手と聞き手の状態を保持する会 話エージェント.状態をプロンプトで保持 し,短期記憶として機能する. ハイブリッドメモリ 短期記憶と長期記憶を明示的にモデル化. Generative Agent: 短期記憶:エージェントの現在の状況のコ ンテキスト情報 長期記憶:エージェントの過去の行動や思 考.必要に応じて取り出す. *Reflective linguistic programming (rlp): A stepping stone in socially-aware agi (socialagi). arXiv preprint arXiv:2305.12647, 2023 15
メモリ フォーマット 手法 利点 例 自然言語 柔軟に表現できて理解しやすい.情報が包 括的になる. Voyager(LLMによるMinecraftのプレイ): Mincraftゲーム内のスキルを自然言語記述で 保持 埋め込みベクトル 検索や読み取りの効率が良い. ChatDev(LLMによる仮想ソフトウェア会社): 対話履歴をベクトルに埋め込みし,検索可 能に. データベース 効率的かつ包括的に操作可能. ChatDB(LLMをシンボリックメモリで補強): エ ージェントはSQL文で追加,削除,修正. 構造化リスト 効率的かつ簡潔 Ghost in the Minecraft: サブゴールのアクショ ンリストを階層ツリー構造で格納. ※これらは排他的ではなく,同時にも利用される.例:key value listでキーは埋め込みベクトルで表現.値は自然言語.(GITM) 16
メモリ 記憶の操作 手法 利点 例 読み込み 以前に成功した行動を利用して同様の目標 を達成する.新しさ,関連性,重要性が鍵 書き出し 知覚した環境に関する情報を記憶に保存す る. 類似した情報(記憶の重複),記憶量の限 界(オーバーフロー)の対処が課題 ・同じサブゴールに成功した行動の蓄積が 一定のサイズを超えたらLLM使って凝縮 ・固定サイズのメモリでFIFO方式(RET-LLM ) 反映(リフレクション) 人間が自身の認知,感情,行動を評価する 能力.抽象的な洞察に要約・推論する力 Generative Agentsでのリフレクションの例( 資料前半) 17
プランニング 複雑なタスクを単純なサブタスクに分解して個々に解決する. • フィードバックなしのプランニング ‒ • 行動の後に将来の行動に影響を与えるようなフィードバックを受け取らない フィードバックによるプランニング 18
プランニング フィードバックなしのプランニング 手法 利点 例 シングルパス推論 いくつかのステップに分解する Chain of Thought Step by Step マルチパス推論 ツリー構造のステップに分解 ToT 外部プランナー 外部のプランナーに計画を行わせる.(ド メイン固有の専門的な問題などを) LLM+P: タスク記述をプランニング・ドメイ ン定義言語(PDDL)に変換し,外部プラン ナーでPDDLを処理.生成された結果をLLMで 自然言語に変換. 19
プランニング フィードバックによるプランニング 手法 利点 例 環境フィードバック 世界や仮想環境から得られるフィードバッ ク.ゲームのタスク完了信号や,エージェ ントが行動した後の観測結果など. Voyager: プログラム実行の中間結果,実行エ ラー,自己検証結果の環境フィードバック を取り入れ,計画を立てる. ヒューマンフィードバック 人間からのフィードバック. モデルフィードバック エージェント自身からの内部フィードバッ ク.事前訓練モデルを用いる. 20
アクション エージェントの意思決定を具体的な結果に変換.最も下流のモジュール. • アクションゴール ‒ • アクション生成 ‒ • 行動生成戦略 行動空間 ‒ • 例:タスク完了,コミュニケーション,環境探索 エージェントが実行可能なアクションの集合 アクションインパクト ‒ アクションの結果 ✔ 環境の変化,内部状態の変更,新しいアクションのトリガー 21
アクション アクション生成 手法 利点 例 記憶想起による行動 エージェントの記憶から情報抽出し,アク ション生成 Generative Agents: メモリストリームを保持 し,アクションをガイドするために最近の 関連する情報を取り出す 計画に従った行動 エージェントはプランに従って行動する Ghost in the Minecraft: エージェントはタスク を多くのサブゴールに分解し,計画を立て る.計画に基づいてサブゴールを順次解決 するための行動をとり,最終的なタスクを 完結させる. 22
アクション 行動空間 手法 利点 例 外部ツール API Gorilla, Toolformer, HuggingGPT データベース・知識ベース ChatDB: SQL文でデータベースに問い合わせ ,エージェントによる論理的なアクション を可能に. 外部モデル 特定の複雑なタスクを別のモデルに行わせ る.(画像生成,音声処理,コード生成な ど.) 内部知識 計画能力 会話能力 常識的理解能力 23
エージェントの能力拡張 エージェントの能力拡張に関わる戦略 • ファインチューニングによる能力獲得 ‒ • アノテーションされたデータ,LLMでの生成データ,実データ ファインチューニングなしの能力獲得 ‒ プロンプトエンジニアリング,メカニズムエンジニアリング 24
メカニズムエンジニアリング ファインチューニングやプロンプトエンジニアリングとは異なるエージェント能力拡張の戦略 手法 利点 例 トライアルアンドエラー エージェントの行動を予め定義した批評家 が判定.不満の場合はフィードバックを取 り入れて反応. クラウドソーシング 別々のエージェントに多様な回答を出力さ せ,回答が一貫してなければ他エージェン トの回答を取り入れる.コンセンサスが取 れるまで行う. 経験の蓄積 探索〜タスク達成に成功するとその行動を メモリに格納.以降同様のタスクではその 知識を活用. 自己駆動進化 自らゴールを設定し,環境を探索しながら ,報酬関数から良いフィードバックをもら い,改善していく(LMA3*) Voyager: スキルのライブラリを持ち,繰り返 し改良.スキルライブラリを活用すること で,効率的にタスクをこなせる. *Augmenting autotelic agents with large language models. arXiv preprint arXiv:2305.12487, 2023. 25
評価 エージェントの評価に関わる選択肢 • 主観的評価 ‒ 人間によるアノテーション ✔ ‒ チューリングテスト ✔ • 人間がスコアやランクづけして評価 評価者が人間とエージェントの出力を区別する 客観的評価 ‒ 評価指標:タスク成功メトリクス,人間類似度,効率性 ‒ プロトコル:実世界シミュレーション,社会性評価,マルチタスク評価,ソフトウェアテスト ‒ ベンチマーク 26
課題 LLMベース自律型エージェントの代表的な課題 ロールプレイング能力 • Web上で滅多に議論されない役割や新しい役割は無理 • 自己認識の欠如が指摘* 一般化されたヒューマンアライ • 多様な人間の価値観にアライメントする必要 メント プロンプトのロバストさ ハルシネーション 知識の境界 • プロンプトの設計が大変.LLMごと異なったり.エージェントの各モジュールも影響する. • LLMの基本的な課題.自律型エージェントでも同様. • LLMは膨大なウェブ知識コーパスで訓練されており,過剰な能力を発揮する可能性 • 例:映画の予備知識を持たないユーザ行動をシミュレーションしたくてもベースにある豊富な知識で判断してしまう可能性 効率性 • エージェントは何度もLLMをコールする必要があり,LLMの推論の遅さが蓄積・影響される. 長期のプランニングとタスク分 • LLMは予期せぬエラーに直面した時に計画を調整するのに苦労し,試行錯誤から学習する人間に比べてロバスト性が低い. 解 *Reflective linguistic programming (rlp): A stepping stone in socially-aware agi (socialagi). arXiv preprint arXiv:2305.12647, 2023. 27
Thank you.