流式传输
在工作流执行期间实时流式传输更新
从节点发出事件
namespace App\Neuron;
class ProgressEvent implements Event
{
public function __construct(protected string $msg){}
}namespace App\Neuron;
use NeuronAI\Workflow\Node;
use NeuronAI\Workflow\StartEvent;
use NeuronAI\Workflow\StopEvent;
class InitialNode extends Node
{
public function __invoke(StartEvent $event, WorkflowState $state): \Generator|FirstEvent
{
yield new ProgressEvent("处理 StartEvent");
return new FirstEvent("InitialNode 完成");
}
}
class NodeOne extends Node
{
public function __invoke(FirstEvent $event, WorkflowState $state): \Generator|SecondEvent
{
yield new ProgressEvent($event->firstMsg);
return new SecondEvent("NodeOne 完成");
}
}
class NodeTwo extends Node
{
public function __invoke(SecondEvent$event, WorkflowState $state): \Generator|StopEvent
{
yield new ProgressEvent($event->secondMsg);
yield new ProgressEvent("NodeTwo 完成");
$state->set('message', '流式传输结束');
return new StopEvent();
}
}流式代理输出
监控与调试
最后更新于