Granite模型签名验证:区分普通adapter和Decision证书流程,不只看下载成功 素材身份:作者原创输入/可编辑参考。目标工具未在本轮执行。 先打开 index.html;input.csv 是原始字段,reference.csv 是验收基准,negative.csv 是故意构造的坏样例。 actual-results.csv 保留未测状态,实际执行后再填写。 前置条件: 使用IBM官方Granite base与对应adapter;只制作输入和校验可以离线免费进行,真正推理需可承担模型内存的本地/自有环境。 Granite Switch当前仓库要求Python3.11+、PyTorch2.11+;vLLM路径还有CUDA/Transformers兼容要求,不承诺Mac可直接跑同一CUDA栈。 官方代码与所列adapter采用Apache2.0;按具体base card核对许可与版本,目标推理未执行,不编造评分和速度。 操作步骤: 1. 列出待验目录 分别选择requirement-check的3B LoRA目录与Decision8B LoRA目录。 只验证目录清单不需要加载推理模型,但真实签名文件必须来自官方发布。 2. 核对覆盖文件 每目录检查adapter_config.json、adapter_model.safetensors、io.yaml与model.sig。 缺任何文件先记录,不能凭模型能启动就当来源完整。 3. 普通库走身份验证 按官方model_signing verify sigstore命令使用Granite-sign@ibm.com和官方identity provider。 身份字符串不得从不可信下载内容里自动照抄当信任根。 4. Decision走证书验证 按Decision README的certificate模式与公开根证书执行。 普通Sigstore命令不适用于Decision独立签名流程。 5. 核对签名者与状态 保存实际stdout、退出码和README所列预期身份/指纹比对。 只有Verification succeeded字样还要确认链和签名者符合预期。 6. 做篡改负例 复制小配置文件到隔离目录再改一处,验证应失败。 不改官方原始缓存、不传播篡改后的权重作为正常模型。 7. 交付可信材料清单 保存来源revision、摘要、实际验证记录和负例结果。 本稿未下载验证,签名状态为not_run,不制造成功日志。 验收: 两类签名流程明确区分。 验证覆盖目录完整。 篡改负例失败且原缓存保留。 官方资料: https://huggingface.co/ibm-granite/granitelib-core-r1.0/blob/main/decision/README.md 图片身份:assets/ 为内置image_gen生成的原创练习输入缩略版,原始文件保留在网站图片来源地址。可编辑SVG为作者原生排版。