考虑自己写一个照片处理的分布式 AI Agent 项目
2019年,我入手了一台MacBook Pro,那是英特尔芯片的末代机型,配置是16GB内存和1TB硬盘。 当时我以为,这台电脑即便用到寿终正寝,磁盘空间恐怕也消耗不完。
然而未来总是难以预料(充满惊喜)。去年生日,爱人送了我一台尼康相机,我的人生仿佛又增加了一个新的锚点——摄影。
快门的每一次开合,都意味着磁盘空间减少约30MB。摄影一周年之际,Mac的硬盘空间开始告急,我不得不将一部分照片迁移到另一台电脑上。这也促使我考虑开始整理旧照片:重复度高的,挑选一两张优质的保留,其余则可以冷归档。
好的照片需要“装裱”。我在GitHub上找到了一个名为 https://github.com/leslievan/semi-utils 的Python项目,它支持照片批量添加水印、调整像素比、处理图像色彩和质量。 于是我便思考,能否采用AI Agent的方式来实现照片的自动化处理。 这主要基于两点考虑:其一,照片的二次修改和包装逻辑本质上就是任务,我有多年的分布式任务调度系统开发经验;其二,大模型相关技术如MCP、RAG、Agent正是当下的热点,我也希望借此机会实践学习。 将分布式任务调度系统与Agent结合,可谓一举多得。
初步方案(思考中)
若将照片的二次处理抽象为一个任务,系统大致可划分为以下几个部分:
• 任务数据上传与前置处理系统
• 任务分发中心
• 任务二次处理系统:与Agent交互,生成处理后的照片
• 照片下载系统
整体的数据流初步设想如下:
用户上传照片
→ 进行前置处理(如文件格式校验、持久化存储,并抽象为任务)
→ 任务分发中心(初期架构可简化,专注于分发)
→ 任务二次处理系统(与Agent交互,完成照片处理)
→ 用户下载最终照片
当然,细节还有很多。例如前置的照片上传入口和UI交互、任务分发中心的实现(单机扫表、ZK选主、XXL-JOB,或是Redis/MQ队列等都可以考虑)。
总之,先聚焦核心链路,实现数据闭环,再考虑后续演进。
改天研究一下阿里通义千问和豆包的文档,看看如何对接。虽然想尽快开始,但还得准备面试,时间有些紧张。或许这个项目要等跳槽后再正式动工了,不过思路既已明确,落地便只是时间问题。