AI en LLMAgents

LangGraph-checkpoints en langetermijngeheugen

Maak LangGraph-agents persistent op HotKV. Pauzeer, hervat en reis in de tijd door grafstatus, en houd langetermijngeheugen op betekenis doorzoekbaar.

conformiteitstests geslaagd
81
savers
Sync + async
nodig
Geen licentie
Stap 1 van 6
Installeren

Eén pakket voor de checkpointer en de store. Python 3.10 of nieuwer.

Voorbeeldsessieplaying
# Installeren
$ pip install langgraph-checkpoint-hotkv
Successfully installed langgraph-checkpoint-hotkv

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.

Het probleem

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.

Hoe HotKV het aanpakt

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.

Stap voor stap

Wat er gebeurt, commando voor commando

  1. 01

    Installeren

    Eén pakket voor de checkpointer en de store. Python 3.10 of nieuwer.

    pip install langgraph-checkpoint-hotkv
  2. 02

    Compileren met een HotKV-checkpointer

    Elke stap van de graaf wordt nu in HotKV opgeslagen.

    graph = builder.compile(checkpointer=HotKVSaver(hotkv.from_url("hotkv://localhost:6379")), interrupt_before=["refund"])
  3. 03

    Draaien tot goedkeuring nodig is

    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"}})
  4. 04

    Uren later, na een herstart

    Het proces is 's nachts herstart. De status staat nog in HotKV, wachtend bij dezelfde stap.

    graph.get_state({"configurable": {"thread_id": "t-81"}}).next
  5. 05

    Goedkeuren en hervatten

    De goedkeurder zegt ja en de graaf gaat verder vanaf het opgeslagen checkpoint.

    graph.invoke(None, {"configurable": {"thread_id": "t-81"}})
  6. 06

    Onthouden over threads heen

    Langetermijngeheugen leeft in de store en wordt in elk later gesprek teruggevonden.

    store.put(("users", "42"), "prefs", {"refunds": "prefers store credit"})
Waar het past

Praktijkscenario's

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.

Langlopende onderzoeksagents

Een run die bij stap 40 faalt, hervat bij stap 40 in plaats van opnieuw te beginnen.

Debuggen en evalueren

Ga terug naar elk eerder checkpoint, wijzig de invoer en vertak, om te zien hoe de agent zich had gedragen.

Ingebouwd

Wat je krijgt

Checkpointer

HotKVSaver en AsyncHotKVSaver bewaren grafstatus tussen runs, met onderbreken, hervatten en tijdreizen.

Langetermijnstore

HotKVStore bewaart items over threads heen, doorzoekbaar op namespace, filter of betekenis, met optionele verloopdatum.

Conformiteit getest

Doorstaat de eigen conformiteitssuite voor checkpointers van LangGraph, 81 tests in 8 mogelijkheden, voor beide savers.

Geen modules, geen licentie

Gebruikt de kerndatatypen van HotKV en zijn vectorindex, en werkt met of zonder enterprise-licentie.

Checkpointer en store

python
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"}})

Veelgestelde vragen

Heb ik een enterprise-licentie nodig?

Nee. De checkpointer en store gebruiken de kerndatatypen en vectorindex van HotKV en werken op een server met of zonder licentie.

Wordt async ondersteund?

Ja. AsyncHotKVSaver en AsyncHotKVStore werken met ainvoke en astream.

Kunnen meerdere apps één server delen?

Ja. Alles wordt onder een sleutelprefix opgeslagen, standaard langgraph, die je per applicatie of omgeving kunt wijzigen.

Verwante use cases

Probeer het op je eigen workload

HotKV spreekt het Redis-protocol, dus je kunt een bestaande client erop richten en dezelfde commando's uitvoeren.