Maplemx / Agently

[AI Agent Application Development Framework] - 🚀 Build AI agent native application in very few code 💬 Easy to interact with AI agent in code using structure data and chained-calls syntax 🧩 Enhance AI Agent using plugins instead of rebuild a whole new agent
http://agently.tech
Apache License 2.0
908 stars 100 forks source link

有办法停止正在进行的对话吗? #92

Closed CrazyboyQCD closed 1 month ago

CrazyboyQCD commented 1 month ago

你好,我已经阅读过中文文档,发现文档中没有提及在调用start后停止输出的方法,所以有1个场景的实现希望得到解答: 目前我实现了1个支持Websocket连接的AI推理服务端,我希望通过本框架搭建的交互服务端与推理端进行交互; 客户端需要一个停止输出的功能,我的想法是通过Websocket传递消息到交互端再转发到推理端,同时停止交互端和推理端的执行来实现,请问有办法通过本框架来实现这种场景吗,是否可以利用Workflow来实现?

Maplemx commented 1 month ago

你好,目前大部分推理服务接口没有提供停止输出的方法,所以即使框架侧断开请求,也不会减少正在耗用的token,但我理解即使这样也需要停止输出的指令,来跳过目前被卡住的线程。这个目前我们的确还没有提供,因为这个会涉及到比较复杂的线程管理,但我们的确认为这个场景是存在且必要的,会纳入我们在请求层改造的需求中。感谢🙏

CrazyboyQCD commented 1 month ago

你好,目前大部分推理服务接口没有提供停止输出的方法,所以即使框架侧断开请求,也不会减少正在耗用的token,但我理解即使这样也需要停止输出的指令,来跳过目前被卡住的线程。这个目前我们的确还没有提供,因为这个会涉及到比较复杂的线程管理,但我们的确认为这个场景是存在且必要的,会纳入我们在请求层改造的需求中。感谢🙏

谢谢回复,我这边是自己部署了本地模型,支持Websocket,所以想知道目前是否可以通过在事件侦听中抛出错误这种方法来结束掉框架层的Agent执行

Maplemx commented 1 month ago

你好,目前大部分推理服务接口没有提供停止输出的方法,所以即使框架侧断开请求,也不会减少正在耗用的token,但我理解即使这样也需要停止输出的指令,来跳过目前被卡住的线程。这个目前我们的确还没有提供,因为这个会涉及到比较复杂的线程管理,但我们的确认为这个场景是存在且必要的,会纳入我们在请求层改造的需求中。感谢🙏

谢谢回复,我这边是自己部署了本地模型,支持Websocket,所以想知道目前是否可以通过在事件侦听中抛出错误这种方法来结束掉框架层的Agent执行

这个是可以的,每一个Agent推理请求发生在一个独立的线程中,抛出错误会导致线程终止。

CrazyboyQCD commented 1 month ago

这个是可以的,每一个Agent推理请求发生在一个独立的线程中,抛出错误会导致线程终止。

好的,谢谢