# Unsloth 视觉微调：用自有物件照片训练属性描述，核对图片与答案的批次对齐

已生成原创图像并执行图片/答案批次ID对齐及打乱反例；未执行视觉tokenizer、Unsloth collator或模型训练。

## 运行

在本目录使用独立虚拟环境并安装requirements.txt；脚本结果写入results。

```sh
python reference/audit.py
python reference/run_sdk.py
```

fixtures是原创输入与故意失败样本；作者真值、离线合成provider和实际SDK记录各自标明，不是模型正确率。需要真实模型/账号/GPU的步骤按正文另行授权运行。

## 1. 准备可公开复现的原创物件图

本题用程序绘制形状替代真实用户照片，红方块左、蓝圆右、绿三角中央。图片与答案共用稳定sample ID。

## 2. 审计图片答案对齐

audit.py检查同批ID顺序；negative将前两张图调换而答案不换，明确报位置0/1错配。不能只看batch size相同。

## 3. 构造视觉消息格式数据集

按目标模型和Unsloth官方示例保存user图像内容与assistant属性描述，检查路径存在、图像可解码及许可。

## 4. 用真实视觉collator检查一批

调用当前UnslothVisionDataCollator或官方对应入口，记录实际input_ids、pixel_values及labels的batch维度。包内未安装大模型或假造tensor回执。

## 5. 检查裁剪与分辨率影响

真实模型预处理可能裁掉左侧物件或改变宽高；保存预处理可视化，不能用原图存在就断言训练看到完整内容。

## 6. 在目标环境小步训练与独立测试

使用未见构图检查颜色、形状、位置三项，不只复制训练答案。保留真实训练loss和生成结果，三张练习图不能证明泛化。

## 7. 交付批次映射与训练证据

包内提供原创PNG、JSONL、错配反例及审计，无真实Unsloth视觉训练；原生collator和模型结果由目标环境补齐。

## 官方依据

- Unsloth 官方文档或源码：https://unsloth.ai/docs/basics/vision-fine-tuning
