MiroFish: すべてを予測するオープンソースAIエンジン

Emmanuel Mumba

Emmanuel Mumba

17 3月 2026

MiroFish: すべてを予測するオープンソースAIエンジン

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

人工知能は急速に進化していますが、ほとんどのAIツールは依然としておなじみのパターンに従っています。つまり、モデルにプロンプトを与えると、それに応答を生成します。

しかし、ここ数年で、多くのAIエージェントが共有のデジタル環境内で互いに相互作用する、**マルチエージェントシミュレーション**という新しいカテゴリのAIシステムが注目を集め始めています。

単一のモデルが答えを予測したり生成したりするのではなく、これらのシステムは、情報を交換し、意見を形成し、互いに影響を与え合う自律エージェントのグループ全体をシミュレートします。

この分野で最近最も話題になっているプロジェクトの1つは、数千ものAIエージェントを使用して現実世界のシナリオをシミュレートするように設計されたオープンソースのスウォームインテリジェンスエンジンである**MiroFish**です。このプロジェクトは、金融市場、世論の変化、政策への反応、さらには架空の物語といった複雑な出来事を、現実世界で起こる前にシミュレートできるデジタルサンドボックスを作成するという野心的な目標により、開発者やAI愛好家の間で急速に注目を集めています。

💡
AIエージェントやMCPサーバーを構築したり、これらとやり取りしたりしていますか?Apidogは、MCPサーバーのデバッグとテストのために特別に設計された、強力な組み込みMCPクライアントを提供します。ローカルプロセスにSTDIO経由で接続する場合でも、リモートサーバーにHTTP経由で接続する場合でも、Apidogは直感的な視覚インターフェースを提供し、実行可能なツール、事前定義されたプロンプト、およびサーバーリソースを簡単にテストできます。複雑なOAuth 2.0認証を自動的に処理し、豊富なMarkdownおよび画像応答を動的にレンダリングするため、シームレスなMCP統合テストのための究極のツールとなります。
ボタン

答えを直接生成する従来のAIツールとは異なり、MiroFishは**AIエージェントのデジタル社会**全体を構築します。各エージェントは独自の記憶、性格特性、意思決定ロジックを持っています。速報ニュース、政策提言、金融シグナルといった新しいイベントが導入されると、エージェントたちは互いに情報に反応し、互いの行動に影響を与えながら相互作用を開始します。

時間経過とともに、それらの相互作用は、実際の人間集団がイベントにどう反応するかを彷彿とさせるパターンを作り出します。これらのパターンは、起こりうる結果、出現する物語、感情の変化を明らかにすることができ、このシステムを実験と予測のための強力な環境にしています。

ソース: X

MiroFishとは?

その核となるのは、マルチエージェント人工知能を中心に構築された**スウォームインテリジェンスシミュレーションエンジン**であるMiroFishです。

単一のAIモデルに依存するのではなく、このプラットフォームは、シミュレートされたデジタル環境内に存在する多数の自律エージェントを生成します。これらのエージェントはそれぞれ、仮想社会における個々の参加者を表します。

各エージェントは独自の以下を持っています:

エージェントが互いに相互作用する際、彼らは情報を交換し、意見を形成し、イベントに反応します。これにより、多くの個々の相互作用から大規模な結果が自然に生じる**創発的行動**が生まれます。

このコンセプトは、現実の人間社会を反映しています。現実世界では、世論、市場の動き、社会のトレンドは、多くの場合、何百万もの個々の意思決定から生まれます。MiroFishは、これらの相互作用をデジタルでシミュレートすることにより、イベントが起こる前にどのように展開するかをモデル化しようと試みています。

簡単に言えば、このプラットフォームは、**「もし〜ならば」シナリオを探求するためのデジタルサンドボックス**として機能します。

ボタン

ビジョン:集合知の鏡

MiroFishの背後にあるビジョンは、開発者が**現実世界の集合知の鏡**と表現するものを創造することです。

従来の予測システムは、多くの場合、履歴データと統計モデルに大きく依存しています。これらのアプローチは安定した環境ではうまく機能しますが、人間の行動が予測不能になると、しばしば苦戦します。

多くの現実世界の出来事は、数値パターンだけでなく、社会的相互作用によって形成されます。

例えば:

MiroFishは予測に異なるアプローチを取ります。データから直接未来を計算しようとするのではなく、このシステムは**個人が互いに相互作用し、影響を与え合うデジタル環境**を再現します。

複雑な結果は、これらの相互作用から自然に現れるという考えです。

シミュレートされたエージェントがイベントにどのように反応するかを観察することで、このプラットフォームは潜在的な現実世界の結果に関する洞察を生成できます。

ボタン

シードデータからデジタル世界へ

MiroFishでシミュレーションを実行することは、システムが**シードマテリアル**と呼ぶものから始まります。

シードマテリアルとは、シミュレートされるシナリオを定義する情報です。これには以下が含まれます:

ユーザーは資料をアップロードし、自然言語で予測目標を記述します。

例えば、誰かがシステムに以下をシミュレートするよう依頼するかもしれません:

この情報を使用して、MiroFishはエージェントが相互作用を開始できるデジタル環境を構築します。

このシステムは本質的に、シナリオが展開できる**並行デジタル世界**を創造します。

MiroFishのワークフロー:シミュレーションパイプラインの仕組み

舞台裏では、MiroFishは現実世界のデータを動的なシミュレーション環境に変換する構造化されたパイプラインに従います。各ステージは、エージェントが相互作用し、意味のある結果を生み出すために必要な情報を準備します。

1. ナレッジグラフの構築

最初の段階では、**現実世界のデータソースからシード情報**が抽出されます。

これらのソースには以下が含まれます:

その後、システムはGraphRAGアーキテクチャを使用して**ナレッジグラフ**を構築します。このグラフは、シミュレーション中にエージェントが使用するエンティティ、関係、およびコンテキスト情報を整理します。

構造化データに加えて、エージェントが履歴コンテキストを保持できるように、**個々の記憶構造とグループ記憶構造**の両方がシミュレーションに注入されます。

2. 環境生成

ナレッジグラフが構築されると、プラットフォームはシミュレーション環境を構築します。

この段階で、システムはいくつかのタスクを実行します:

エージェントには、ID、背景、行動ルールが割り当てられます。これにより、エージェント間の相互作用が実際の社会力学に似たものになります。

3. 並列シミュレーション実行

環境の準備が整うと、シミュレーションが開始されます。

何千ものエージェントが環境全体で同時に動作し、イベントに反応し、互いに相互作用します。プラットフォームは並列システム間でシミュレーションを実行し、多数のエージェントが同時に動作できるようにします。

このフェーズでは、システムは自動的に以下を実行します:

その結果、物語、意見、行動が時間とともに進化する生きたシミュレーションが生まれます。

4. レポート生成

シミュレーションが複数のサイクルを経て進行すると、**ReportAgent**と呼ばれる特殊なAIコンポーネントが結果を分析します。

ReportAgentは豊富な分析ツールにアクセスでき、シミュレーション環境と深く相互作用することができます。それは以下の内容をまとめた構造化された予測レポートを生成します:

このレポートは、ユーザーがシミュレーション中に何が起こったかを解釈し、潜在的な現実世界への影響を理解するのに役立ちます。

5. シミュレーションとの深い対話

MiroFishのユニークな機能の1つは、ユーザーが**シミュレートされた世界と直接対話できる**ことです。

予測レポートを読むだけでなく、ユーザーは以下を行うことができます:

ユーザーはReportAgentと通信して、追加の質問をしたり、より詳細な分析を要求したりすることもできます。

この対話型レイヤーにより、シミュレーション環境は従来の予測ツールよりもはるかに柔軟になります。

ボタン

クイックスタート:MiroFishをローカルで実行する

このプラットフォームを試したい開発者は、**ソースデプロイ**または**Dockerデプロイ**のいずれかを使用してMiroFishをローカルにデプロイできます。

システム要件

プラットフォームをインストールする前に、開発者は以下のツールをインストールする必要があります:

ツール バージョン 目的
Node.js 18+ フロントエンド実行環境
Python 3.11–3.12 バックエンド実行環境
uv 最新バージョンPythonパッケージマネージャー

インストールを確認するには:

node -v
python --version
uv --version

ステップ1:環境変数を設定する

まず、設定ファイルの例をコピーします。

cp .env.example .env

次に、.envファイルを編集し、必要なAPIキーを追加します。

LLM API構成

MiroFishは、OpenAI SDK形式と互換性のある任意のLLM APIをサポートしています。

設定例:

LLM_API_KEY=your_api_key
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_MODEL_NAME=qwen-plus

ドキュメントでは、AlibabaのBailianプラットフォームの**Qwenモデル**を使用することを推奨しています。

大規模なシミュレーションはかなりの計算リソースを消費する可能性があるため、40ラウンド未満のシミュレーションから始めることをお勧めします。


メモリシステム構成

MiroFishは、エージェントの長期記憶を管理するためにZep Cloudを使用します。

設定例:

ZEP_API_KEY=your_zep_api_key

Zep Cloudの無料枠は、通常、小規模な実験には十分です。


ステップ2:依存関係をインストールする

開発者は、単一のコマンドですべての必要な依存関係をインストールできます:

npm run setup:all

あるいは、インストールは段階的に行うこともできます。

Nodeの依存関係をインストールする:

npm run setup

Pythonバックエンドの依存関係をインストールする:

npm run setup:backend

このコマンドは、必要なPython仮想環境を自動的に作成します。


ステップ3:プラットフォームを起動する

インストール後、開発者は単一のコマンドでフロントエンドとバックエンドの両方のサービスを開始できます。

npm run dev

実行すると、サービスは以下で利用可能になります:

フロントエンドインターフェース:

<http://localhost:3000>

バックエンドAPI:

<http://localhost:5001>

必要に応じて、開発者はサービスを個別に起動することもできます。

バックエンドのみを起動する:

npm run backend

フロントエンドのみを起動する:

npm run frontend

Dockerデプロイ

コンテナ化された環境を好むチーム向けに、MiroFishはDockerデプロイもサポートしています。

まず、前述のように環境変数を設定します。

cp .env.example .env

その後、Docker Composeを使用してコンテナを起動します。

docker compose up -d

デフォルトでは、プラットフォームは以下のポートをマッピングします:

Docker設定ファイルには、必要に応じてコンテナイメージのダウンロードを高速化するために使用できる、コメントアウトされたミラーソースも含まれています。

終わりに

まだ開発の初期段階にあるものの、スウォームインテリジェンスプラットフォームは、AIシステムが複雑な社会環境をシミュレートできる未来を示唆しています。政策を実施する前にテストしたり、金融発表の前に市場の反応を探ったり、情報がソーシャルネットワークを通じてどのように広がるかを調査したりできることを想像してみてください。このようなツールは、企業、政府、研究者にとって強力な意思決定支援システムとなる可能性があります。もちろん、いかなるシミュレーションも、現実の人間の行動の複雑さを完全に捉えることはできません。予期せぬ出来事や文化的ニュアンスは常に結果に影響を与える可能性があります。

しかし、MiroFishのようなプラットフォームは、AIがいずれ質問に答えるだけでなく、社会全体をモデル化する方向に進化する可能性を示しています。実験的なオープンソースプロジェクトとして始まったこの取り組みは、すでに開発者や研究者の間で大きな議論を巻き起こしています。そして、マルチエージェントシミュレーションが進化し続ければ、MiroFishのようなツールは、現実世界で未来が展開する前にデジタル世界の中で未来を探求できる、新世代の予測技術に向けた初期の一歩となるかもしれません。

ボタン

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる