连续发送¶
先决条件
用户有时会以非预期的方式与您的图进行交互。例如,用户可能会发送一条消息,然后在图尚未完成运行时发送第二条消息。更普遍地说,用户可能在第一次运行尚未完成之前第二次调用图。我们称之为“连续发送”。
目前,LangGraph 仅在 LangGraph Platform 中处理此问题,开源版本不包含此功能。原因是,为了处理此问题,我们需要知道图是如何部署的,而 LangGraph Platform 处理部署,因此相关逻辑需要位于那里。如果您不想使用 LangGraph Platform,我们在下面详细描述了我们已实现的选项。
拒绝¶
这是最简单的选项,它直接拒绝任何后续运行,不允许连续发送。请参阅操作指南,了解如何配置拒绝连续发送选项。
入队¶
这是一个相对简单的选项,它会继续第一次运行直到完成整个运行,然后将新的输入作为一个单独的运行发送。请参阅操作指南,了解如何配置入队连续发送选项。
中断¶
此选项会中断当前执行,但会保存截至该点已完成的所有工作。然后它插入用户输入并从那里继续。
如果您启用此选项,您的图应该能够处理可能出现的异常边缘情况。例如,您可能调用了一个工具,但尚未从运行该工具中获得结果。您可能需要移除该工具调用,以避免出现悬挂的工具调用。
请参阅操作指南,了解如何配置中断连续发送选项。
回滚¶
此选项会中断当前执行,**并**回滚截至该点已完成的所有工作,包括原始运行输入。然后它会发送新的用户输入,基本上就好像它是原始输入一样。
请参阅操作指南,了解如何配置回滚连续发送选项。