「AGENTS内部 半自律LLMエージェントを構築するための新しいオープンソースフレームワーク」

New open-source framework for building semi-autonomous LLM agents within AGENTS.

このフレームワークは、浙江大学とETHチューリッヒの強力な研究に基づいています。

最近、AIに特化した教育ニュースレターを始めました。すでに16万人以上の購読者がいます。TheSequenceは、5分で読める、ハイプやニュースを排除した機械学習に特化したニュースレターです。このニュースレターでは、機械学習プロジェクト、研究論文、コンセプトについて最新情報を提供します。ぜひ購読してみてください:

TheSequence | Jesus Rodriguez | Substack

機械学習、人工知能、データの最新動向を追い続けるための最高の情報源

thesequence.substack.com

自律エージェントは、基盤モデルエコシステムで最も人気のあるトピックの1つです。AutoGPTやBabyAGIなどのプロジェクトの初期の試みは、大規模な言語モデル(LLM)を使用してタスクを自律的に解決する可能性について、開発者の想像力を刺激しました。多くの研究者は、自律エージェントが基盤モデルの次のフロンティアの1つであると考えています。ただし、エージェントの定義は今日非常に曖昧です。最近、AIWaves浙江大学とETHチューリッヒの研究者たちは、LLMを活用したエージェントの作成のためのフレームワークであるAGENTSについての論文を発表しました。

AGENTSの核となるアイデアは、このコンセプトを研究の枠組みから一般の観衆に広げることです。AGENTSは、計画、メモリ、ツールの使用、マルチエージェントのコミュニケーション、シンボリック制御などの重要な構築要素を、単一のプログラミングモデルの下に統合しようとします。この論文には、使いやすさがあり、使い方も簡単なオープンソースのリリースも付属しています。

詳細を見ていきましょう:

AGENTSの原則

AGENTSフレームワークは、LLMでパワードされた言語エージェント向けのオープンソースプラットフォームとして特徴的です。その核となる原則は、言語エージェントのカスタマイズ、展開、微調整のプロセスを効率化することです。

Image Credit: AGENTS Paper

初心者にも使いやすいように設計されたAGENTSは、次の一連の原則に基づいています:

1. 長短期記憶: AGENTSは、自律エージェントにおけるメモリの重要性を認識しています。従来の機械学習モデルは単一の入力に反応しますが、自律エージェントは継続的に環境や他のエージェントと対話します。そのため、AGENTSはメモリコンポーネントを組み込んでいます。これにより、VectorDBを使用して長期的なメモリを保存し、意味検索を可能にし、専用のスクラッチパッドを使用して短期的なメモリを更新するなどの機能を備えています。

2. ツールの使用とWebナビゲーション: 言語エージェントは、単なる言語的な対話を超えて外部ツールを利用し、インターネットを探索する能力が必要です。AGENTSは、人気のある外部APIとの統合や、さらなるツールの追加に対応するための適応可能なクラスを提供します。また、専用のAPIインターフェースを介してウェブを検索および閲覧するエージェントを強化します。

3. マルチエージェントのコミュニケーション: AGENTSは、個々のエージェントの機能にとどまらず、マルチエージェントシステムの領域にも進出しています。これは、ゲーム、社会実験、ソフトウェア開発などのさまざまなドメインで役立ちます。この領域内の革新的な機能の1つは、「ダイナミックスケジューリング」アプローチです。エージェントの活動に静的なルールに頼るのではなく、AGENTSではコントローラーエージェント(一種の「モデレーター」)がエージェントの後続の行動を決定し、役割と過去の活動を考慮します。

4. 人間とエージェントのインタラクション: 多くのエージェントフレームワークは、特にマルチエージェントの設定では、人間とのインタラクションの範囲が制限されています。AGENTSは、このギャップを簡単に埋めます。それは、単数またはマルチエージェントの環境における人間とエージェントの相互作用を推進します。

5. 制御性: 従来のフレームワークは、エージェントの振る舞いをシステムのプロンプトに制限することが多いです。AGENTSは、標準的なオペレーティングプロシージャ(SOP)という概念を導入します。これらのSOPは、実際のアプリケーションと同様に、エージェントのタスクやアクションを詳細に指示するステップバイステップのガイドです。このような詳細な計画はLLMによって生成され、ユーザーによって後から修正することができます。

これはかなり多くの概念です!しかし、AGENTSの初期実装により、これらの機能を使用する知的エージェントの構築は非常に簡単です。

AGENTSを使ったプログラミング

AGENTSフレームワークは、エージェント、SOP(標準業務手順)、環境の3つの主要クラスを優れた構造で提供しています。これらのクラスは、シンプルなプレーンテキストで作成された設定ファイルを介して便利に初期化されます。AGENTSのアーキテクチャとコーディングの基礎についてもっと詳しく説明しましょう。

  1. エージェントクラス: AGENTSフレームワークの本質として機能するエージェントクラスは、言語エージェントの機能と振る舞いをカプセル化しています。図1のUMLダイアグラムで可視化されているように、エージェントは複雑な長期・短期記憶を管理します。このクラス内では、以下のメソッドを使用してエージェントが次のことができるようになります:
  • 周囲との関わりを持つ(agent._observe(environment)
  • 現在の状態に基づいてアクションをとる(agent._act()
  • メモリデータを修正する(agent._update_memory())。

簡単な体験のために、上記の機能はagent.step()メソッドに統合されています。

  1. SOP(標準業務手順)クラス: このクラスはより広範な視点を提供し、エージェントの状態の進行を示します。SOPクラスの各状態は、エージェントが達成する必要がある特定のサブゴールやサブタスクにマッピングされます。各状態は、「State」クラスオブジェクトとして構築され、LLMの機能を活用するための専門的なプロンプトを提供します。さらに、その状態内で利用するためのAPIのツールキットも提供します。
  2. 環境クラス: エージェントの背景として機能するこのクラスは、エージェントが操作する外部条件の表現を提供します。このクラスは主に2つの機能的な側面に分かれます:
  • environment._observed()関数は、環境のエージェントのアクションへの影響を示し、観察に基づく転送可能な情報を示します。
  • environment.update()関数は、エージェントのアクションが環境に与える影響を定義します。
def main (): # agentsは1つまたは複数のエージェントの辞書です。agents = Agent.from_config("./config.json")sop = SOP.from_config("./config.json")environment = Environment.from_config("./config.json")run(agents, sop, environment)

AGENTSフレームワークは、ツールの統合やマルチエージェント間の通信など、先述した基本原則を具現化しているだけでなく、人間とエージェントのインターフェースにも重点を置いています。特に、configファイルの「is_human」属性を「True」に調整するだけで、AGENTSはユーザーがエージェントの立場に入る柔軟性を提供します。このようなアレンジにより、ユーザーと他の言語エージェントが指定された環境内で動的に対話することができます。これは専用のコンソールインターフェースを介して行われます。

Image Credit: AGENTS Paper

展開に関しては、AGENTSは優先的にFastAPIを採用しています。さらに、このフレームワークは個別とマルチエージェントの両方に対応する柔軟性があります。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AIニュース

マルチモーダルAI:見て聞くことができる人工知能

人工知能(AI)はその創始以来、長い道のりを歩んできましたが、最近まで、その能力はテキストベースのコミュニケーションと...

AIニュース

「Azure OpenAIを使用した企業文書とのチャット」

大規模言語モデル(LLM)のようなChatGPTは、インターネット上の大量のテキストから訓練される際に、数十億のパラメータ内に...

データサイエンス

「変革を受け入れる:AWSとNVIDIAが創発的なAIとクラウドイノベーションを進める」

Amazon Web ServicesとNVIDIAは、最新の生成AI技術を世界中の企業にもたらします。 AIとクラウドコンピューティングを結び付...

データサイエンス

「LangchainなしでPDFチャットボットを構築する方法」

はじめに Chatgptのリリース以来、AI領域では進歩のペースが減速する気配はありません。毎日新しいツールや技術が開発されて...

AIニュース

「マイクロソフト、Windows上でのCortanaの終了を発表」

マイクロソフトは重要な動きとして、WindowsでのCortanaのサポート終了を宣言しました。この発表は、Windows Centralによって...

AIニュース

無料でWindows 11を提供するChatGPTの方法を見つけよう!

ChatGPTのユーザーたちは、Microsoft Windows 11 Proを含む人気のソフトウェアの無料ライセンスキーにアクセスするための驚く...