夜雨聆风学习资料网

ARTICLE · 1015304

从填模板到出报告,我把十几年经验编译进了流水线

从填模板到出报告,我把十几年经验编译进了流水线

从填模板到出报告,我把十几年经验编译进了流水线

做项目开发的人都知道,项目技术报告是绕不开的第一关。但做了这么多年,我越来越觉得一件事:我们大多把可研当成"写"出来的,其实它应该是"建模"出来的。这一个字的差别,决定了你是在重复劳动,还是在攒下资产。
下面复盘一个实例。云南富宁一家铝锭企业,拟安装5.9MWp的屋顶分布式光伏。我们把它从"一份文档",一步步改成了能填空、能复用、甚至能自动出报告的"参数引擎"。顺着这条线,也聊几点我对工程化的想法。

一、起点:三个数字如何扭转一份报告

项目本身不复杂:铝锭企业生产车间屋顶,5.9MWp 分布式光伏,自发自用、余电上网。
第一版可研用了skill自主查询计算偏保守的边界:年等效利用小时 1150h,组件单价偏高,咨询设计费也高。算下来全投资 IRR 只有 5.87%,NPV 是负 156 万,结论写的是"不具备财务可行性"。
经仔细研读报告后我根据实际情况给了三个新边界:有效小时数 1330h,组件价格 0.70 元/W,勘察设计咨询费 0.05 元/W。
就改了这三个数,全投资 IRR 直接跳到11.03%,NPV 转正到 +487.9 万元,单位造价从约 2.95 元/W 降到2.43 元/W。结论从"不可行"翻成了"稳健可行"。
图1 · 屋顶光伏阵列与"外置参数"的工程化隐喻
这里头有件挺实在的事:决定一份可研结论的,不是"写得好不好",而是那几个关键边界参数。文字是固定的方法论,真正在动的,是少数几个数字。
还有一层更让我意外。在这个"固定电价结算 + 自发自用"的模型里,我做过一个敏感性测试,把自用电比例从 100% 降到 50%,IRR 变动不大。原因很直接:我们和业主签的是固定结算电价,收益跟"自用还是上网"其实是脱钩的。这给我的提醒是,你以为最该敏感的参数,可能压根不敏感,真正的命门藏在定价机制里。后面聊"主导变量"时还会回来讲。

二、第一性原理:可研不是"写"出来的,是"建模"出来的

这一节的论点是整个改造的支点。
传统的做法是打开上次的 Word,复制粘贴,到处改数。这背后藏着一个错误假设,以为可研是一篇文章,目标是把字写漂亮。但可研的本质更像一台财务计算器:喂进去一组边界参数,吐出来一组指标(IRR、NPV、回收期)和一份论证。文章只是这台计算器的"渲染层"。
想通这点之后,做法就变了。你不再追求字写得好,而是模型算得对;不再维护一份文档,而是维护一台"参数到结论"的机器;文档里每个数字都不再是手填的,而是某个参数的派生值。
把文档降级成模型的输出,是把重复劳动变成可积累资产的第一步。写十份报告是十次成本,建一台引擎,是一次成本、N次复用。

三、工程化第一步:把"可变项"外置,让隐性假设显性化

工程化的第一步,是识别并分离"可变项"与"不变项"。
很多人做项目的麻烦,恰恰是把可变项埋进了固定文档。边界假设散落在正文各处,改一个电价要翻五处,还未必改得全。我们做的第一件事,是把所有边界抽成一组显式的参数:
类别
关键参数
资源
有效小时数 HOURS、系统效率 PR
造价
组件单价、支架/逆变器/BOS 各项、咨询设计费
财务
结算电价、自用电比例、贷款比例/利率、三免三减半、运维费率
政策
零碳园区政策、电价机制、地方补贴
设备
组件规格/衰减、组串式逆变器规格、光伏布置类型、组件倾角
这组参数再喂给一个财务模型脚本,统一算 IRR、NPV、静态/动态回收期、ROE、DSCR 这些核心指标。
价值马上就出来了。改一个数,全报告联动,不用手算,也不会前后矛盾。这一步表面看是效率,往深里说其实是可信,一份前后自洽的报告,才有资格进决策。
再往深里说,参数外置,本质是把隐性假设显性化。一份写得漂亮但参数埋在字里行间的可研,它的真值你读不出来;一份参数清晰的模型,每个结论都可追溯、可质疑、可复核。显性化,是专业性的起点。

四、工程化第二步:把"写作"脚本化,做成自动流水线

数据既然已经参数化,输出也该自动化。
我们用 Python 生成一份自包含的 HTML 报告。里面有 5 张内联 SVG 图表,投资构成环形图、发电量衰减曲线、累计现金流图、多方案 IRR 对比柱状图、敏感性龙卷风图,零 CDN 依赖,双击就能开。投资估算表会自动多出一列"单瓦价格(瓦/元)",组件0.70、咨询设计0.05等等,逐项自洽。全文数值统一取自模型输出,就不会再出现"封面写 11%、正文写 7%"那种尴尬。
图2 · 把"可变参数"从"固定方法论"中分离出来
到这一步,一份报告已经从"写出来的"变成了"算出来的、渲染出来的"。
这里有个值得记下的小原则:派生参数要由系统算,别让人填。"单瓦价格"这种二级指标,一旦让人手填就容易出错,让它等于金额除以装机,它就永远自洽。凡是能从一级参数推出来的量,都交给机器,这是防止报告前后打架的关键。

五、工程化第三步:沉淀成"可填空的参数模板"

脚本解决了一次生成,但换个新项目还得改代码。要真正复用,得把参数再往前推一步,做成人能直接填的模板。
我们把全部关键编写参数收成6大模块,做成Word填空模板:项目边界、资源技术、设备材料(组件规格、衰减首年 1%、次年起 0.4%;组串式逆变器规格;布置类型分彩钢瓦平铺、混凝土屋面阵列式倾角、光伏大棚;组件倾角)、财务边界、政策依据、产出目标。
模板里浅黄单元格就是待填项,其余是默认值(锚定富宁实测)。文末还附了一段机器可读参数块,键等于值的格式,agent 能直接解析,不用人工读表。
从此,新项目的第一步,从打开旧报告改数,变成打开模板填表。人填的是人话,机读的是机话,同一份模板,两种用法。

六、工程化第四步:让 skill 当"编译器"

最后一步,是把前面这些积累串成一条完整的链。
我们改造了企业可研编写指引技能,加进一个"参数模板驱动工作流":先读机器可读参数块,交叉核对 6 张参数表,映射到 2023 版大纲的 10 章,再套用默认财务模型,输出一份带 5 张图表的可研报告。
图3 · 从"填空模板"到"自动出报告"的工程化闭环
整条链路就变成:填模板,交给 skill,出报告。
我愿意给它一个更准确的比喻。skill 不是写稿工具,而是编译器。你填入的是意图参数,它按照固化的大纲和方法论,编译出一份结构严谨的报告。专家十几年的经验,被编码成一条可以重复执行的流水线。这大概就是 AI 在工程专业的价值,不是替你写文字,而是替你执行那些已经被验证过的判断流程。

七、参数化背后的五条工程规律

走到这一步,我想把视野从"怎么做"拉到"为什么有效",聊几条更底层的规律。

1. 边界条件的力量:找到主导变量

那个项目从死到活,只动了三个数。这背后有个常被低估的事实:复杂系统的结论,往往由极少数主导变量决定。敏感性分析的价值,不是把十个参数都拨弄一遍,而是定位那个"一动就翻盘"的命门。对光伏来说,是小时数、组件价、电价;换别的系统,是另一组。工程化做到高处,是能一眼看出哪个旋钮最重要。

2. 杠杆效应:一次建模,N 次复用

建这台引擎,假设花 8 小时;之后每个项目,填表 15 分钟出报告。做 1 个,净亏;做20个,单次成本摊到0.4小时。这就是工程化的复利,前期投入被项目数量摊薄。值得工程化的,永远是会重复发生的事。

3. 模板会"腐化":参数漂移与治理

这是最容易踩的坑。今天 0.70 元/W 是真实报价,半年后可能跌破 0.6;今天IRR8%的准入线,明年政策一变就失效。模板不是写完就一劳永逸的资产,而是需要版本管理、回归测试、边界校验的活物。我给模板加了产出目标模块,目标IRR、单位造价、回收期,这相当于一道内置的合理性闸门,算出来不达标,它立刻报警。好的模板,得能在自己出错时提醒你。

4. 参数的尽头是判断力:已知未知 vs 未知未知

得诚实地划清边界。参数化擅长管理已知未知,也就是你知道有哪些变量,只是值还没定。但面对未知未知,比如项目从分布式光伏跳到集中式、从光伏跨到储能、从国内跨到海外电价机制,填空就救不了你,模板需要被重构,而不是被填写。还有个更隐蔽的风险,叫过度参数化:旋钮太多,填表的人反而懵了,决策被埋在噪声里。参数化是手段,不是目的,该用判断力的地方,永远留给判断力。

5. 知识的复利:每次填空都是一次数据沉淀

如果每份填好的模板都留着,时间久了,你会攒出一座企业级参数库,历年组件价、各省利用小时、各类电价机制、各政策边界。单个项目是成本,参数库是资产。工程化的最高形态,不是做出一份报告,而是让组织持续变聪明。你今天填的每一个数,都在给明天的判断加权。

八、这套打法能复制到别处

这套打法不专属于可研。任何结构既定、内容随参数变化的工程文档,都能走同一条路:
文档类型
不变项(方法论)
可变项(参数)
可研报告
大纲、财务模型、图表范式
资源/造价/财务/政策边界
投标响应
评分项、资质清单、废标红线
项目概况、业绩、报价策略
技术方案
章节模板、计算口径
规模、工艺、设备选型
投后尽调
尽调清单、风险框架
标的财务、行业、法律边界
一句话概括:先抽象出骨架(不变的部分),再把血肉(参数)外置。骨架沉淀成模板和 skill,血肉留给每个具体项目。
图4 · 一个参数引擎分叉出多类工程文档,并由"治理层"持续迭代

结语:工程化的本质,与你能做的三步

识别什么不变、什么在变,把变的部分参数化,把不变的部分标准化,让机器替你执行那些已经被验证的流程。
它不是把事情做复杂,相反,是把重复的事做得不再需要重复。
如果你想动手,今天就能做三步:
挑一个每次都重做的文档,列出它的章节骨架;
圈出所有会变的边界参数,做成一张表;
把这张表变成模板,下次项目直接填,而不是从零写。
你手上,有哪些"每次都重做"的工作,值得被工程化?欢迎在评论区聊聊。
图5 · 可研成品首页效果——从"填模板"到"出报告"的终局交付物

相关学习资料