Введение
Задумывались ли вы когда-нибудь, можно ли заранее предсказать реакцию пользователей сети на новую государственную политику или цепную реакцию, которую может вызвать PR-кризис?
Традиционный анализ общественного мнения опирается на исторические данные и экспертный опыт, что по сути является «взглядом в прошлое». Но MiroFish предлагает совершенно новый подход: позволить ИИ создать высокоточный цифровой параллельный мир, где тысячи агентов с уникальными личностями и долгосрочной памятью свободно взаимодействуют друг с другом, позволяя нам наблюдать за возникновением группового поведения.
Это то, что называют «Роевым интеллектом» (Swarm Intelligence).
MiroFish — это открытый движок прогнозирования на базе мультиагентных систем, выпущенный в 2025 году и работающий на симуляционном движке OASIS. Он может принимать любые исходные материалы (пресс-релизы, аналитические отчеты или даже сюжеты романов), автоматически выстраивать цифровой мир и выдавать прогнозные отчеты.
Сегодня мы начнем с нуля, развернем MiroFish и построим простую систему моделирования общественного мнения.
Основные концепции
Прежде чем приступить к работе, давайте разберем несколько ключевых понятий.
Исходная информация (Seed Information)
Это отправная точка для прогноза. Ею может быть новостная статья, финансовый отчет, фрагмент романа или даже популярное обсуждение в социальных сетях. MiroFish извлекает из этих материалов ключевые сущности, взаимоотношения персонажей и контекст событий.
Цифровой параллельный мир
Это главная инновация MiroFish. Он не просто заставляет ИИ генерировать текст, а создает настоящий «мир»:
- У каждого агента есть независимая личность, память и логика поведения.
- Агенты взаимодействуют друг с другом, распространяют информацию и формируют фракции.
- В системе проявляются групповые характеристики, которые невозможно предсказать на основе индивидуального поведения.
Представьте, что вы запускаете фейковую новость в этот мир и наблюдаете, как она разрастается, опровергается и в итоге формирует общественное мнение — в этом и заключается сила цифрового параллельного мира.
Рабочий процесс
Полный цикл работы MiroFish состоит из 5 шагов:
- Построение графа: извлечение сущностей и связей из исходных материалов для создания графа знаний.
- Создание среды: генерация личностей агентов и настройка параметров симуляции.
- Запуск симуляции: параллельное моделирование на двух платформах с динамическим обновлением памяти.
- Генерация отчета: ReportAgent анализирует результаты и создает прогноз.
- Глубокое взаимодействие: вы можете поговорить с любым персонажем в симулируемом мире.
Подготовка среды
MiroFish — это фуллстек-проект, фронтенд и бэкенд развертываются раздельно.
Требования к оборудованию
| Конфигурация | Рекомендуется | Минимум |
|---|---|---|
| CPU | 8 ядер | 4 ядра |
| RAM | 16 ГБ | 8 ГБ |
| Диск | 50 ГБ SSD | 20 ГБ |
| GPU | Опционально | N/A |
WARNING
Если вы планируете запускать более 40 циклов симуляции, желательно иметь более 16 ГБ ОЗУ. В процессе моделирования каждый агент хранит собственную память, что приводит к быстрому росту потребления ресурсов.
Зависимости ПО
| Инструмент | Версия | Описание |
|---|---|---|
| Node.js | 18+ | Среда для фронтенда |
| Python | ≥3.11, ≤3.12 | Среда для бэкенда |
| uv | Актуальная | Менеджер пакетов Python |
Проверьте вашу среду:
node -v # Должно быть >= 18.0.0
python --version # Должно быть между 3.11 и 3.12
uv --version
Быстрое развертывание
Мы продемонстрируем способ развертывания из исходного кода, так как это дает больше гибкости.
1. Клонирование проекта
git clone https://github.com/666ghj/MiroFish.git
cd MiroFish
2. Настройка переменных окружения
cp .env.example .env
Отредактируйте файл .env, вставив настройки вашего API. Есть два основных варианта:
Вариант А: Использование Alibaba Bailian (рекомендуется официально)
LLM_API_KEY=ваш_ключ_aliyun
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_MODEL_NAME=qwen-plus
Вариант Б: Использование других OpenAI-совместимых API
LLM_API_KEY=ваш_ключ_api
LLM_BASE_URL=https://api.openai.com/v1
LLM_MODEL_NAME=gpt-4o
Также необходимо настроить Zep Cloud (для управления памятью агентов):
ZEP_API_KEY=ваш_ключ_zep
TIP
У Zep Cloud есть бесплатный ежемесячный лимит, достаточный для ознакомления. Регистрация: https://app.getzep.com/
3. Установка зависимостей
npm run setup:all
Это одновременно установит:
- Зависимости Node в корневом каталоге
- Зависимости фронтенда
- Зависимости Python (автоматически создаст виртуальное окружение)
Если интернет медленный, можно выполнять по шагам:
npm run setup # Фронтенд
npm run setup:backend # Бэкенд
4. Запуск сервиса
npm run dev
После запуска:
- Фронтенд:
http://localhost:3000 - Бэкенд API:
http://localhost:5001
Альтернатива: Развертывание через Docker
Если вы хотите быстро начать работу, используйте Docker:
# 1. Настройте переменные окружения
cp .env.example .env
# 2. Запустите контейнеры
docker compose up -d
Docker автоматически пробросит порты 3000 (фронтенд) и 5001 (бэкенд).
Практическое применение
Теперь создадим задачу по моделированию общественного мнения.
1. Доступ к Web UI
Откройте в браузере http://localhost:3000, вы увидите главный интерфейс MiroFish.
2. Создание задачи прогнозирования
Нажмите «Создать прогноз» и выберите тип «Моделирование общественного мнения».
3. Ввод исходного материала
Введите в текстовое поле новостной повод, например:
Крупная интернет-компания объявила сегодня о сокращении 10% сотрудников,
объяснив это необходимостью сосредоточиться на ключевых направлениях бизнеса.
Новость мгновенно вызвала бурные обсуждения в соцсетях. Часть сотрудников
выразила недовольство отсутствием предварительного уведомления, другие
пользователи отнеслись с пониманием к экономическому давлению на бизнес.
CEO компании в письме сотрудникам подчеркнул, что это трудное, но необходимое
решение, и компания предложит щедрые компенсации и помощь в трудоустройстве.
4. Описание требований к прогнозу
Опишите на естественном языке, что именно вы хотите предсказать:
Предскажите, как будет меняться реакция пользователей после этой новости?
Сформируется ли негативный фон? Как долго он продлится?
Какие группы людей какую позицию займут?
5. Начало симуляции
Нажмите «Начать симуляцию», система:
- Извлечет ключевые сущности (компания, CEO, сотрудники, пользователи).
- Построит граф знаний.
- Сгенерирует агентов с разными ролями (сочувствующий сотрудник, рациональный аналитик, праздный наблюдатель и т.д.).
- Начнет моделирование взаимодействий.
TIP
Для первого раза рекомендуется установить 20–30 циклов, а затем увеличивать при необходимости.
6. Просмотр результатов
По завершении вы получите детальный отчет, включающий:
- График тренда развития ситуации.
- Распределение основных мнений.
- Прогноз ключевых переломных моментов.
- Рекомендуемую стратегию реагирования.
7. Глубокое взаимодействие
Это самая интересная часть MiroFish. Вы можете:
- Поговорить с любым агентом лично: «Ты — пользователь, сочувствующий сотрудникам. Что ты думаешь об этой ситуации?»
- Попросить ReportAgent ответить на вопрос: «Как изменится ситуация, если компания выпустит открытое письмо с разъяснениями?»
Настройка провайдера ИИ
Выше мы использовали модели Alibaba. Но если вы хотите снизить затраты или использовать другие модели, рассмотрите платформу Defapi.
Defapi — это сервис-посредник, где цены в два раза ниже официальных, и поддерживаются:
- OpenAI (GPT-4o, GPT-4.5)
- Anthropic (Claude Sonnet, Claude Opus)
- Google (Gemini)
Он полностью совместим с OpenAI SDK, нужно лишь изменить два параметра:
# Использование Defapi
LLM_API_KEY=ваш_Defapi_Key
LLM_BASE_URL=https://api.defapi.org/v1
LLM_MODEL_NAME=openai/gpt-4o-mini
Или в коде:
from openai import OpenAI
client = OpenAI(
api_key="ваш_Defapi_Key",
base_url="https://api.defapi.org/v1"
)
response = client.chat.completions.create(
model="openai/gpt-4o-mini",
messages=[{"role": "user", "content": "Привет!"}]
)
TIP
Интерфейс Defapi полностью совместим с OpenAI SDK. В MiroFish не нужно ничего менять в коде, достаточно обновить переменные окружения.
Устранение неполадок
1. Ошибка при npm install
Проверьте версию Node.js:
node -v
Должна быть 18+. Если версия верна, но установка не удается, попробуйте:
npm cache clean --force
npm install --legacy-peer-deps
2. Установка зависимостей Python зависла
Убедитесь, что версия Python находится в диапазоне 3.11–3.12:
python --version
Если нет, используйте pyenv или conda для управления версиями.
3. Ошибка "Model not found" при запуске бэкенда
Проверьте правильность LLM_MODEL_NAME. Форматы имен различаются у разных провайдеров:
- Alibaba:
qwen-plus - OpenAI:
gpt-4o - Defapi:
openai/gpt-4o-mini
4. Симуляция работает слишком медленно
Пути оптимизации:
- Уменьшите количество циклов симуляции (с 40 до 20).
- Используйте более легкую модель.
- Сократите количество агентов.
- Проверьте стабильность сети (задержки API).
5. Слишком высокое потребление памяти
Если у машины меньше 16 ГБ ОЗУ, ограничьте количество одновременных процессов в .env:
MAX_CONCURRENT_AGENTS=10
Или уменьшите число агентов, взаимодействующих в каждом цикле.
6. Пустая страница фронтенда
Проверьте, работает ли бэкенд:
curl http://localhost:5001/health
Если возвращается ошибка, проверьте правильность загрузки файла .env.
Дальнейшие возможности
Настройка личностей агентов
MiroFish позволяет настраивать профили агентов при создании задачи. Можно указать:
- Возраст, профессию, черты характера.
- Позицию (за/против/нейтрально).
- Биографию.
Тонкая настройка делает симуляцию максимально приближенной к реальности.
Подключение новых источников данных
На данный момент поддерживаются текстовые материалы. В будущем можно будет подключить:
- API соцсетей (сбор реальных данных).
- RSS-ленты новостей.
- Финансовые базы данных.
Сферы применения
MiroFish полезен не только для анализа новостей:
- Финансовое прогнозирование: моделирование рыночных настроений.
- Оценка госполитики: предсказание социальной реакции на новые законы.
- Сценарное мастерство: развитие сюжетов (например, предсказание концовки классических романов).
- Кризис-менеджмент: отработка стратегий реагирования на PR-угрозы.
Дополнительные ссылки
- Репозиторий GitHub: https://github.com/666ghj/MiroFish
- Онлайн-демо: https://666ghj.github.io/mirofish-demo/
- Официальная документация: https://deepwiki.com/666ghj/MiroFish
- Платформа Defapi: https://defapi.org
- Движок OASIS: https://github.com/camel-ai/oasis
Если вы интересуетесь мультиагентными системами и хотите почувствовать, как ИИ предсказывает будущее, MiroFish — отличная точка входа.