发布时间:2026/7/16 22:38:46
停止生成只停前端?后端 Agent 还在跑,acancel 才是真取消 「Regnexe Python 实战系列」第 9 篇共 10 篇对应仓库examples/readme/09_cancel_and_resume.py。上一篇08. Agent 答案错了怎么排查先把 LLM 和工具调用事件打出来。一个产品里绕不开的需求只要你做过聊天式 Agent就一定会遇到“停止生成”按钮。很多实现只是把前端流断开用户看起来停止了但后端任务还在跑模型还在输出工具还在执行账单还在增加。regnexe-py 的acancel()解决的是后端任务取消按app_id / user_id / session_id找到正在运行的 Agent 任务并请求取消。实战代码先启动一个慢工具1、示例里故意做了一个慢工具plugin(idreports,nameReports Plugin)classReportsPlugin:agent_tool(Generate a financial report for a topic. Takes a while to run.,tags[reports])defgenerate_report(self,topic:str)-str:time.sleep(6)returnfReport on{topic}: revenue up 12% quarter-over-quarter.2、为了确定工具真的开始执行示例还写了一个监听器classToolStartListener(ConsoleEventListener):def__init__(self,tool_started:asyncio.Event)-None:super().__init__()self._tool_startedtool_startedasyncdefon_event(self,event_type:str,name:str,data:dict[str,Any])-None:awaitsuper().on_event(event_type,name,data)ifevent_typeTOOL_CALLED:self._tool_started.set()这个asyncio.Event用来避免靠sleep猜时机。3、构建 RegnexeAgent加入 ReportsPlugin 和 ToolStartListeneragent(RegnexeAgentBuilder().with_default_model(Vendor.DEEPSEEK,deepseek-v4-flash).with_plugin(ReportsPlugin()).with_event_listener(ToolStartListener(tool_started)).build())关键点ainvoke 要放到独立 Task 里执行取消要并发触达正在运行的任务所以示例这样启动runasyncio.create_task(agent.ainvoke(Generate a financial report on Q2 sales.,app_idreadme,user_idreader,session_idsession_id,))等工具开始后调用cancelledawaitagent.acancel(app_idreadme,user_idreader,session_idsession_id,)被取消的运行不会直接把异常抛给业务层而是返回AgentResult(statuscancelled)这对 API 层很友好。你可以把状态明确返回给前端而不是让一次取消变成 500 错误。继续执行同一个 session 再调用示例第二阶段没有调用特殊的resume()而是对同一个session_id发起普通ainvoke()result2awaitagent.ainvoke(Please go ahead and finish generating that report.,app_idreadme,user_idreader,session_idsession_id,)原因是这里没有人工审批卡点只是用户主动取消。LangGraph 已经在完成步骤后保存 checkpoint同一个 session 可以继续推进。如果是人工审批式中断那是另一个 APIaresume()。仓库顶层examples/10_interrupt_example.py专门演示这个场景。立即运行试试✈️ ✈️ ✈️ 小结acancel()适合这些产品交互聊天框停止生成用户取消长报告生成前端页面关闭后终止后端 Agent 任务任务耗时过长时主动停止记住两个关键点运行中的ainvoke()要放在独立asyncio.Task里取消要用同一组app_id / user_id / session_id定位任务到这里regnexe-py 的 9 个 README 示例就串完了从with_tool快速接入到 Skill/Sub-Agent、插件、目录加载、Marketplace、记忆、事件再到取消与继续。它们解决的不是“怎么调一次模型”而是“怎么把 Agent 做成一个能接业务系统的 Python 应用”。 上一篇08. Agent 答案错了怎么排查先把 LLM 和工具调用事件打出来 系列开篇00. 别再把 Python Agent 写成 Demo 了我开源了一个能管插件、记忆、事件、取消的框架 项目地址https://github.com/flower-trees/regnexe-py

相关新闻

2026/7/16 22:33:46

Steam成就管理神器:掌控游戏数据的终极指南

Steam成就管理神器:掌控游戏数据的终极指南 【免费下载链接】SteamAchievementManager A manager for game achievements in Steam. 项目地址: https://gitcode.com/gh_mirrors/st/SteamAchievementManager Steam成就管理工具(Steam Achievement …

2026/7/16 22:33:46

动态策略推理揭秘:SingGuard-8b如何实现运行时安全规则适配

动态策略推理揭秘:SingGuard-8b如何实现运行时安全规则适配 【免费下载链接】SingGuard-8b 项目地址: https://ai.gitcode.com/hf_mirrors/inclusionAI/SingGuard-8b 在当今AI安全领域,SingGuard-8b作为一个创新的多模态大语言模型护栏&#xff…

2026/7/17 4:29:51

三相PWM整流器第四象限PI双闭环解耦控制Simulink仿真实现

在电力电子系统设计中,三相电压型PWM整流器的第四象限运行一直是工程师面临的挑战——当电流反向流动时,如何维持直流侧电压稳定?传统单闭环控制往往在能量回馈工况下出现振荡甚至失稳。本文将基于Simulink仿真平台,完整实现PI双闭…

2026/7/17 4:29:51

Ubuntu 22.04中文界面与输入法配置全攻略

1. Ubuntu 22.04 中文界面配置指南刚接触Ubuntu的新用户常会遇到系统默认英文界面的困扰。作为全球最流行的Linux发行版之一,Ubuntu 22.04 LTS(Jammy Jellyfish)虽然支持多国语言,但初次安装时并不会自动识别并切换为中文环境。本…

2026/7/17 4:29:51

芒果派MangoPi MQ Quad开发板全志H616体验与Debian系统配置

1. 芒果派MangoPi MQ Quad开箱初体验1.1 硬件配置与开箱细节拿到芒果派MangoPi MQ Quad的第一印象就是"小巧精致"。这款开发板采用全志H616 SoC,配备1GB内存和RTL8723DS无线模块,整体尺寸仅为55mm55mm。包装内包含:粉色PCB主板&…

2026/7/17 4:29:51

C#调用C++ DLL实战指南:从P/Invoke原理到跨语言调试避坑

1. 项目概述:当C遇上C#,一场跨语言的“握手”在软件开发的江湖里,C和C#就像是两位性格迥异但都身怀绝技的大侠。C这位“老江湖”,内功深厚,对系统底层了如指掌,在追求极致性能、硬件交互或复用大量历史遗留…

2026/7/17 4:29:51

Windows 11更新KB5034123故障分析与解决方案

1. 事件背景与影响范围2024年1月,微软向全球Windows 11用户推送了代号为"KB5034123"的开年首个重大系统更新。这个原本旨在提供安全补丁和功能改进的常规更新,却在推送后48小时内引发了大规模用户投诉。根据微软官方论坛统计,截至1…

2026/7/17 4:24:51

SmolVLA:面向边缘部署的轻量级视觉语言动作模型

1. 为什么SmolVLA突然被圈内人反复提起:它不是又一个“大模型玩具”最近在几个具身智能方向的工程师群、AI模型优化讨论组里,几乎每天都能看到有人贴出SmolVLA的论文链接或推理截图,配文常是:“这玩意儿真能跑在Jetson Orin上&…

2026/7/15 17:04:06

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&#…

2026/7/17 1:21:45

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境随着新能源汽车行业的快速发展,充电通信协议的标准化和测试验证变得尤为重要。GB/T 27930-2023作为中国智能充电协议的最新版本,对充电机与电动汽车之间的通信提出了更严格…

2026/7/15 23:18:22

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡 【免费下载链接】rtl8852be Realtek Linux WLAN Driver for RTL8852BE 项目地址: https://gitcode.com/gh_mirrors/rt/rtl8852be 还在为Linux系统无法识别RTL8852BE Wi-Fi 6网卡而烦恼吗?&#x1f…

2026/7/17 0:04:23

BiSheng JDK-build性能调优:构建速度提升30%的优化策略

BiSheng JDK-build性能调优:构建速度提升30%的优化策略 【免费下载链接】bishengjdk-build BiSheng JDK build and test scripts - common across all releases/versions 项目地址: https://gitcode.com/openeuler/bishengjdk-build 前往项目官网免费下载&am…

2026/7/16 13:58:36

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…