# 每周换素材,不必每周重建同一套做法 | EasyNet Source: https://easynet.run/cases/problems/reuse-weekly-procedure [easynet.run · 全部问题场景](https://easynet.run/cases#problem-scenarios) # 每周换素材,不必每周重建同一套做法 销售运营每周把几张表交给助手,合并、去重、统一币种,再写变化说明。规则上个月已经确认,助手这周却换了重复记录的判断方式。每周变化的是素材,不应该连同报表口径也一起重新讨论。 固定脚本能完成单人单机任务,就继续用脚本。EasyNet 的用途出现在别的项目和助手也要调用这套方法时:不用每个人复制脚本、安装依赖,再独立修掉同一个错误。定时运行依然可以由原来的调度系统安排。 把清洗、合并和校验写成一个明确函数,输入是批次标识与获准表格引用,输出清洗结果、异常清单和规则版本。通过 EasyRemote 接入后,函数仍在维护者的环境运行;调用方提供当周素材,而不是请模型重新生成处理代码。 素材路径要对执行方真实可读,生成表格也要回到调用方有权访问的位置。适配器校验列名、日期和重复批次,拒绝不符合约定的文件。身份与数据范围一起检查,公共处理方法不意味着客户表格也公开共享。 模型可以解释异常、起草本周变化,但关键数字来自确定性计算。新出现的业务情况进入人工核对,修改规则后作为新版本测试,不悄悄改变历史口径。批次去重、调度和失败恢复仍由业务函数及运行流程负责。 用相同素材重复处理,再让第二个助手调用同一版本,核对数值和异常列表;缺列时应明确停下来。方法稳定后,运营每周花精力判断变化与异常,而不是重新教一个助手怎样合并三张表。 01 本周表格 批次和获准文件引用 02 复用规则 v3 维护者环境做确定性处理 03 数字与异常分开 模型解释,人工确认新情况 维护一份处理规则,每周只换批次输入。 固定重复记录的判断方式 本地合成表格示例,仅展示同一订单号同值去重、冲突报错;不是已部署的报表函数。 本地示例 · python ``` def total(rows): seen = {} for row in rows: order, cents = row["order_id"], row["cents"] if order in seen and seen[order] != cents: raise ValueError("conflicting duplicate: " + order) seen[order] = cents return {"rule_version": "v3", "total_cents": sum(seen.values())} rows = [{"order_id": "a", "cents": 1200}, {"order_id": "a", "cents": 1200}, {"order_id": "b", "cents": 800}] assert total(rows) == total(list(reversed(rows))) print(total(rows)) ``` 预期结果:输出 rule_version v3 与 total_cents 2000;重复 a 不重复计费,输入顺序不改结果。 接入时的检查项 同一素材重复运行是否得到一致业务结果。 缺列或重复数据是否被指出而非静默忽略。 两位调用者是否使用同一规则版本并能找到各自结果。 源码与接入资料 [函数接入指南](https://easynet.run/docs/connect/function) [MCP 接入指南](https://easynet.run/docs/connect/mcp)