You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中保存并重新加载PM4Py生成的Petri网模型?

PM4Py中Petri网模型的保存与重加载方案

方案1:使用PM4Py原生PNML读写接口

PM4Py支持Petri网标准格式PNML的读写,能完整保存模型结构、初始标记和最终标记,步骤如下:

  • 保存模型:

    import pm4py
    
    # 假设已通过Inductive Miner得到petri_net, initial_marking, final_marking
    pm4py.write_petri_net(petri_net, initial_marking, final_marking, "my_petri_model.pnml")
    
  • 加载模型:

    petri_net, initial_marking, final_marking = pm4py.read_petri_net("my_petri_model.pnml")
    

PNML是跨工具兼容的格式,适合后续和其他Petri网分析工具交互。

方案2:用Python Pickle序列化

如果只需要在Python环境内复用模型,Pickle序列化是更轻量的选择:

  • 保存模型:

    import pickle
    
    # 将模型相关对象打包保存
    with open("petri_model.pkl", "wb") as f:
        pickle.dump((petri_net, initial_marking, final_marking), f)
    
  • 加载模型:

    with open("petri_model.pkl", "rb") as f:
        petri_net, initial_marking, final_marking = pickle.load(f)
    

关键提示

无论用哪种方法,必须同时保存和加载初始标记与最终标记,否则模型无法正确还原日志对应的行为逻辑。

内容的提问来源于stack exchange,提问作者Aviv Gerasi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 02:45:39