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.
Ukládejte agenty LangGraph na HotKV. Pozastavujte, obnovujte a cestujte časem napříč stavem grafu a uchovávejte dlouhodobou paměť prohledávatelnou podle významu.
Jeden balíček pro checkpointer i úložiště. Python 3.10 nebo novější.
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.
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.
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.
Jeden balíček pro checkpointer i úložiště. Python 3.10 nebo novější.
pip install langgraph-checkpoint-hotkvKaždý krok grafu se nyní ukládá do HotKV.
graph = builder.compile(checkpointer=HotKVSaver(hotkv.from_url("hotkv://localhost:6379")), interrupt_before=["refund"])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"}})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"}}).nextSchvalovatel řekne ano a graf pokračuje z uloženého checkpointu.
graph.invoke(None, {"configurable": {"thread_id": "t-81"}})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"})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.
Běh, který selže v kroku 40, se obnoví od kroku 40 místo toho, aby začínal znovu.
Vraťte se na libovolný dřívější checkpoint, změňte vstup a větvete, abyste viděli, jak by se agent choval.
HotKVSaver a AsyncHotKVSaver uchovávají stav grafu mezi běhy, s přerušením, obnovením a cestováním časem.
HotKVStore uchovává položky napříč vlákny, prohledávatelné podle jmenného prostoru, filtru nebo významu, s volitelnou expirací.
Prochází vlastní konformní sadou checkpointerů LangGraph, 81 testů v 8 schopnostech, pro oba savery.
Používá základní datové typy HotKV a jeho vektorový index a funguje s enterprise licencí i bez ní.
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"}})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í.
Ano. AsyncHotKVSaver a AsyncHotKVStore fungují s ainvoke a astream.
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í.
HotKV mluví protokolem Redisu, takže na něj můžete nasměrovat stávajícího klienta a spustit tytéž příkazy.