Migration depuis LangGraph
Migrer de LangGraph vers Lumen + Kova
SqliteSaver → LumenCheckpointer + LumenTracer, déploiement des Agents sur le cluster Kova — sans modifier le code métier.
Ce que vous obtenez
| Avant (LangGraph pur) | Après |
|---|---|
| Persistance SqliteSaver mono-machine | LumenCheckpointer + Kova récupération WAL à la microseconde |
| Aucun Trace | LumenTracer collecte automatique |
| Aucun suivi de coût | CostTracker agrégation par Node |
| Replay manuel | Replay.from_run_id() en une ligne |
Étapes de migration
Remplacer le Checkpointer —
LumenCheckpointerimplémenteBaseCheckpointSaverà 100 %, sans aucune modification du code métier.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() + )Ajouter le Tracer — après le démarrage local, accédez à
http://localhost:7070pour visualiser la chronologie des Traces.diff+ from lumen_ai import LumenTracer graph = wf.compile( checkpointer=LumenCheckpointer(), + callbacks=[LumenTracer()], )Déployer sur Kova
yaml# agent.yaml name: research-agent entry: python my_agent.py checkpointer: lumen replicas: 3bashlumen deploy --target kova://prod-cluster
Vérification locale
bash
python my_agent.py # 正常跑
kill -9 $(pgrep -f my_agent) # 模拟崩溃
python my_agent.py # 从中断点继续,不重调 LLMComparaison de performances
| Indicateur | Avant | Après |
|---|---|---|
| Latence de récupération | 8ms | Microseconde |
| Multi-processus | Verrouillage requis | Natif |
| Inter-datacenter | Manuel | Réplication asynchrone |
| Réappel LLM | Parfois | Jamais |
Rollback
Conservez l’ancien code SqliteSaver en commentaire ; restaurez le diff à tout moment pour revenir à l’état initial. Les données ne sont pas partagées, mais les deux peuvent tourner en parallèle.