可执行模型中心¶
ModelHub 为 NAVIER-CFD 中的模型提供统一的发现、状态检查、构造和外部实现适配接口。
安装¶
pip install navier-cfd
需要运行原生 PyTorch 模型时:
pip install "navier-cfd[models]"
查看模型状态¶
from navier_cfd import list_models
for handle in list_models():
status = handle.status
print(handle.id, status.mode, status.executable, status.dependency_available)
运行状态包括:
| 状态 | 含义 |
|---|---|
native |
NAVIER-CFD 内置可执行参考实现 |
external_adapter |
已注册稳定的外部 Python 构造入口 |
source_available |
已知官方源码,但尚无稳定构造入口 |
metadata |
只有模型卡和证据信息 |
数据集感知构造¶
from navier_cfd import load_model
fno = load_model("fno", dataset="cfdbench")
transolver = load_model("transolver", dataset="airfrans")
返回的模型包含:
model.navier_model_id
model.navier_dataset_id
model.navier_build_plan
model.navier_dataset_configuration
注册项目内构造器¶
from navier_cfd import ModelHub
hub = ModelHub()
def build_my_gino(*, task, spec, width=128, **kwargs):
return MyGINO(dimension=task.dimension, width=width, **kwargs)
hub.register_builder("gino", build_my_gino)
model = hub.load("gino", task=task, width=256)
连接外部实现¶
hub.register_external(
"transolver",
entrypoint="my_transolver_package:Transolver",
install_spec="my-transolver-package",
)
model = hub.load("transolver", hidden_dim=256, num_layers=8)
NAVIER-CFD 不会在导入包时自动克隆或执行第三方仓库。安装第三方依赖必须显式允许:
hub.model("transolver").install(allow_external=True)
科学注意事项¶
统一加载器只标准化构造和状态管理,不能消除不同模型的科学差异。每个实验仍需明确:
- 输入和输出变量;
- 无量纲化与归一化;
- 网格、点云或粒子表示;
- 边界条件编码;
- 时间推进方式;
- 损失函数和训练协议;
- 官方权重、许可证和引用要求。