当AI生成的代码无法满足需求时,如何引导其进行精准优化?本文记录了一个舞蹈动作抓取工具的优化过程。通过提出具体的命名规则、人物聚焦和节奏调整等需求,最终得到了一个功能完善的版本。这为如何与AI协作进行代码迭代提供了清晰的思路和范例。
智能速览
AI生成的初始代码存在命名混乱、无法识别动作组合等问题。
用户提出按八拍命名、动态截图和聚焦C位人物三项核心需求。
AI迅速响应,提供可直接替换的、带有自定义参数的优化代码。
新增了镜像、节奏微调和相似图片合并等智能化功能。
精华内容
与AI协作开发工具并非一蹴而就,关键在于如何清晰、具体地描述优化需求。下面将详述一个从初版到完善的全过程。
初版代码的不足
最初由AI生成的代码存在几个明显问题。首先,截图的命名是无意义的“多少-1”格式,无法对应具体的节拍。其次,代码无法识别同一拍内包含的多个连续动作,未能将其作为一组处理。此外,由于视频是全景拍摄,画面中有多位舞者,导致目标老师的动作不够清晰,影响了后续分析。
明确三项核心需求
为了解决这些问题,向AI提出了三个关键的优化指令。第一,截图命名必须按照“八拍-拍-动作”的格式,例如“1-1-1”代表第一个八拍的第一拍的第一个动作,且每八个八拍为一组。第二,工具应能识别舞蹈动作的开始,跳过歌曲冗长的前奏部分。第三,截图范围应放大并锁定在画面最中心(C位)的人物上,确保其动作清晰完整。
AI的快速响应与交付
在接收到具体需求后,AI迅速提供了一段完整的优化后代码,并提示直接替换旧代码即可。这种交付方式非常高效,避免了复杂的调试过程。更重要的是,新代码引入了多个可配置的参数,为后续的个性化调整预留了空间,体现了AI代码生成的灵活性和可扩展性。
新增的精细化参数
新代码包含了多个实用的自定义参数。例如,“Mirror”参数用于控制是否镜像翻转视频,以适应不同老师的朝向。“time_offset”参数则用于微调截图时间点,解决老师动作与音乐节奏不完全匹配的问题,可以提前或延后截图。此外,“frames_per_beat”参数允许用户设定每一拍截图的数量,默认为二。
智能合并单一动作
为进一步提升效率,还增加了智能合并功能。虽然设定每一拍截取三张图,但有时一拍内只有一个动作。此时,新代码会计算这三张截图的相似度,如果相似度很高,系统会自动判定该拍为单一动作,并将生成的截图合并,避免了冗余文件的生成,使结果更加精准和精简。
这次经历证明,有效的AI协作关键在于将模糊想法转化为具体指令。通过不断迭代,即使是复杂的定制化工具也能被AI精准实现。这种交互模式不仅提升了开发效率,也降低了编程门槛,让更多人能借助AI解决实际问题。你是否也曾用AI解决过类似的个性化难题?