食品添加剂使用记录核对(免费版)
完全本地运行:引擎已经打包在本技能里(
engine/目录)。 不联网、不需要 API Key、没有调用次数上限。
什么时候用
谁会在什么时候用:食品生产企业(调味品、肉制品、炒货、烘焙、饮料、酱卤制品等)的 品控 / 质量管理部 / 生产车间,在每批投料与每月投料记录自查这两个固定节点上用它, 市场监管抽检(日常监督检查、抽检不合格后核查)与客户验厂也要看这本台账。
为什么必须核:GB 2760《食品安全国家标准 食品添加剂使用标准》对每个食品类别下的每种添加剂 都规定了最大使用量,单位是 g/kg;而车间投料单上写的是克。 市场监管抽检比对的是两样东西:投料记录与标签配料表。这两样一旦对不上,或者使用量越过限量值, 结果就是抽检不合格 → 召回 → 处罚(超范围 / 超限量使用是食品抽检不合格的头号原因)。 所以每批投料都要能回答三个问题:用了多少(g)、这一批多少(kg)、比例有没有越过限量(g/kg)。
本产品不是别的产品:
- 本产品核的是添加剂投料与限量(使用量 vs 限量值、配料表 vs 投料记录);
- 它不是「食品出厂检验与留样记录核对」(那个核的是出厂检验项目齐全性、留样与销毁期限);
- 也不是「食堂 / 餐饮查验记录核对」(那个核的是索证索票、留样与餐饮具消毒);
- 三者的表不同、口径不同、结论类别不重叠,别拿这本台账去核检验与留样。
这张表会逐项核对什么:上面这本投料台账的逐行算术、限量口径一致性与文本勾稽。
每条结论都带原文行号 + 产品 / 批次 / 添加剂 + 原值(使用量、批量、限量值、比例都在结论里), 可被第三方用同一口径复算;材料不足时不给结论,会明确列出还缺什么。
这个免费版查什么(6 项)
- 使用量按比例复算 —— 使用量g ÷ 批量kg ≤ 限量值g/kg,逐行算并给出使用率与超出倍数、 超限量多少克。这是整个产品最核心的一项:GB 2760 的限量是 g/kg,投料单上是克。
- 同一产品不同批次的限量口径不一致 —— 同一产品同一添加剂在两行上写了两个限量值就点名 (口径不一致时,超限量的判定会随批次不同而得出不同结论)。
- 标签配料表与投料记录一致性 —— 两个方向都查:投料里用了、配料表标注里找不到它; 配料表标注里列了、投料记录里却没有对应行(白砂糖 / 食用盐 / 酱油这类非添加剂配料不报)。
- 同一批次同一添加剂重复投料行 —— 重复行会让合计使用量翻倍,超限量判定随之失真。
- 合计行逐列复核 —— 使用量合计、批量合计必须等于明细行逐列加总(合计错了超限量就判不出来)。
- 字段合法性 —— 关键字段缺失(产品名称 / 生产批次 / 食品类别 / 添加剂名称 / 功能类别 / 使用量g / 批量kg / 限量值g/kg / 配料表标注 / 投料日期)、日期格式非法(如 2026-13-45)、 使用量或批量为负或为 0。
必需列(缺任何一列都只报「材料不足」,绝不给结论): 产品名称、生产批次、食品类别、添加剂名称、功能类别、使用量g、批量kg、限量值g/kg、 配料表标注、投料日期、核对基准日。
这个免费版不查(完整档才查,跑 --sample 会如实列出 checks_withheld):
超范围使用(该添加剂 / 功能类别不允许用于该食品类别,按内置类别-允许表判定)、
复配添加剂拆分核算(复配各单体之和 vs 记录的单体量)、配料带入原则(由配料带入的添加剂量未计入总量)、
同一功能类别多品种叠加的相对量合计 > 100%、分产品 × 分添加剂的汇总清单。
怎么用
node scripts/run.mjs --sample # 先看样例
node scripts/run.mjs --input 你的材料.json # 跑自己的材料
node scripts/run.mjs --input 你的材料.json --json
入参就一张表:把 Excel 里的表头 + 数据行一起复制成文本粘进 {"text": "…"}(Tab 分隔最稳)。
表里可以有 合计 行(只参与「合计行逐列复核」,不参与逐行检查)。
数字认千分位与全角(1,500 / 1500);日期认 2026-03-31 / 2026/3/31 / 2026年3月31日 / 20260331。
备注列里写「配料带入」「复配防腐剂:山梨酸钾40%+脱氢乙酸钠20%」这类信息,完整档会用它做带入与拆分核算。
常见错法(每批投料最容易栽的 5 个坑)
- 拿「克」直接跟「g/kg」比。GB 2760 的限量单位是 g/kg,投料单上写的是 g:
必须
使用量g ÷ 批量kg先换成 g/kg 再比。少了这一步,几千克的投料量看起来永远"没超", 实际比例早就越线了。免费版第 1 项就是把这一步做掉并给出超出倍数。 - 同一添加剂在不同批次抄了两个限量值。换过配方、换过供应商、抄上一年台账,最容易出现 「A 批写 0.5、B 批写 0.3」。限量值是法规口径,只能有一个;两个口径并存时, 同一批到底是超还是没超就说不清了。
- 配料表与投料记录分成两张表各管各的。抽检恰恰是对着比: 投料记录里加了焦糖色、标签配料表却没标(或者反过来标了一个投料记录里没有的添加剂), 都是标签不合格或投料记录不实。备注里写清「由酱油带入」「复配产品拆分」能让这项判得更准。
- 同一批次同一添加剂记了两行。可能是真的投了两次(那就是超限量风险),也可能是重复记录。 两行同时留着,合计使用量翻倍,第 1 项的比例复算就跟着错。
- 合计行用手写数字、不跟明细对。投料量的合计直接决定这一批的添加剂总量; 合计写错、或者明细行被隐藏 / 筛选掉,超限量就判不出来。免费版第 5 项逐列复核使用量与批量合计。
需要完整档时(可选)
本免费版是完整可用的核心产出,本版本不包含下面这些项:
- 超范围使用(该添加剂 / 功能类别不允许用于该食品类别,按内置的类别-允许表判定并点名)
- 复配添加剂拆分核算(复配的各单体之和 vs 记录的单体量)
- 配料带入原则(由配料带入的添加剂量未计入总量)
- 同一功能类别多品种叠加的相对量合计 > 100%(同一功能下的比例之和)
- 分产品 × 分添加剂汇总清单(超出倍数降序 + 每组可整改动作)
同名工具的完整档是另一个独立商品(条款与条件以它自己的商品页为准);两档的差别就是上面这些,没有别的。
边界(请务必知道)
本工具不做这些判断(引擎 CHECKS_OUT_OF_SCOPE 里逐条列了):
- 不判定这个配方该不该用这种添加剂、用量标准对不对 —— 那是 GB 2760 与监管部门的判定权, 本工具只把台账里的使用量与台账里的限量值按比例复算;
- 内置的类别-允许表(完整档用)是本包自带的待企业确认白名单,不是 GB 2760 原文: 换产品、换类别、遇到增补公告,必须由企业按现行版本自行核对后再用;
- 不判定检验结论本身是否合格、不判定产品实物标签是否与配料表一致(本工具只核文本字面);
- 不读 .xlsx / .pdf 原件、不联网核验 GB 2760 的现行版本与增补公告、不核验添加剂生产许可证真伪。
材料不足时不给结论(连「未发现问题」也不输出),会明确列出缺什么 —— 宁可什么都不说,也不说错话。
