LoadRunner思考时间设置技巧:压测结果真实性的关键旋钮
1. 思考时间到底是什么做性能测试的人十有八九都绕不过LoadRunner以下简称LR这道坎。而LR里有个概念叫思考时间Think Time很多人对它要么一笔带过要么直接清零处理。我见过不少压测报告脚本里把思考时间全部设成0跑出来的TPS吓死人结果上线一压真实业务直接崩——因为真实的用户根本不可能像机器人一样每秒点三次按钮。思考时间的本质是模拟真实用户在两次操作之间的“停顿”。比如你打开一个电商首页不会立刻点“加入购物车”你会先滚动页面、看看评论、犹豫两秒这个“犹豫”的间隙就是思考时间。在LR脚本里它体现在lr_think_time(int time)这个函数上单位是秒也可以支持小数。从负载模型的角度看思考时间直接决定了“单位时间内每个虚拟用户能发起多少请求”进而决定整个压测产生的实际压力大小。如果思考时间设得太短请求密度远超真实用户行为系统会被高估的压力“假死”如果设得太长压测过程又可能太平淡根本压不出瓶颈。这篇文章我会围绕思考时间的设置技巧展开——从脚本录制阶段的处理方式到运行时设置里的细节选项再到不同业务场景下的取值策略以及我自己踩过的那些坑。不管你是刚接触LR的新手还是被性能测试折磨过几轮的老手这几个知识点都能帮你少走不少弯路。提示性能测试的最终目标不是让TPS看起来多漂亮而是尽可能还原真实用户访问规律找出系统在预期负载下的真实表现。思考时间就是还原真实性的关键旋钮之一。2. 为什么思考时间不能随便设成0我知道很多团队在做压测的时候习惯性把思考时间关掉理由是“我要测系统的最大吞吐量”。这个逻辑放在接口测试、单接口容量摸底场景下勉强成立但如果放在端到端的业务链路压测里就会得出非常误导人的结论。2.1 丢弃思考时间等于制造“无限压力”假设一个完整的下单流程包含5个请求每个请求服务端处理时间加起来是200毫秒。真实用户从打开页面到提交订单中间可能要花20秒其中绝大部分时间是阅读、输入、思考。如果压测时把这20秒全去掉每个虚拟用户每秒能跑完5个请求和真实用户每分钟只能跑完1个流程相比虚拟用户对系统的请求压力放大了60倍以上。我之前做过一个模拟项目X的压测业务方要求“峰值5000人在线”结果测试同事把思考时间设成0用200个Vuser就压出了3万TPS。当时看起来系统很稳但后来做容量预估的时候发现完全对不上真实流量。原因就是思考时间失真导致压测结果根本无法用于容量规划。2.2 服务端压力性质会发生变化丢掉思考时间还会改变请求的到达模型。真实情况下用户的操作是随机分布的——有人正在看商品详情有人正在提交订单有人正在填写收货地址。思考时间带来的“随机间隔”会让请求到达服务端呈现泊松分布特征这是比较接近真实场景的。而思考时间设为0之后所有虚拟用户都在全速奔跑请求变成了严格的周期性、步调一致的洪峰会对连接池、线程池、数据库连接等资源造成完全不一样的冲击。用这种模式测出来的瓶颈很可能只是“同步风暴”导致的假象而不是真实业务高峰会遇到的问题。2.3 什么时候可以设成0这么说吧我并不是完全否定思考时间清零的做法。在两类场景下把思考时间关闭是合理的单接口的容量摸底测试目标是测出某个接口的极限吞吐此时不需要模拟用户行为用最大速率灌请求即可。批量任务类的压测比如跑批、消息消费这类场景本身没有用户操作间隔思考时间没有意义。除了这两种情况凡是涉及页面操作、用户交互的端到端链路压测建议保留并合理设置思考时间。现实中很多团队压测结果“看起来好得离谱”上线后被真实流量一冲就现出原形多半就是栽在这个细节上。3. 思考时间的核心设置选项在哪里LR里跟思考时间相关的设置分布在两个地方脚本代码中的lr_think_time函数以及Controller里Run-Time Settings运行时设置的Think Time选项卡。两者共同决定了思考时间的最终行为。3.1 录制阶段自动生成的思考时间使用LR的VuGen录制脚本时如果操作过程中有停顿LR会自动在脚本里插入lr_think_time语句数值就是你在页面上停留的实际时长。比如你在页面上看了6.5秒才点击下一个链接录出来的脚本就会是lr_think_time(6); web_url(next_page, URLhttp://xxx.com/product/1024, Resource0, Refererhttp://xxx.com/home, Snapshott2.inf, ModeHTTP, LAST);注意这里的6是四舍五入的结果。如果实际停顿是6.5秒LR可能记录为6或7取决于当时的光标状态和录制设置。这个自动生成的数值不一定合理——你录制时可能因为思考、切换窗口、接电话产生了异常长的停顿这些都会混进脚本里。所以录制结束后我习惯把脚本里的lr_think_time挨个检查一遍。如果一个请求之前的思考时间是12秒而这个页面业务上根本不需要用户输入或阅读这么长时间就要考虑手动修正。极端异常值宁可删掉也不要留着污染整个压测模型。3.2 运行时设置里的四个关键选项在Controller中打开Run-Time Settings切换到Think Time选项卡会看到四个单选项它们控制LR对脚本中思考时间语句的具体执行方式选项含义适用场景Ignore think time完全忽略思考时间脚本中的lr_think_time不执行最大吞吐量测试、单接口容量摸底Replay think time as recorded按照录制时的固定值回放需要严格还原录制时停顿的场景Multiply recorded think time by按比例系数缩放思考时间调整压力水平时最常用的选项Use random percentage of recorded think time在设定区间内随机取思考时间模拟真实用户操作规律时推荐使用前两个选项很好理解我不多啰嗦。重点是后两个。Multiply recorded think time by适合快速调整整体压力。比如脚本中录制的思考时间总和是50秒如果系数设为0.5则实际执行25秒虚拟用户的操作频率翻倍。这种方式简单粗暴但问题在于所有操作都是同步缩放——该快的地方没有快该慢的地方也没有慢整体上仍然是一个“均匀缩放”的机器人行为。Use random percentage of recorded think time才是更贴近真实的方案。举个例子设置最小值50%、最大值150%那么LR会在每次执行到lr_think_time(6)时从3到9秒之间随机取一个值。这样做的好处是每个虚拟用户每次操作前的停顿都不一样请求到达的分布更接近真实用户不会出现所有Vuser整齐划一地同步发送请求的情况。3.3 我推荐的Think Time配置方式在绝大多数Web业务压测中我用的组合是录制脚本后保留原始的lr_think_time语句。打开Runtime Settings的Think Time选项卡勾选Use random percentage of recorded think time。百分比区间依据业务特征设定浏览类场景建议 50%~150%表单录入类场景建议 70%~130%。为什么浏览类场景要放宽区间因为浏览行为是高度随机的——有人扫一眼就跳走有人盯着一张图看半天50%~150%的宽幅能覆盖这种离散性。而表单录入场景用户需要聚焦地填写信息思考时间的规律性更强区间收窄一点更贴近实际。注意这个随机百分比设置的是“单次思考时间的随机取值的上下界”不是全局总思考时间的缩放。LR每次执行lr_think_time时都会独立随机一次而不是先算好总时长再均摊这一点跟很多人的直觉不一样。4. 不同业务场景下思考时间的取值策略思考时间的取值没有“万能公式”但有一套基于业务特征的判断逻辑。我做了几种常见业务场景下的取值经验不一定完全适配所有项目但可以给各位提供一个参考基准。4.1 高并发信息浏览类场景典型代表是门户首页、资讯列表页、搜索结果页。这类页面的用户交互特征是停留时间短、点击间隔快、操作路径浅。用户可能在3~8秒内完成一次浏览跳转。我在压测这类系统时通常把思考时间均值控制在2~5秒之间结合随机百分比50%~150%。如果系统目标峰值是10000并发用户每个用户的平均思考时间是3秒请求平均处理耗时200毫秒那么单用户每秒产生的请求数约为 1 ÷30.2≈ 0.31 个整个系统的请求压力大约在3100 QPS左右。有个细节要注意如果首页有大量的静态资源图片、CSS、JS而这些资源走的是独立域名或CDN那么脚本中需要明确处理这些资源的请求方式——是模拟浏览器并发加载还是直接忽略。这个选择会影响思考时间的“含金量”因为如果静默请求太多思考时间对整体请求率的影响会被稀释。4.2 慢节奏业务办理类场景典型代表是保险投保、银行贷款申请、企业资质填报。这类业务的特点是表单字段多用户在页面上的停留时间长且每个步骤之间的思考时间差异极大——填身份证号可能只要2秒但阅读一份协议可能需要45秒。对这类场景我用的是分步设置策略。脚本中不同页面步骤的lr_think_time值按业务逻辑单独赋值而不是依赖录制时的一次性记录。比如// 填写基本信息页思考时间短 lr_think_time(3); // 阅读协议页面思考时间长 lr_think_time(30); // 确认提交页思考时间适中 lr_think_time(8);这样处理之后随机百分比设置才有意义。如果所有步骤都统一用25秒随机区间无论怎么调都失真。真实用户的“读协议”行为和“填信息”行为是完全不同的节奏脚本应该把这个差异表达出来。4.3 移动端H5和API混合场景移动端压测是另一套逻辑。用户手指滑动屏幕的节奏比PC端鼠标点击更快但网络环境和服务端处理环节又引入了额外的延迟。在移动端链路压测中我不太建议用脚本里的思考时间模拟用户停顿因为移动端真正的延迟往往来自网络握手、弱网环境、首屏渲染而不是用户“思考”本身。更合理的做法是把思考时间调小1~2秒把LR的Pacing设置为按固定时间间隔发起迭代例如每5秒一个完整流程。这样整体压力模型更接近移动端的真实情况——大量短连接、快速请求、短停顿。4.4 构造压力模型的估算方法不管哪种场景设置思考时间前都需要做一个简单的估算。假设目标系统并发用户数为U单用户完成一次完整业务流程需要的时间是T秒其中思考时间合计S秒服务端处理时间合计P秒则整个系统的业务吞吐量大致为吞吐率 U ÷ (S P)举例目标并发1000思考时间合计15秒服务端处理时间合计2秒那么理论吞吐率 1000 ÷ 17 ≈ 58.8 次/秒。如果你想验证系统在并发1000下的真实承受能力就应该把思考时间控制在15秒左右。如果压测时把思考时间缩到1秒那么吞吐率变成1000 ÷ 3 ≈ 333次/秒这就不是并发1000的验证而是并发5600的压力了——系统直接被打爆并不代表它在真实负载下也会被打爆。5. 思考时间与Pacing的关系别搞混了在LR的运行时设置里Pacing和Think Time各管一段。很多新手容易把两者混为一谈实际上它们解决的是完全不同的问题。5.1 Pacing控制的是“迭代节奏”Pacing也叫步调/迭代间隔决定了虚拟用户完成一轮脚本迭代后等待多久再开始下一轮。它控制的是“用户多久来一次”而思考时间控制的是“用户在一轮内部操作之间停顿多久”。举个例子帮助理解一个用户每天逛一次电商平台从登录到浏览到下单全程10分钟。这里的“每天逛一次”对应Pacing而“看商品犹豫30秒再点购买”对应思考时间。两者互不替代。在Controller的Run-Time Settings的Pacing选项卡中你可以设置“固定间隔”“按指定时间随机间隔”“忽略上一迭代耗时”等选项。如果设置不当很容易出现Pacing时间太短Vuser刚完成一轮迭代立即进入下一轮思考时间形同虚设。Pacing时间太长思考时间即使设为0整体压力依然偏低Vuser大量时间在“等待”。5.2 两组参数如何配合在端到端业务压测中我通常这样配合先设置思考时间的随机百分比模拟用户在一轮业务内的操作停顿。再设置Pacing的迭代间隔模拟用户在一次完整业务之后到下一次业务之间的间隔比如真实用户一笔订单完成后可能隔几分钟甚至半小时再下第二笔。如果迭代间隔很大比如超过5分钟建议用“忽略思考时间”模式配合Pacing避免思考时间和Pacing双重叠加导致请求间隔过长、压力不足。这里有个实践技巧在分析性能测试报告时如果发现Vuser的CPU使用率很低、大部分时间处于“Thinking”或“Waiting”状态且TPS远低于预期优先检查Pacing是否设置得过大而不是只盯思考时间。很多压测跑不出压力的“假平缓”现象问题恰恰出在Pacing而非Think Time上。5.3 一个偏差案例模拟项目X里脚本的思考时间合计30秒Pacing固定为60秒。理论上单Vuser每90秒完成一轮业务。但因为脚本运行中还有服务端响应时间、渲染时间等额外开销实际一轮跑下来需要95秒左右。Pacing按60秒设置意味着上一轮结束后等60秒再开始下一轮实际每轮间隔是9560155秒。原计划100个Vuser同时跑预期每秒约1.1次业务实际只有0.65次——压力足足少了一半。排查后发现是Pacing参数没有和思考时间联动考虑。后来把Pacing改为“不固定、依赖上一轮迭代耗时”的模式或者干脆在思考时间已经足够长的业务中把Pacing关掉让Vuser持续循环问题就解决了。6. 脚本里思考时间的实现细节与坑写脚本的时候lr_think_time看似只是一个简单的数字实际上有几个细节会直接影响压测结果而且这些细节在官方文档里写得很隐晦不踩几次坑很难真正注意。6.1 lr_think_time的放置位置思考时间在脚本中的插入位置是有讲究的。它必须放在“上一次操作完成之后、下一次操作开始之前”。从语义上讲它表示用户在完成一个动作后、发起下一个动作前的等待。错误的位置会导致压力模型错乱。比如你在web_url请求之前放了一段思考时间意味着用户先“思考”再请求页面但真实行为是用户看到页面后才开始思考思考结束后点击下一个链接。所以正确的位置应该是在上一个请求完成之后。以HTTP脚本为例一个正确结构的片段是web_url(product_page, URLhttp://xxx.com/product/1024, Resource0, RecContentTypetext/html, Refererhttp://xxx.com/list, LAST); // 用户看完商品页思考5秒再点击加入购物车 lr_think_time(5); web_url(cart_add, URLhttp://xxx.com/cart/add?skuId1024, Resource0, RecContentTypetext/html, Refererhttp://xxx.com/product/1024, LAST);6.2 小数值与精度问题lr_think_time理论上支持小数值比如lr_think_time(0.5)。但实测中如果值太小小于0.2秒LR的执行精度并不高可能出现实际等待时间明显大于设定值的情况。原因在于LR内部的计时器精度以及系统调度开销。所以我一般建议如果思考时间需要小于1秒直接用0.5秒作为最小值如果业务上真的需要几乎无停顿的操作不如直接把思考时间忽略而不是写一个不精确的小数。6.3 边界值0的含义有些人在脚本里写lr_think_time(0)以为这代表“不思考”。但实际上在Runtime Settings设置了随机百分比的情况下lr_think_time(0)乘以任何百分比还是0这不难理解。但在设置了“乘以系数”模式下0乘以任何系数也还是0。所以如果你需要“某个步骤完全不思考”这个写法没有错但如果你想“这个步骤保持默认停顿其他步骤统一放大”那你就需要把所有停顿统一修正为合理数值而不是靠后置系数补救。6.4 事务内的思考时间问题这是最容易被忽视的坑。在LR中事务Transaction是用来度量业务响应时间的——从事务开始到事务结束的耗时。如果思考时间被放在事务内部那么事务响应时间就会包含思考时间直接污染响应时间的统计结果。举例来说lr_start_transaction(checkout_order); lr_think_time(8); // 用户在结算页犹豫了8秒 web_submit_data(submit_order, ...); lr_end_transaction(checkout_order, LR_AUTO);这段代码的问题在于事务checkout_order的响应时间包含了8秒的思考时间压测报告里的平均响应时间被拉高了。但业务方要的“下单接口响应时间”是不包含用户思考时间的。验证方法也很简单同一份脚本开启和关闭思考时间后跑同一场景事务响应时间差异巨大而且差异值基本等于思考时间的总和。如果有这种情况就要把lr_think_time从事务中移出去放到事务开始之前或者事务结束之后确保事务度量的纯粹性。注意想测“用户感受到的端到端时间”可以用一个总事务包住整个业务流程此时思考时间属于业务体验的一部分可以保留想测“某个接口的服务端性能”事务内绝不能混入思考时间。两种场景的度量目标不同处理方式也不同。7. 从录制到上线的完整设置流程说了这么多原理和坑我把一个比较完整的实操流程整理出来。这套流程在我做过的多个模拟项目中反复验证过普适性较强可以作为团队压测的基线流程。7.1 第一步录制脚本并清洗思考时间用VuGen录制核心业务链路脚本时按照真实业务操作流程走一遍不要刻意加快或放慢操作速度。录制完成后打开脚本检查所有lr_think_time语句删除明显异常的停顿比如接电话产生的100秒空白。修正业务逻辑上不合理的停顿如在简单按钮点击前出现30秒停顿。把事务范围内的lr_think_time移出事务边界。如果某个步骤业务上明确需要固定等待如等待外部回调、等待审批可以用lr_think_time也可以根据场景选择lr_think_time与轮询循环配合实现。7.2 第二步按业务目标设定随机区间在Controller场景中打开Run-Time SettingsThink Time选项卡选择Use random percentage of recorded think time。区间设置参考资讯/内容浏览50%~150%电商交易60%~140%金融/政务填报70%~130%小游戏/轻应用30%~100%7.3 第三步用负载模型反向校验跑一次短时基线测试5分钟收集实际达到的业务吞吐率然后按照第4节提到的估算公式反向校验容忍度。如果实际吞吐率远高于负载模型预估说明思考时间可能没有生效如果远低于预估则要看Pacing、Vuser分配等其他设置。7.4 第四步测试报告中的数据解读压测报告里关注三个指标来判断思考时间设置是否合理Vuser状态统计中“Thinking”状态占比正常应该在40%~70%之间视业务场景。占比过低说明思考时间形同虚设过高说明压力上不去。TPS是否与负载模型预估一致偏差超过30%就要回头检查参数。事务响应时间是否稳定思考时间设置合理时事务响应时间波动应趋于平稳如果波动巨大可能是思考时间随机范围过宽导致请求到达波动过大。8. 常见问题速查思考时间排查手册整理几个我在实践中遇到频率最高的问题每个都给排查思路和解决建议。现象可能原因排查与解决压测TPS远高于预期思考时间被Ignore或设成0检查Run-Time Settings确认Think Time没有被忽略压测TPS远低于预期Vuser大量处于Thinking思考时间太长或随机区间过大查看Vuser状态统计按业务目标压缩思考时间下限事务响应时间异常大事务内包含了lr_think_time检查脚本把思考时间移到事务边界之外所有Vuser的请求呈现周期性同步洪峰思考时间被固定值控制没有使用随机百分比切换为随机百分比模式放宽随机区间压测过程中服务器负载波动剧烈思考时间随机区间过大请求到达模型过于离散收缩随机百分比区间观察负载稳定性思考时间修改后TPS没变化场景配置中开启了Pacing迭代间隔覆盖了思考时间影响检查Pacing设置确认是否存在“等待时间过长”的问题这六个问题基本覆盖了思考时间相关的绝大多数故障。遇到TPS与预期不符时先不要急着调并发数或者改服务器配置多数情况下问题出在参数配合上。9. 部分场景下的自定义思考时间策略前面讲的都是LR内置的思考时间功能。某些特殊业务场景下内置功能不够用需要写一点自定义逻辑。9.1 按用户行为分布加权同一个业务流程中有些用户是重度用户操作很快有些是轻度用户操作很慢。内置的随机百分比只能模拟均匀分布的随机不能表达“速度快慢用户各占一定比例”的混合模型。这时候可以给脚本增加一个加权逻辑int think_time_value; int user_type; // 模拟三类用户快30%、中50%、慢20% user_type rand() % 100; if (user_type 30) { think_time_value 2; // 快速用户思考时间短 } else if (user_type 80) { think_time_value 5; // 中等用户 } else { think_time_value 12; // 慢速用户 } lr_think_time(think_time_value);这种方式能更精细地模拟不同用户群体对系统的压力差异在混合业务压测中非常实用。9.2 依赖响应时间的动态思考时间有的业务场景中思考时间应该随系统响应速度变化。比如当你打开一个页面时如果页面加载很快你可能会快速操作如果加载很慢你可能会等更久才点击下一步。这种场景下固定思考时间或随机思考时间都无法表达“用户等待系统响应后再操作”的依赖关系。可以用LR的关联和计时函数组合实现double response_time; lr_start_timer(); web_url(slow_page, URLhttp://xxx.com/heavy_page, Resource0, LAST); response_time lr_end_timer(); // 页面响应越慢用户思考时间越长模拟用户阅读准备 lr_think_time((int)(response_time * 0.5 2));这种写法模拟了用户面对慢页面时的自然等待特别适合验证“系统越慢、用户越慢、系统更慢”的恶性循环场景。9.3 思考时间的日志调试排查时如果怀疑思考时间没有生效可以在脚本中加入简单的输出lr_output_message(Current think time: %d seconds, think_time);跑一轮后查看VuGen的Output窗口或Controller的日志确认每个迭代实际使用的思考时间数值是否符合预期。我遇到过一种情况脚本里写了lr_think_time但实际完全没执行查了半天发现是条件分支逻辑的问题——某段代码在某个业务分支下根本不会走到。加日志输出是定位这类问题最快的方式。10. 一组实测数据思考时间如何改变压测结论拿模拟项目X的一组对比数据来做个直观说明。被测系统是一个标准的电商交易链路脚本包含5个请求登录、查看列表、查看详情、加购物车、提交订单。三个压测场景的差异只在思考时间设置上。场景思考时间设置VuserTPS平均事务响应时间系统CPU场景A全部忽略10013500.45s92%场景B固定值5秒1002100.42s55%场景C随机百分比50%~150%1002680.58s61%单看TPS场景A最好。但如果目标是用100个Vuser模拟真实用户负载场景A其实制造了远超预期的压力CPU已经逼近极限并不能说明系统可以支持更多用户。场景C的TPS之所以比场景B高是因为随机百分比让部分步骤的思考时间低于5秒整体节奏加快了同时请求到达更加分散没有出现场景B那种固定节拍器式的同步请求。如果按照第4节的估算公式反推假设真实业务单用户一轮操作总耗时15秒其中思考时间约13秒那么100个Vuser的真实负载应该在6~7 TPS量级而不是1350。真实的业务容量评估应该以这个量级为基准进行阶梯加压而不是看全速跑出来的极限。11. 最后再分享几个实战细节思考时间设置这件事表面上一分钟就能配置完实际上牵扯到负载模型、业务特征、脚本结构多个层面。最后分享几个我实际项目里摸出来的细节经验不一定适合所有场景但至少能给各位一些参考。第一个细节随机百分比的上下界建议不要设成极端值比如10%~500%。极端区间会让系统压力波动非常大压测结果中TPS曲线剧烈抖动瓶颈分析无从下手。模拟真实不是模拟混乱随机应该限定在合理范围内。第二个细节如果测试团队没有明确的业务数据做支撑宁可先用固定值中等区间70%~130%起步也不要一上来就全忽略。后续通过对比线上真实日志中的用户操作间隔再逐步修正区间比拍脑袋设置要靠谱得多。第三个细节关注“思考时间占比”这个指标。以一个完整事务为单位如果思考时间占总耗时的比例低于50%说明用户的交互节奏非常快这个业务的压力模型更接近接口压力测试如果占比超过80%说明用户节奏很慢压测时要特别注意Vuser数量和服务端线程池的配置是否匹配——因为大量Vuser处于等待状态不代表服务器压力低恰恰可能意味着连接被长时间占用。我自己在压测项目中总结了一个小习惯每次压测结束后截一张Vuser状态的分布图连同TPS、响应时间一起归档。等到下次压测调参时先翻一下上次的Vuser状态分布——如果这次和上次的业务场景类似但Thinking占比差异超过20%就要先检查脚本参数是不是被改过了再谈其他优化。思考时间的价值不在于“设置得对不对”而在于“设置的依据是不是来自真实业务”。只要方向对了数值细节都可以通过迭代调优逼近真实。希望这篇文章能帮各位在压测路上少踩几个坑。

相关新闻

逻辑智力题的本质是结构化拆解能力训练

逻辑智力题的本质是结构化拆解能力训练

1. 这类题不是考“聪明”,而是考你拆解问题的肌肉记忆“面试准备:逻辑智力题”——这八个字背后藏着太多被误解的真相。很多人一看到“逻辑智力题”,第一反应是去刷《门萨智商测试》或者翻《微软面试100题》,以为答对越多&#xf…

2026/10/16 13:34:06 阅读更多 →
DoppelGANger:面向物理约束的时间序列生成模型解析

DoppelGANger:面向物理约束的时间序列生成模型解析

1. 项目概述:为什么时间序列“造假”成了硬需求? 最近在几个工业数据团队做技术咨询,几乎每次都会被问到同一个问题:“我们只有3个月的设备传感器数据,但模型训练需要至少2年历史记录,怎么办?”…

2026/10/16 13:33:04 阅读更多 →
Fara1.5-4B背后的训练揭秘:FaraGen1.5多智能体合成数据流水线是如何炼成的

Fara1.5-4B背后的训练揭秘:FaraGen1.5多智能体合成数据流水线是如何炼成的

【免费下载链接】Fara1.5-4B 项目地址: https://ai.gitcode.com/hf_mirrors/microsoft/Fara1.5-4B 点击查看 免费下载 Fara1.5-4B 是微软研究院 AI Frontiers 团队开源的多模态计算机操作智能体(Computer Use Agent,简称 CUA)&am…

2026/10/16 13:33:04 阅读更多 →

最新新闻

TPC-DS基准测试:ClickHouse与Doris OLAP性能对比实战

TPC-DS基准测试:ClickHouse与Doris OLAP性能对比实战

做OLAP数据库选型,最怕的就是厂商自己掏出来的那份压测报告——查询速度一个比一个快,资源占用一个比一个省,真到自己业务上一跑,数据量一上去,才发现根本不是那么回事。所以我一直坚持拿统一的标准来测,TP…

2026/10/16 14:16:20 阅读更多 →
涨停选股法:从资金共识到竞价分时的短线交易框架

涨停选股法:从资金共识到竞价分时的短线交易框架

涨停板是A股最刺眼的信号,也是短线资金博弈的终点。每天收盘后翻一遍涨停列表,再结合次日竞价和分时走势去判断延续性,这套“涨停选股法”本质上不是让你去打板,而是利用涨停板作为筛选器,把全市场四五千只股票过滤到只…

2026/10/16 14:16:20 阅读更多 →
Java+OpenCV实战:HSV颜色分离与几何图形识别

Java+OpenCV实战:HSV颜色分离与几何图形识别

简介:这份PDF面向Java开发者与计算机视觉初学者,聚焦如何用Java调用OpenCV视觉库完成几何图像的颜色与形状识别,可解决传统RGB识别率不高、Java实现案例偏少的问题。资源共1个PDF文件,压缩包约894KB,内容为完整技术论文…

2026/10/16 14:16:20 阅读更多 →
智能计算售前题库拆解:从AI服务器选型到有效算力

智能计算售前题库拆解:从AI服务器选型到有效算力

简介:面向华为H19-381智能计算售前认证备考者的题库资料,内容覆盖服务器、存储、安全、网络与计算等核心知识域,包含Taishan服务器、iBMC管理接口、RAID技术、SSD分类、TPM可信平台模块、鲲鹏自研芯片等关键考点,适合备考华为售前…

2026/10/16 14:16:20 阅读更多 →
边缘检测原理与实战:从Sobel到Canny算子详解

边缘检测原理与实战:从Sobel到Canny算子详解

1. 为什么说边缘是图像的"骨架信息"我最早接触边缘检测,是很多年前帮一个师兄处理显微镜图像里的细胞计数问题。当时什么都不懂,以为边缘检测就是把图片变模糊再变白,折腾了三天,结果出来的图连我自己都看不出哪里是细胞…

2026/10/16 14:16:20 阅读更多 →
《信号与系统》郑君里第三版7z课件:验货、解压与高效使用指南

《信号与系统》郑君里第三版7z课件:验货、解压与高效使用指南

简介:《信号与系统》课件(郑君里第三版)是电子信息和通信工程专业的核心课程配套学习资源,适合在校本科生同步复习、考研备考,以及相关从业者重温信号处理基础。整份课件以7z压缩包发布,体积约23.76MB&…

2026/10/16 14:15:19 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →