Skip to content
从 LangGraph 迁移

从 LangGraph 迁移到 Lumen + Kova

SqliteSaver → LumenCheckpointer + LumenTracer,Agent 部署到 Kova 集群——业务代码不改。

你会得到 ​

Before(纯 LangGraph)After
SqliteSaver 单机持久化LumenCheckpointer + Kova 微秒级 WAL 恢复
无 TraceLumenTracer 自动采集
无 Cost 统计CostTracker 按 Node 聚合
手动 ReplayReplay.from_run_id() 一行

迁移步骤 ​

  1. 替换 Checkpointer — LumenCheckpointer 100% 实现 BaseCheckpointSaver,无需改任何业务代码。

    diff
    - from langgraph.checkpoint.sqlite import SqliteSaver
    + from lumen_ai import LumenCheckpointer
    
    - graph = wf.compile(
    -     checkpointer=SqliteSaver.from_conn_string("./state.db")
    - )
    + graph = wf.compile(
    +     checkpointer=LumenCheckpointer()
    + )
  2. 加 Tracer — 本地启动后,访问 http://localhost:7070 即可看到 Trace 时间线。

    diff
    + from lumen_ai import LumenTracer
    
      graph = wf.compile(
          checkpointer=LumenCheckpointer(),
    +     callbacks=[LumenTracer()],
      )
  3. 部署到 Kova

    yaml
    # agent.yaml
    name: research-agent
    entry: python my_agent.py
    checkpointer: lumen
    replicas: 3
    bash
    lumen deploy --target kova://prod-cluster

本地验证 ​

bash
python my_agent.py           # 正常跑
kill -9 $(pgrep -f my_agent) # 模拟崩溃
python my_agent.py           # 从中断点继续,不重调 LLM

性能对比 ​

指标BeforeAfter
恢复延迟8ms微秒级
多进程需加锁原生
跨机房手动异步复制
LLM 重调有时永不

回滚

保留旧 SqliteSaver 代码注释;任何时候还原 diff 即回到原状。数据不互通,但可并行跑。

下一步 ​

下一步

Powered by Lurus Technologies