You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

单源生成多类型Agent:如何追踪各类型Agent系统进出平均耗时

单一Source生成多类型Agent的追踪与耗时统计方案

核心思路

给每个生成的Agent打上进入系统的时间戳,待Agent离开时计算耗时,再按类型分类统计数据。

方法一:修改Agent类添加时间属性

  • 给Type1、Type2、Type3、Type4四个Agent类,都新增一个double enterTime成员变量。
  • 打开Source块的On exit事件,添加代码:
    agent.enterTime = time();
    
  • 在Agent最终离开系统的Sink块的On enter事件中,计算耗时并分类统计:
    先创建4个Dataset组件(命名如dsType1至dsType4),然后写入以下代码:
    double spendTime = time() - agent.enterTime;
    if (agent instanceof Type1) {
        dsType1.add(spendTime);
    } else if (agent instanceof Type2) {
        dsType2.add(spendTime);
    } else if (agent instanceof Type3) {
        dsType3.add(spendTime);
    } else {
        dsType4.add(spendTime);
    }
    
  • 查看平均耗时直接调用Dataset的getAverage()方法即可,比如用Text组件实时显示:"Type1平均耗时:" + dsType1.getAverage(),或在实验结果中输出。

方法二:用自定义参数(无需修改Agent类)

如果不想改动Agent类代码,可通过自定义参数存储类型和进入时间:

  • 在Source的On exit事件中添加:
    agent.setParameter("enterTime", time());
    agent.setParameter("agentType", agent.getClass().getSimpleName());
    
  • 同样在Sink的On enter事件中处理统计:
    double spendTime = time() - (double)agent.getParameter("enterTime");
    String type = (String)agent.getParameter("agentType");
    switch(type) {
        case "Type1": dsType1.add(spendTime); break;
        case "Type2": dsType2.add(spendTime); break;
        case "Type3": dsType3.add(spendTime); break;
        case "Type4": dsType4.add(spendTime); break;
    }
    

额外提示

  • 若用Histogram组件替代Dataset,还能直观查看各类型耗时的分布情况。
  • 统计结果可在模型运行结束后,于Experiment的Results标签页查看,或通过代码导出至文件。

内容的提问来源于stack exchange,提问作者SkyKing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 20:16:17