AI a LLMAgenti

Checkpointy LangGraph a dlouhodobá paměť

Ukládejte agenty LangGraph na HotKV. Pozastavujte, obnovujte a cestujte časem napříč stavem grafu a uchovávejte dlouhodobou paměť prohledávatelnou podle významu.

prošlých konformních testů
81
savery
Sync + async
potřeba
Bez licence
Krok 1 z 6
Instalace

Jeden balíček pro checkpointer i úložiště. Python 3.10 nebo novější.

Ukázková relaceplaying
# Instalace
$ pip install langgraph-checkpoint-hotkv
Successfully installed langgraph-checkpoint-hotkv

Animovaný průvodce se skutečnými příkazy HotKV a ukázkovými odpověďmi. Kliknutím na kterýkoli krok na něj přeskočíte. Příkazy a odpovědi zůstávají anglicky, přesně tak, jak je v HotKV zadáváte a vidíte.

Problém

Agent LangGraph, který drží stav v paměti procesu, o všechno přijde při restartu. Schvalování s člověkem ve smyčce nemůže čekat přes noc, neúspěšné běhy nelze obnovit a nic, co se agent naučil, nepřežije do další konverzace.

Jak to řeší HotKV

langgraph-checkpoint-hotkv ukládá checkpointy každého grafu v HotKV. Graf lze přerušit a obnovit, nebo přetočit na libovolný dřívější krok a od něj větvit. Doprovodné úložiště uchovává dlouhodobou paměť napříč vlákny, nalezitelnou podle jmenného prostoru, filtru nebo, s modelem pro embeddingy, podle významu.

Krok za krokem

Co se děje, příkaz po příkazu

  1. 01

    Instalace

    Jeden balíček pro checkpointer i úložiště. Python 3.10 nebo novější.

    pip install langgraph-checkpoint-hotkv
  2. 02

    Kompilace s checkpointerem HotKV

    Každý krok grafu se nyní ukládá do HotKV.

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

    Běh, dokud nepotřebuje schválení

    Graf projde svými kroky, po každém uloží checkpoint a zastaví se před vrácením peněz.

    graph.invoke({"messages": [("user", "Refund order 1182")]}, {"configurable": {"thread_id": "t-81"}})
  4. 04

    O hodiny později, po restartu

    Proces se přes noc restartoval. Stav je stále v HotKV a čeká na stejném kroku.

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

    Schválení a obnovení

    Schvalovatel řekne ano a graf pokračuje z uloženého checkpointu.

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

    Pamatování napříč vlákny

    Dlouhodobá paměť žije v úložišti a najde se znovu v libovolné pozdější konverzaci.

    store.put(("users", "42"), "prefs", {"refunds": "prefers store credit"})
Kam to zapadá

Scénáře z praxe

Workflow s člověkem ve smyčce

Vrácení peněz, změny smluv a nasazení do produkce čekají na schválení člověkem, minuty i dny, bez držení otevřeného procesu.

Dlouho běžící výzkumní agenti

Běh, který selže v kroku 40, se obnoví od kroku 40 místo toho, aby začínal znovu.

Ladění a evaluace

Vraťte se na libovolný dřívější checkpoint, změňte vstup a větvete, abyste viděli, jak by se agent choval.

Zabudováno

Co dostanete

Checkpointer

HotKVSaver a AsyncHotKVSaver uchovávají stav grafu mezi běhy, s přerušením, obnovením a cestováním časem.

Dlouhodobé úložiště

HotKVStore uchovává položky napříč vlákny, prohledávatelné podle jmenného prostoru, filtru nebo významu, s volitelnou expirací.

Testováno na konformitu

Prochází vlastní konformní sadou checkpointerů LangGraph, 81 testů v 8 schopnostech, pro oba savery.

Žádné moduly, žádná licence

Používá základní datové typy HotKV a jeho vektorový index a funguje s enterprise licencí i bez ní.

Checkpointer a úložiště

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

Časté otázky

Potřebuji enterprise licenci?

Ne. Checkpointer a úložiště používají základní datové typy a vektorový index HotKV a fungují na serveru s licencí i bez ní.

Je podporováno async?

Ano. AsyncHotKVSaver a AsyncHotKVStore fungují s ainvoke a astream.

Může jeden server sdílet více aplikací?

Ano. Vše se ukládá pod prefixem klíčů, ve výchozím stavu langgraph, který lze změnit pro každou aplikaci nebo prostředí.

Související případy použití

Vyzkoušejte to na své zátěži

HotKV mluví protokolem Redisu, takže na něj můžete nasměrovat stávajícího klienta a spustit tytéž příkazy.