供应链碳要求应对(供应商侧)Skill
一、简介
基于供应链碳合规规则库与可复用脚本,帮助作为供应商的中小制造企业把下游客户/品牌/整车厂发来的碳要求(问卷、披露、目标承诺、碳足迹报送)拆解为可执行任务,诊断数据缺口,并产出标准化应答材料。一句话:收到客户碳要求 → 识别类型 → 抽关键要素 → 查数据缺口 → 生成应答/测算/承诺 → 提交。
二、适用场景
| 序号 | 场景 | 解决的痛点 |
|---|---|---|
| 1 | 收到客户 CDP 供应链问卷(Climate Change / Scope 3) | 不知从哪填、缺哪些数据、如何保分 |
| 2 | 整车厂/OEM 要求披露范围 1/2/3 排放或提交减碳路线图 | 范围 3(上游)数据难获取、口径不清 |
| 3 | 欧盟客户要求 CBAM 报关(钢铁/铝/水泥/化肥/电力/氢) | 缺嵌入排放数据、不知按哪个周期核算 |
| 4 | 品牌方要求提供产品碳足迹(PCF)报告(ISO 14067 / PAS 2050 / 客户指定 LCA) | 不会建模、功能单位/系统边界不确定 |
| 5 | 客户要求可再生电力/绿证比例(RE100 / Apple Supplier Clean Energy) | 绿电凭证缺失、比例无法达标 |
| 6 | 收到 EcoVadis / Sustainalytics 等 ESG 评级问卷的碳议题 | 评级口径与披露要求不匹配 |
三、输入定义
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
requirement_text |
string | 是 | 客户发来的碳要求原文/截图转写/问卷链接文本(核心输入) |
company_profile |
object | 否 | 供应商画像:{行业, 年能耗(吨标煤), 主要产品, 是否已有GHG盘查, 是否已有PCF, 是否持有绿电绿证} |
data_assets |
object | 否 | 现有数据资产清单:{能源台账, 物料BOM, 排放因子库, 绿电凭证, 上年度盘查报告}(用于缺口诊断) |
target_standard |
string | 否 | 客户指定标准,如 ISO 14067 / PAS 2050 / GHG Protocol / GB/T 32150 |
deadline |
string | 否 | 客户要求的提交截止日(ISO 8601),未给则脚本从原文抽取 |
四、输出定义
{
"requirement_class": ["CDP问卷", "产品碳足迹PCF"],
"key_fields": {
"deadline": "2026-09-30",
"standard": "ISO 14067:2018",
"scope_required": ["范围1", "范围2", "范围3(部分)"],
"functional_unit": "1 kg 产品",
"system_boundary": "摇篮到大门",
"data_year": "2025"
},
"data_gap": {
"missing": ["范围3上游运输数据", "电力排放因子(本地电网)"],
"partial": ["物料BOM质量"],
"ready": ["2025能源台账", "绿电凭证"]
},
"deliverables": [
"CDP供应链问卷应答稿",
"产品碳足迹快速估算表(草稿)",
"减碳承诺函(模板)"
],
"boundary_notes": ["客户未明确功能单位,已按行业惯例预设并需确认"]
}
五、调用流程(核心引擎)
用户提交 requirement_text(+ 可选 company_profile / data_assets)
│
▼
┌─────────────────────────────┐
│ Step 1 要求分类与要素抽取 │ ← 运行 scripts/requirement_classifier.py
│ 输出 requirement_class + │ 输入原文,输出 JSON(类型+截止日+标准+范围+边界)
│ key_fields │
└──────────────┬──────────────┘
▼
┌─────────────────────────────┐
│ Step 2 数据缺口诊断 │ ← 运行 scripts/data_gap_check.py
│ 比对 data_assets 与要求, │ 输出 missing/partial/ready 三类
│ 给出补数优先级 │
└──────────────┬──────────────┘
▼
┌─────────────────────────────┐
│ Step 3 确认话术(如需) │ ← 调用 prompt.md 的「确认话术生成逻辑」
│ 对模糊/冲突要素生成向客户或 │ 输出结构化的澄清问题清单
│ 内部确认的问题清单 │
└──────────────┬──────────────┘
▼
┌─────────────────────────────┐
│ Step 4 产出应答材料 │ ← 读取 references/templates/* 与 references/cases/*
│ 选模板 → 填字段 → 算 PCF → │ 如需 PCF:运行 scripts/pcf_quick_estimate.py
│ 写承诺函 │
└──────────────┬──────────────┘
▼
┌─────────────────────────────┐
│ Step 5 边界处理与提交清单 │ ← 见第七节「边界处理」
│ 标注假设/风险,给出提交前 │
│ 自检清单 │
└──────────────┬──────────────┘
判断规则:
- 若 requirement_class 命中 产品碳足迹PCF 且 data_assets 含 BOM+能源台账 → 直接跑 pcf_quick_estimate.py 出草稿。
- 若 data_gap.missing 非空且影响合规 → 先走 Step 3 确认话术,再产出(避免编造数据)。
- 若原文完全无法识别类型 → 进入边界处理「无法识别」,引导用户提供问卷原文/链接。
六、文件说明
| 文件路径 | 作用 |
|---|---|
SKILL.md |
本文件。Skill 身份证、输入输出、调用流程与边界处理总览 |
prompt.md |
可复用提示词模板:需求提取逻辑 + 确认话术生成逻辑(五要素结构) |
scripts/requirement_classifier.py |
要求分类与关键字段抽取(规则+关键词评分,输出 JSON) |
scripts/data_gap_check.py |
数据缺口诊断(比对资产清单与要求,输出缺失/部分/就绪) |
scripts/pcf_quick_estimate.py |
产品碳足迹快速估算(BOM+能源+排放因子 → kgCO₂e/功能单位) |
references/carbon_requirement_types.md |
9 类碳要求类型详解(触发词/标准/典型字段/应答要点) |
references/standards_baseline.md |
常用标准与排放因子基线速查(GHG Protocol/ISO 14064/14067/GB/T/电网因子) |
references/templates/cdp_response_template.md |
CDP 供应链问卷应答模板(字段定义+填写示例) |
references/templates/pcf_submission_template.md |
产品碳足迹提交模板(ISO 14067 结构) |
references/templates/data_collection_sheet.md |
供应商碳数据收集表(内部填数用) |
references/templates/commitment_letter_template.md |
减碳/绿电承诺函模板 |
references/cases/case_automotive_tier2_cdp.md |
案例1:汽车 Tier-2 供应商应对 OEM 范围3披露 |
references/cases/case_eu_export_cbam.md |
案例2:铝型材出口欧盟应对 CBAM |
references/cases/case_brand_pcf_iso14067.md |
案例3:消费品供应商应对品牌方 PCF(ISO 14067) |
七、边界处理(务必遵循,禁止编造数据)
- 无法识别要求类型:原文过短/仅为截图无文本 → 提示用户上传问卷原文或粘贴文字,不臆测类型。
- 数据缺失(缺范围3/缺BOM):
data_gap.missing非空时,禁止编造数值。产出中缺失项标注「待补充」,并用data_collection_sheet.md列补数清单;能估算的用区间/行业平均因子并显著标注「估算值,待实测校验」。 - 标准/口径冲突:客户指定标准与国标不一致(如客户要 PAS 2050、国内用 GB/T 24067)→ 以客户标准为准,备注差异点;功能单位/系统边界未明确 → 用行业惯例预设并必须生成确认话术向客户核实(见 prompt.md)。
- 逾期风险:
deadline早于当前日期或剩余 < 7 天 → 在输出顶部红色警示,优先给「最小合规包」(先交已就绪数据+缺口说明),再补完整版。 - 无法达标(如绿电比例要求100%但仅20%):产出中诚实陈述现状,提供「差距+分阶段路线图」,不夸大承诺;承诺函中写「目标值+达成路径+时间」,避免写死不可实现的绝对承诺。
- 多要求并发:同一客户多条要求(问卷+PCF+绿电)→ 按
deadline排序,合并重复数据需求,一次性产出多份材料并附提交清单。 - 涉密与合规:供应商能耗/排放数据为商业敏感信息,模板中涉及绝对量时提示用户确认对外披露范围;不主动建议隐瞒,但可建议「按客户要求的最小披露集」回应。
- 脚本失败/无 Python 环境:若
scripts/无法运行,回退为纯模板填充 + 手动计算指引,并在输出注明「脚本未执行,结果为模板估算」。
八、技术实现方案(细化)
1. 要求分类器 requirement_classifier.py
- 输入:-t/--text 原始文本(或 --file 文本文件);可选 --today 用于逾期判断。
- 方法:对 9 类要求各维护一组「触发词权重表」,按词频加权求和取 Top-1~2 类;正则抽取日期(\d{4}[-/年.]\d{1,2}[-/月.]\d{1,2})、标准号(ISO\s?14067|PAS\s?2050|GB/T\s?32150|GHG\s?Protocol 等)、范围(范围[123]|Scope\s?[123])、功能单位(1\s?(kg|件|吨|套))。
- 输出:标准 JSON(含 requirement_class、key_fields、overdue_flag)。
- 依赖:仅标准库(re/json/argparse/datetime),无需 pip 安装。
2. 数据缺口诊断 data_gap_check.py
- 输入:--requirement 分类结果 JSON;--assets 资产清单 JSON(或交互式输入)。
- 方法:每类要求映射「必需数据项白名单」,与 assets 求差集 → missing;名称匹配但不完整 → partial;其余 → ready。按合规影响排序给补数优先级。
- 输出:JSON + 人类可读清单。
3. 碳足迹快速估算 pcf_quick_estimate.py
- 输入:--bom BOM 清单 CSV(物料,质量kg,对应排放因子kgCO₂e/kg 可选);--energy 能源 CSV(能源类型,用量,排放因子);--functional-unit;--boundary(摇篮到大门/大门到大门)。
- 方法:排放 = Σ(物料质量×因子) + Σ(能源用量×因子) + 运输(可选)。因子缺失时回退 references/standards_baseline.md 中的默认电网/材料因子,并标记「默认值」。
- 输出:总碳足迹 kgCO₂e/功能单位 + 分项占比 + 数据质量标注。
- 依赖:仅标准库(csv/json/argparse)。
4. 提示词模板 prompt.md:把「需求提取」与「确认话术生成」固化为五要素 Prompt,供本 Skill 在需要 LLM 推理时直接调用,保证一致性与可复用性。
5. 打包:本目录可直接 zip 为 supply-chain-carbon-response.skill(即 .skill = zip),在 WorkBuddy/SkillHub 安装时解压至 skills 目录即可被识别。