化妆品研发工作台 · 产品介绍

AI 配方

把原料、配方、法规合规、实验数据与基础数据库
收进同一条研发链路的原型工作台
状态可运行原型
业务域六域 + 共享底座
测试1063 项 · 0 失败
形态纯前端 · 在线可看
AI 配方 / 产品介绍01 / 13
问题 · WHY
我们在解决什么问题
研发数据散在五六个表里,合规靠人一条条查

痛点 01数据散

原料档案在 Excel、配方在个人文档、实验数据在另一套系统、法规靠内网查——同一件事存在多份,互相不知道对方改过。

痛点 02合规靠人

一个配方要对着 6 个法域的限量表逐条核;复配原料还要手工折算到成品浓度,人一累就漏。

痛点 03结论不可复算

实验建模结论依赖当次原始数据与模型版本,丢了只能重跑;说不清"这个数是哪一版算出来的"。

痛点 04申报资料重做

标签成分表、备案配方表、内部 BOM 是三套口径,每次申报都要人工重新整理一遍。

一句话

不做又一个"更漂亮的表格",而是让同一份数据流到该去的地方:原料建档一次,配方、法规、标签、备案都从这里取。

6
法域规则
3
套成分口径
问题定义●AI 配方
AI 配方 / 产品介绍02 / 13
总览 · MAP
一张图看全能力
六域闭环:原料 → 配方 → 评估 → 申报,AI 底座回流
业务域与能力总览
业务域与能力 · 六域 + 共享底座

原料域

原料库 / 供应商与货源 / 香精原料库

配方域

配方设计 / 工艺步骤 / 成本 / 版本对比

评估域

合规定 / 毒理 SED / 专利 / 包材 / 产地

申报域

备案资料 / 标签宣称 / 资料包打印

AI 底座

单原料验证 / 组合验证 / 建模回流

共享底座

原料主数据 / 法规 6 法域 / 气候库

能力地图●源:docs/diagrams
AI 配方 / 产品介绍03 / 13
架构 · BUILD
怎么搭起来的
客户端已可用,服务层为待建目标态
系统架构
系统架构 · 客户端已有 / 接入·应用·数据层待建

当前形态

  • 纯前端原型:HTML/CSS/JS,双击即开
  • localStorage 存业务数据,无后端依赖
  • 导入/推送/保存为模拟,先跑通流程

目标形态

  • 接入层:API 网关·鉴权·限流·审计
  • 应用层:六类服务按域拆分
  • 数据层:业务库 + 对象存储 + 参考库

为什么先做客户端

业务口径没定死之前,做后端等于把猜测固化成表结构。原型先把字段、流程、判据跑通,再反推服务边界。

系统架构●源:docs/diagrams
AI 配方 / 产品介绍04 / 13
模块 01 · 原料域
原料库:把"原料"变成可计算的对象
复合原料按组分折算,法规能一路追到组分
原料库列表
原料列表 · 组分徽章 / 过滤 / 按组分反查

01主数据

  • 21 条原料,含 21 个字段
  • 匹配口径 CAS > 编码 > INCI > 中文名
  • 占位符(— / 无 / 待判定)不参与匹配

02组分表

  • 复配原料录组分 + 占比子表
  • 占比合计 ≠100% 硬拦,不允许保存
  • compositionType 由组分表派生

03组分优先

  • 判定改组分优先:成品浓度 = 用量 × 占比
  • 缺组分表 → 判 gap 不放行
  • 原系统 51% 是复合原料,不展开等于判不准

04来源与产地

  • 供应商台账 + 原料 × 供应商报价三层
  • 产地属货源:四级取值链,必返来源
  • 多产地 / 跨国混供可识别不静默

为什么这一步是整个系统的基础

原料侧不建档,下游全在猜:配方没有成本、法规没有身份、标签没有成分、备案没有原料安全信息。原料库是唯一真相源,其余模块只引用、不复制。

原料域●21 条主数据 · 组分内核
AI 配方 / 产品介绍05 / 13
模块 02 · 配方域
配方库:工作区 + 定版快照
自动保存不留弹窗,定版即冻结,历史永不被改写
配方列表
配方列表 · 四态派生 / 合规预警 / 多选对比
编辑自动保存 800ms
定版生成不可写快照
继续改基于最新版

模型极简

  • 配方级仅 正常 / 已废弃
  • 版本对象无状态:定版即定版
  • 列表四态全部派生,不落库

快照不可写

  • 修复旧版覆盖历史的真 bug
  • 载入旧版不产生新版本
  • 再定版才产生 V+1

工艺进配方

  • 步骤表 + 目标 pH/粘度/外观
  • 6 套模板套用带覆盖保护
  • 随定版一起冻结进快照

对比与差异

  • 最多 5 个配方并排(建议 3)
  • 差异三档:全部 / 部分 / 独有
  • 不变式:Σ三档 = 矩阵行数
配方域●12 条种子 · 覆盖四态
AI 配方 / 产品介绍06 / 13
模块 03 · 评估域
法规合规:规则引擎而不是表格
6 法域 168 条规则,判定带时点和条款引用
成分规则多法域矩阵
成分规则 · 多法域矩阵 / 原料库匹配 / 时点

01判定口径

  • 身份解析 CAS > 报送码 > INCI > 名称
  • 复配原料逐组分折算成品浓度
  • 冲突消解:禁用 > 限用 > 准用 → 更严者

02五级结论

  • bad / gap / warn / info / ok
  • 缺依据不得默认放行
  • 触发值 ≠ 限量(过敏原只标"须标注")

03判定时点

  • 规则带 effectiveFrom/To
  • 支持换版样例:水杨酸 2.0%→1.5%
  • 定版快照写 verdict 存证

04诚实边界

  • 168 条全部标注演示数据
  • 未录原文显示"未录入",不编造
  • 只做研发预检,不替代注册结论

下游全部复用同一套判定

配方预检标签成分表宣称与证据安全评估成品检验变更影响分析预警工单

评估域●6 法域 · 168 条规则
AI 配方 / 产品介绍07 / 13
模块 04 · AI 底座
实验数据:斑马鱼到建模结论的闭环
导入即待复核,结论留档且不可重算丢失
导入v4 标准模板 · 纯模拟
待复核有权限同事确认
推送深算院未推→推送中→已接收
建模数据校验→建模中→完成
结果落库原文保真 · 追加不覆盖
建模结果列表
建模结果 · 组合维度 / 分级 / Emax / 与预判对照

三条落库口径

  • 原文保真:不改写不裁剪
  • 追加不覆盖:模型升级=新版本
  • 缺口显式:不补 0 不外推

两个观察维度

  • 组合维度:一行一个组合
  • 批次维度:一行一个批次
  • 同一份快照,两种聚合口径

结论绑定数据指纹

  • 重新导入后可识别旧结论
  • 回答"这个数出自哪版模型"
  • 取数失败不留版本

预判对照

  • 模型分级 vs 实验员预判组别
  • 标 ✓ 一致 / ⚠ 不一致
  • 用于校准经验判断
AI 底座●导入→复核→推送→落库
AI 配方 / 产品介绍08 / 13
模块 05 · 共享底座
基础数据库:三张底座表
气候只给事实,毒理只给提示,专利只报撞车

01气候基础库

338城
2014–2023 十年平值
  • 月 T/Tx/Tn · RH · AH · SW · P · WS
  • 数据性质三态:实测 / 模拟 / 失败
  • 只给事实,不含适配结论
  • 取数失败留空并点名,不编造

02毒理数据库

3件套
档案 · 暴露参数 · SED
  • 成分档案 35 条,未收录写"未收录"
  • 暴露参数 20 行 RIVM / EPA 公开值
  • SED 只做估算,不是安全结论
  • MoS 不做:缺 NOAEL 数据源

03专利库

9检索维
检索 · 详情 · 风险匹配
  • 口径:只报配方类 + 授权 + 活性物重叠
  • 两道闸门:未授权不报、非配方类不进
  • 未加载库显示"未判定",不显示"未发现"
  • 10 条种子带 CN-DEMO- 前缀
共享底座●事实层与结论层严格分离
AI 配方 / 产品介绍09 / 13
联动 · LINK
单看是模块,连起来是链路
一次建档,四处复用,口径只有一份

A备案闭环

配方定版 → 备案单挂申报版本 → 9 项资料三入口 → 齐备度动态 → 提交守卫。

  • 附件不落盘,只存元数据 + 审计链
  • upload 类资料必须由有效附件驱动
  • 阻塞项三级:hard / warn / gap 永不升级

B标签成分表

标签列的是成分不是原料,所以必须按组分展开再合并。

  • 按 CAS 优先合并(水不会出现两次)
  • 复配缺组分表 → 阻止输出,不顶替
  • 合计守恒自检:不等即页面显红

C配方对比

勾选态跨页共用一份,列表勾 3 个进对比页不会变空。

  • 差异三档 + 覆盖率自检行
  • 上限 5 个:满员拒绝并提示,不静默踢
  • 渐进式差异:"与已选最像:X"

D气候适配建议书

12 配方 × 7 气候区矩阵,点格子出单配方建议书。

  • 7 受控轴,阈值显式三元组不猜
  • 缺口优先:gap 不被 ok 压过
  • 打印版保留免责与缺口声明
跨域联动●单一真相源原则
AI 配方 / 产品介绍10 / 13
质量 · PROOF
凭什么说它是可信的
1063 项测试锁住口径,不是靠"看着对"
1063
测试项
0
失败
44
测试文件
8
显式跳过(已决议)

口径用不变式锁

  • 差异三档 Σ = 矩阵行数(2~5 个配方全测)
  • CSV 行长恒为 4+N,转义后列数不变
  • 标签合计守恒:展开后 = BOM 合计

判据先反测

  • SED 面板用变异样本反测过
  • 12 条配方结论零翻转
  • 空样本必须显式断言非空

缺口写进产品

  • 阈值未标定 → 页面保留 E2 声明
  • 未实现 → 写"未实现"并 skip 用例
  • 不为了让结果好看而删护栏
工程质量●main 稳定基线
AI 配方 / 产品介绍11 / 13
演示 · DEMO
现在就能打开看
在线地址 + 演示账号 + 三条推荐路径

访问地址

prd.awei.site/meiwanxt/

京东云源站直传版,与本仓内容逐字节一致

演示角色

zhangsan 录入员 · lisi 复核员 · wangwu 预测管理员(密码 123456)

路径 1配方库 · 5 分钟

  • 列表看四态 → 合规筛选看 3 条风险配方
  • 打开 F-2026-001:V2.1 已定版 + 未定版改动
  • 改用量看自动保存(无保存按钮)
  • 点定版 → V2.2;回看 V2.1 快照未被污染
  • 勾选多个 → 配方对比 → 差异三档

路径 2实验数据 · 5 分钟

  • 上传数据 → 自动进待复核
  • 换 lisi 进详情 → 复核确认 → 自动推送
  • 推送状态条逐级点亮
  • 侧边栏「建模结果」→ 切单原料 / 多原料
  • 点组合 → 曲线 + 拟合 + 与预判对照

路径 3合规与备案 · 5 分钟

  • 成分规则 → 6 法域矩阵看差异
  • 切判定时点,看结论随规则版本变
  • 备案台账 → AF-2026-0001 看一致性校验
  • AF-2026-0003 点提交被守卫拦住
  • 生成配方表打印视图(A4 三页)
演示路径●无需安装 · 浏览器直接打开
AI 配方 / 产品介绍12 / 13
边界 · SCOPE
明确不做什么,才知道能信什么
原型验证口径,上线需补服务层与真实数据源

NOW已经能跑

  • 原料建档 · 组分表 · 溯源产地
  • 配方编辑 · 定版快照 · 版本对比
  • 法规判定 · 标签生成 · 备案台账
  • 实验导入 · 复核推送 · 结果落库
  • 气候 / 毒理 / 专利三张底座表

NEXT还差什么

  • 真实后端接口(当前 FRM.api 为 mock)
  • 真实 xlsx 解析与 HTTP 推送
  • 深算院结果查询接口字段契约待确认
  • 原料主数据三份副本待收敛
  • 专利库成分反查未实现(已显式标注)

原型阶段的边界声明

不替代结论法规判定是研发预检,不替代注册备案结论;SED 是暴露估算,不是安全结论
不编造数据168 条法规标"演示数据非权威";未收录写"未收录";取数失败留空点名
不隐藏缺口阈值未标定保留 E2 声明;未实现功能页面写"未实现",不伪装完成
边界与下一步●路线图见 TODO.md
← → 翻页