Vibe Coding 挑战 | 证件照制作工具

Vibe Coding 挑战 | 证件照制作工具

sjmyuan 15 2026-01-10

引言

在日常生活中,我们常常需要应对各种证件照要求——不同的尺寸、背景颜色、DPI(每英寸点数)标准等。每次准备证件照,要么得跑打印店,要么只能依赖付费的在线服务,既费时又不便。

作为一个对该领域完全陌生的人,我不禁思考:是否可以借助 AI 技术,自己动手打造一款简单易用的证件照制作工具?带着这个疑问,我发起了本次 Vibe Coding 挑战

我从中学到了什么?

1. AI 能帮助快速入门陌生领域,厘清核心问题

我对证件照制作一无所知:既不清楚 DPI、照片尺寸、排版规范、打印机设置等基本概念,也不了解实现这类工具的技术路径和难点所在。

为此,我设计了一个头脑风暴提示词,借助 AI 进行结构化探索。通过多轮对话,我不仅厘清了相关术语,还识别出该领域的核心挑战——精准的背景消除,并初步筛选出潜在的技术方案(如 U-2-Net 模型)。最终,AI 协助我输出了一份产品概念文档,为后续的需求分析和开发奠定了基础。

2. 对 AI 提供的信息需保持审慎,尤其在缺乏领域知识时

由于完全不熟悉该领域,我无法独立验证 AI 所提建议的准确性。例如,AI 推荐结合 TensorFlow.jsU-2-Net 模型 实现背景消除。这两个项目确实存在,于是我一度深信其可行性。

然而,在实际开发中,GitHub Copilot 始终无法生成有效代码。深入调研后才发现:U-2-Net 基于 PyTorch 构建,无法直接在浏览器环境中运行;而 TensorFlow.js 虽支持前端部署,却不兼容 U-2-Net 的模型结构。这一误判导致开发一度停滞。

这类问题难以完全避免——在没有专家支持的情况下,AI 往往是我们探索新领域的首要工具。但我们可以通过建立验证机制(如参考《如何处理未知问题?》中的方法)来降低风险,并构建快速反馈循环,及时修正方向。

3. 非常规技术难点,仍需人类主动攻坚

证件照制作的核心技术瓶颈在于高质量的背景消除。尽管 U-2-Net 效果出色,但其依赖 Python 和 PyTorch,无法直接用于纯前端应用。而 TensorFlow.js 虽能在浏览器运行,却缺乏对 U-2-Net 的支持。GitHub Copilot 在此场景下直接“放弃”,既无法实现原方案,也提不出可行替代。

面对这一僵局,我只能主动介入:通过 AI 探索新思路,再用 Google 验证技术可行性,反复测试不同方案,最终找到一条可落地的路径,并据此指导 AI 生成有效代码。
本质上,这个关键难点是我自己解决的——如果无法突破,整个项目将止步于此。

4. “说”与“做”不一致,严重影响开发体验

最令人沮丧的体验来自 GitHub Copilot 的计划漂移问题:明明制定了 20 步的开发计划,执行到一半却突然缩减为 5 步;又或者,一个包含 69 项任务的 TODO 列表,自动生成后竟只剩 27 项。

我曾尝试通过提示词强调“不要修改已确认的计划,请严格按步骤执行”,但效果有限。目前最有效的缓解策略是控制任务颗粒度——将大任务拆解为更小、更聚焦的单元。经验表明,20 步以内的计划,执行一致性显著更高

产品介绍

证件照制作工具 是一款注重隐私、完全在客户端运行的网页应用。它利用 AI 驱动的背景移除技术,帮助用户快速生成符合各类规范的专业证件照——所有图像处理均在浏览器本地完成,照片绝不会上传至任何服务器

核心功能流程

  1. 设置参数并上传照片
    用户可自定义证件照尺寸(如一寸、二寸)、背景颜色(红/蓝/白等)、输出 DPI,以及打印纸张规格(A4、6寸等)。

  2. 预览单张证件照
    系统基于人脸检测与智能裁剪,生成标准化的单张证件照,并实时预览效果。

  3. 生成打印排版
    自动将多张证件照按指定纸张尺寸进行高效排版,方便直接打印使用。

项目源码已开源:sjmyuan/id-photo-maker

总结

这次 Vibe Coding 挑战让我深刻体会到:AI 是强大的协作者,但不是万能的答案机

它可能提供看似合理却无法落地的技术方案;它可能在执行过程中偏离既定计划;它甚至会在“说”和“做”之间产生不一致。如果我们盲目信任其输出,项目很容易陷入停滞或偏离方向。

因此,真正的生产力并不来自 AI 自动生成代码的能力,而来自我们对 AI 输出的判断、验证与修正能力。只有保持批判性思维,主动介入关键决策,并在未知领域中持续探索,才能真正释放 AI 的潜能——让它成为我们能力的延伸,而非依赖的拐杖。