Workflows met een mens in de lus
Terugbetalingen, contractwijzigingen en productie-uitrol wachten minuten of dagen op goedkeuring van een persoon, zonder een proces open te houden.
Maak LangGraph-agents persistent op HotKV. Pauzeer, hervat en reis in de tijd door grafstatus, en houd langetermijngeheugen op betekenis doorzoekbaar.
Eén pakket voor de checkpointer en de store. Python 3.10 of nieuwer.
Een geanimeerde walkthrough met echte HotKV-commando's en voorbeeldantwoorden. Klik op een stap om ernaartoe te springen. Commando's en antwoorden blijven Engels, precies zoals je ze in HotKV typt en ziet.
Een LangGraph-agent die zijn status in het procesgeheugen bewaart, verliest alles bij een herstart. Goedkeuringen met een mens in de lus kunnen niet tot de volgende ochtend wachten, mislukte runs kunnen niet worden hervat en niets wat de agent heeft geleerd overleeft tot het volgende gesprek.
langgraph-checkpoint-hotkv slaat de checkpoints van elke graaf op in HotKV. Een graaf kan worden onderbroken en hervat, of worden teruggespoeld naar een eerdere stap om vanaf daar te vertakken. De bijbehorende store bewaart langetermijngeheugen over threads heen, te vinden op namespace, op filter of, met een embeddingmodel, op betekenis.
Eén pakket voor de checkpointer en de store. Python 3.10 of nieuwer.
pip install langgraph-checkpoint-hotkvElke stap van de graaf wordt nu in HotKV opgeslagen.
graph = builder.compile(checkpointer=HotKVSaver(hotkv.from_url("hotkv://localhost:6379")), interrupt_before=["refund"])De graaf werkt zijn stappen af, slaat na elke stap een checkpoint op en stopt vóór de terugbetaling.
graph.invoke({"messages": [("user", "Refund order 1182")]}, {"configurable": {"thread_id": "t-81"}})Het proces is 's nachts herstart. De status staat nog in HotKV, wachtend bij dezelfde stap.
graph.get_state({"configurable": {"thread_id": "t-81"}}).nextDe goedkeurder zegt ja en de graaf gaat verder vanaf het opgeslagen checkpoint.
graph.invoke(None, {"configurable": {"thread_id": "t-81"}})Langetermijngeheugen leeft in de store en wordt in elk later gesprek teruggevonden.
store.put(("users", "42"), "prefs", {"refunds": "prefers store credit"})Terugbetalingen, contractwijzigingen en productie-uitrol wachten minuten of dagen op goedkeuring van een persoon, zonder een proces open te houden.
Een run die bij stap 40 faalt, hervat bij stap 40 in plaats van opnieuw te beginnen.
Ga terug naar elk eerder checkpoint, wijzig de invoer en vertak, om te zien hoe de agent zich had gedragen.
HotKVSaver en AsyncHotKVSaver bewaren grafstatus tussen runs, met onderbreken, hervatten en tijdreizen.
HotKVStore bewaart items over threads heen, doorzoekbaar op namespace, filter of betekenis, met optionele verloopdatum.
Doorstaat de eigen conformiteitssuite voor checkpointers van LangGraph, 81 tests in 8 mogelijkheden, voor beide savers.
Gebruikt de kerndatatypen van HotKV en zijn vectorindex, en werkt met of zonder enterprise-licentie.
from langgraph.checkpoint.hotkv import HotKVSaver
with HotKVSaver.from_conn_string("hotkv://localhost:6379") as checkpointer:
graph = builder.compile(checkpointer=checkpointer)
graph.invoke({"messages": [("user", "hi")]}, {"configurable": {"thread_id": "1"}})Nee. De checkpointer en store gebruiken de kerndatatypen en vectorindex van HotKV en werken op een server met of zonder licentie.
Ja. AsyncHotKVSaver en AsyncHotKVStore werken met ainvoke en astream.
Ja. Alles wordt onder een sleutelprefix opgeslagen, standaard langgraph, die je per applicatie of omgeving kunt wijzigen.
HotKV spreekt het Redis-protocol, dus je kunt een bestaande client erop richten en dezelfde commando's uitvoeren.