AIエージェント「Prime Agent」、IPythonでコードを実行し、ミスをその場で学習
たいていのAIコードアシスタントは同じパターンです。チャットを開いてプロンプトを入力し、コードスニペットや単一のファイル編集を受け取る。数時間かかるタスクだとコンテキストがゴミで埋まり、うっかりターミナルタブを閉じるとワークフロー全体が台無しになります。
Prime Intellectの開発者は異なるアプローチを取り、Prime Agentプロジェクトをオープンソース化しました。これは長時間実行されるタスクや研究スクリプト向けのツールで、インタラクティブなIPython環境が下で動作し、エージェント自体はバックグラウンドで動作して、ベースを書き直さずに指示を調整できます。
RLMアプローチの仕組み
このプロジェクトの核心は再帰的言語モデル(RLM)の概念です。ニューラルネットワークにコンテキスト全体を1つの大きな塊として渡すのではなく、Prime Agentはコンテキストを変数に変換し、ツールや子エージェントを通常のPython関数として扱います。
すべての処理はIPythonセッション内で実行されます。エージェントがファイルの読み込み、テストの実行、配列データの処理を必要とするときには、Pythonコードを記述して即座に実行します。
タスクが複数の部分に分かれている場合、メインプロセスは関数rlm(...)を呼び出します。隔離された子エージェントを生成し、子プロセスはサブタスクを並列またはバックグラウンドで解決し、結果をメインコードに返します。この過程でチャットに中間ログが詰まることはありません。
Continual Harnessによる自己学習
通常、エージェントが袋小路に陥ったり、些細なミスを犯したりした場合は、手動でルールやシステムプロンプトを修正する必要があります。Prime Agentにはこのためのコマンドがあります。
メカニズムはContinual Harnessの概念に基づいて構築されています:
- エージェントは行動履歴を分析し、つまずいたりや軌道を外れた箇所を探します。
- これに基づき、将来のサブエージェント向けのターゲットを絞ったメモ、スキル説明、仕様を形成します。
- 変更はシステムプロンプトに触れずにセッション状態に記録されます。
- すべてのスナップショットが保存されるため、不成功な調整は常にロールバックできます。
このツールは特定のリポジトリでの作業経験を蓄積します。繰り返し可能なコマンドチェーンは実行可能なPythonパッケージとしてパッケージ化し、別のスキルとして保存できます。
バックグラウンド処理と自律モード
ベンチマークの実行や深いリファクタリングなど、長いタスクの場合、エージェントはバックグラウンドモードに切り替えることができます。これは組み込みのデーモンが処理します。
プロセスを開始し、ターミナルを切断して、数時間後に戻ることができます:
prime-agent agents # Посмотреть список активных и сохраненных сессий
prime-agent attach <id> # Подключиться к фоновому агенту обратно
エージェントにシステムステータスの確認や定期チェックを実行させる必要がある場合は、タイマーとコマンドがあります。
完全に自律的な動作のために、モードがあります。ステップ数、トークン消費量、実行時間に対して厳しい制限を設定できます。品質チェックを添付することも可能で、テストが失敗した場合は予算を使い切るまでエージェントが解決策を探し続けます。
実行中のエージェントは互いに直接通信できます。あるエージェントがデータを生成した場合、人間の関与なしに別のプロセスにメッセージを送信できます。
インストールとセキュリティの考慮事項
macOSまたはLinuxへのインストールは、単一のスクリプトで行います:
curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh
インストール後、対象プロジェクトに移動してCLIを起動する必要があります:
cd /path/to/project
prime-agent
初回起動時に、コマンドはAPIプロバイダーまたはサブスクリプションの選択を求めます。
READMEで作者たちは正直に警告しています:Prime Agentは生成されたコードを現在のユーザーの権限でマシン上で直接実行します。デフォルトでは隔離されたコンテナやサンドボックスはありません。エージェントに未検証のリポジトリへのアクセスを許可すると、生成されたコードが誤ってファイルを消去したり、危険なコンソールコマンドを実行したり可能性があります。したがって、クリーンなgitブランチ、別のDockerコンテナ、または隔離された仮想マシンで実行するのが最善です。
このプロジェクトが役立つ人
Prime Agentは主に、研究コードを書いたり、複雑なモデル評価を実行したり、LLMとのテキストチャットでは不十分なタスクを解決したりする必要がある人にとって興味深いです。
テキストベースのツール呼び出しの代わりに実行可能なPythonコードを使用するアプローチは、CLIツールの論理的な進化のように見えます。このプロジェクトはMITライセンスで配布され、GitHubで数千のスターを獲得し、 активно更新されています。長時間タスクで凍り付かず、バックグラウンドで動作できるエージェントが必要な場合は、Prime Agentは確かにチェックする価値があります。
関連プロジェクト