Nous ResearchがリリースしたオープンソースのAIアシスタントフレームワークであるHermes Agentは、開発者が自身のマシンやサーバー上でパーソナルアシスタントを実行し、必要なツールを自由に組み込めるようにするものです。コードはGitHubで公開されています。

なぜ新しいフレームワークが必要なのか

一般消費者向けの多くのアシスタントは、その内部動作を独自のAPIの背後に隠しています。プロンプトを送信すると、サービス側がどのモデルを呼び出し、どのようなアクションを実行するかを決定し、ユーザーには検査も修正もできない回答が返ってきます。このモデルはカジュアルなユーザーには適していますが、ワークフローの自動化、プライベートなデータストアとの統合、あるいは厳格なセキュリティポリシーの適用を求める開発者にとっては、もどかしいものです。Hermes Agentはその常識を覆します。ユーザーと言語モデルの間に位置し、意思決定プロセスを公開した上で、エージェントがユーザーに代わって実行できる任意の「ツール」(スクリプト、ファイルシステムコマンド、サードパーティサービスなど)をアタッチできるようにします。

実用的なメリットはすぐに実感できます。開発者はHermesを起動し、ローカルのLLMやOpenRouterなどのAPIに向け、ログファイルのgrep、静的解析ツールの実行、あるいはDockerコンテナの立ち上げなどを指示できます。エージェントは会話のコンテキストを記憶し、リクエストに最適なツールを判断して、構造化された回答を返します。端的に言えば、「回答のみ」を行うチャットボットから、「アクション指向」のアシスタントへと進化させるのです。

Hermes Agentの仕組み

  • Core – ユーザーの入力を受け取り、会話履歴を追跡し、モデルの提案に基づいて適切なツールを選択するオーケストレーター。
  • Model – 意図と実行可能なアクションを生成する言語モデル。ローカルでホストされたオープンソースのLLMからクラウドのエンドポイントまで、自身が管理するあらゆるモデルを組み込むことができます。
  • Tools – 実行可能なアクションをラップする軽量な仕組み。ファイルの読み取り、REST APIの呼び出し、シェルコマンドの実行などが可能です。新しいツールの追加は、Python関数を書いてフレームワークに登録するだけで簡単に行えます。
  • Skills – 関連するツールの集合体であり、システム管理の支援やコードレビューの自動化など、エージェントにドメイン固有の能力を与えます。

このアーキテクチャは、3つの関心を分離しています。モデルは純粋なテキストとして維持され、Coreがフローを制御し、Toolsが実際の重い処理を担当します。この分離により、システム全体を壊すことなくコンポーネントを簡単に交換できます。

Hermesのセットアップと実行

  1. リポジトリをクローンするgit clone https://github.com/NousResearch/hermes-agent.git
  2. ディレクトリに移動するcd hermes-agent
  3. 依存関係をインストールするpip install -r requirements.txt
  4. 環境設定を行う.env.example.envにコピーし、必要なAPIキー(OpenRouterや使用予定のその他のサービス用)を入力します。
  5. 起動する – コマンドラインからhermesを実行します。

アシスタントの拡張

新しい機能の追加は、以下の3ステップのパターンに従います:

セキュリティに関する考慮事項

コマンドを実行できるAIエージェントは、特権ユーザーのように振る舞います。.envファイルにAPIキーを公開したり、エージェントに無制限のファイルシステムアクセスを許可したりすると、モデルが侵害された場合や悪意のあるプロンプトが紛れ込んだ場合に、バックドアとなる可能性があります。以下の方法でリスクを軽減してください:

  • 重要なサービスから隔離されたコンテナまたは仮想マシン内でエージェントを実行する。
  • シークレットを環境変数に保存し、可能な限り読み取り専用に設定する。
  • 登録するツールを、ワークフローに必要な最小限のものに制限する。
  • エージェントのログを定期的に監査し、予期しないツールの呼び出しがないか確認する。

トレードオフ:オープンさ vs 利便性

Hermes Agentのオープンさは開発者に完全なコントロールを与えますが、同時に、ホスト型アシスタントのような「すぐに使える(turnkey)」体験を失うことも意味します。モデルのアップデート、スケーリング、セキュリティパッチの適用などは、すべて自分で行う必要があります。専任のDevOpsリソースを持たないチームは、マネージドサービスを好むかもしれません。

逆に、意思決定チェーンのあらゆるステップを監査できることは、機密データを扱う企業にとって決定的な要素になり得ます。モジュール設計はコミュニティの貢献を促し、単一のベンダーよりも迅速にツールエコシステムを成長させる可能性があります。

現時点において、このフレームワークは、独自のハードウェア上で動作し、独自のワークフローに合わせて形を変えることができ、かつ運用者に透明性が保たれたAIアシスタントを求めるすべての人に、具体的な道筋を提供しています。次のステップは簡単です。リポジトリをクローンし、立ち上げ、毎週何時間も費やしているタスクを、新しいアシスタントに教え始めましょう。