techdocs-graphrag / data /tutorials /human_in_the_loop.md
nvikou's picture
Deploy TechDocs GraphRAG
da21448 verified
|
Raw History Blame Contribute Delete
878 Bytes

Tutoriel : Human-in-the-loop

Le Human-in-the-loop permet de mettre un workflow en pause pour obtenir une validation humaine.

La fonction interrupt suspend l'exécution d'un Node et renvoie une valeur à l'appelant. La fonction interrupt nécessite un Checkpointer, car l'état doit être sauvegardé pendant la pause.

Pour reprendre, on invoque le graphe avec Command(resume=valeur) et le même thread_id. Le Node interrompu redémarre et interrupt renvoie la valeur fournie par l'humain.

from langgraph.types import interrupt, Command

def review(state):
    decision = interrupt({"draft": state["draft"]})
    return {"approved": decision == "ok"}

graph.invoke(Command(resume="ok"), config)

Les paramètres interrupt_before et interrupt_after de compile permettent aussi de s'arrêter avant ou après des Nodes précis, principalement pour le débogage.