基于 ReAct 的 COMSOL 自动化建模智能体 · v0.1.0 · 统一适配 COMSOL 6.3

自然语言 → .mph
AI 驱动的多物理场建模

Multiphysics Modeling Agent (mph-agent)基于 ReAct(Reasoning & Acting)架构, 将自然语言描述的 COMSOL 建模需求自动转换为完整 .mph 模型文件。 内置技能库 (Skills)案例库讨论模式分阶段规划, 配合 EventBus 流式事件反馈,覆盖从需求理解到求解分析的完整流程。

Python 3.8+Tauri 2React 18COMSOL 6.3技能库 Skills案例库EventBus 流式MIT License
示例对话
用户:
创建一个宽 1 米、高 0.5 米的矩形,添加固体力学物理场,并进行稳态研究。
MPH-Agent(ReAct):
Thought:需构建几何 → 添加 Solid Mechanics → 网格 → Stationary Study。
Action:调用 COMSOL Java API 构建 Rectangle(1, 0.5)。
Observation:几何创建成功,继续添加物理场…
✔ 已生成 models/model.mph

功能特性

v0.1.0 在 ReAct 闭环基础上新增技能库、案例库、讨论模式、分阶段规划、事件流等能力,全面提升复杂建模的成功率。

ReAct 闭环

Thought → Action → Observation → Iterate,自动迭代直到生成可运行模型。

技能库 Skills

领域技能以 SKILL.md 组织并索引到本地 skills.db,建模时自动检索注入到提示词。

案例库同步

桌面端可同步案例库,结合本地 .mph 结构化解析作为新任务的参考上下文。

讨论模式 + 分阶段规划

在复杂需求下先与用户讨论、确认方案,分阶段生成计划后再进入执行。

多 LLM 后端

DeepSeek / Kimi / Ollama / OpenAI 兼容 / Dashscope (Qwen) 可一键切换。

COMSOL 6.3 深度集成

直接调用官方 Java API 构建几何 / 物理场 / 网格 / 研究,并支持自动重启桥接进程。

EventBus 流式事件

推理与执行过程以事件流推送到桌面端,实时查看 Thought / Action / Observation。

上下文用量监控

内置 Prompt Context Usage Meter,实时显示上下文使用比例,配合摘要式记忆防止溢出。

COMSOL Ops 页面

桌面端新增运维页,管理 Java 桥接、环境诊断、输出目录与案例库配置。

系统架构

三层架构:桌面交互层 / ReAct Agent 层 / COMSOL 执行层,通过 EventBus 串联流式事件与桌面 UI。

桌面交互层

  • Tauri 2 + React 18
  • 对话 / 技能库 / 案例库 / 设置
  • COMSOL Ops 页面
  • 上下文用量仪表

ReAct Agent 层

  • Planner / Executor / ReAct
  • 讨论模式 + 分阶段规划
  • 技能检索与提示词注入
  • 摘要式记忆与上下文管理

COMSOL 执行层

  • Java API 直调 (6.3)
  • 几何 / 物理场 / 网格 / 研究
  • 结构化 .mph 解析
  • 自动重启桥接进程
ReAct 循环

Think → Act → Observe → Iterate,失败或偏差时自动回退并重新规划。

事件流(EventBus)

Agent 推理 / 工具调用 / 观察结果以事件形式推送到桌面端,支持实时流式更新。

数据模型 (Schemas)

geometry / physics / study / task 统一 Schema,供 Planner、Executor 与 Java 侧共享。

技能库(Skills)

SKILL.md 按领域组织,索引存储于 data/skills.db,根据任务自动检索并注入。

快速开始

推荐直接下载 Windows 桌面安装包;也可以从源码运行,自带 Python API。

1. 克隆仓库

git clone https://github.com/iammm0/mph-agent.git
cd mph-agent

2. 安装依赖(使用 uv)

# 先安装 uv: https://docs.astral.sh/uv/
uv sync

3. 配置 .env

LLM_BACKEND=ollama
OLLAMA_URL=http://localhost:11434
OLLAMA_MODEL=llama3
COMSOL_JAR_PATH=C:\Program Files\COMSOL\COMSOL63\Multiphysics\plugins

4. 启动桌面应用

uv run python cli.py
# 启动后可在输入框输入 /doctor 进行环境诊断

Python API 使用示例

from agent.react.react_agent import ReActAgent

react_agent = ReActAgent(max_iterations=10)
model_path = react_agent.run("创建一个宽1米、高0.5米的矩形")
print(f"模型已生成: {model_path}")
重要声明 / Disclaimer

本项目为独立开源工具,与 COMSOL 官方无任何关联,非官方产品、非官方插件

本项目仅通过 COMSOL 官方公开 API 进行自动化调用与脚本生成,不包含任何 COMSOL 核心代码、不破解、不修改、不绕过许可机制。

使用本工具的前提是用户已拥有合法、正版的 COMSOL Multiphysics 软件许可,仅限学习、科研与合法合规的工程自动化用途。

让 COMSOL 建模像对话一样自然

mph-agent 正在快速迭代中,欢迎 Star、Issue 和 PR,一起推动多物理场仿真的智能化。