在上层业务上,引入了新的结构优化了 CLIP 的 Text Encoder 部分,让文字搜索图片能有更前的语义到内容的关联性;
目前验证过效果较好的方面有:
1 、图片到图片搜索;
a 、支持残缺图片搜索原图;
b 、有较好的马赛克、偏色、模糊抗扰能力;
2 、文字到图片搜索;
a 、基于图片中内容特征进行搜索,如双马尾、黑丝、红色眼睛、银发;
b 、基于角色名字进行搜索;
可扩展的能力为通过图片搜索到该图片来自的剧集或者电影的时间帧(文字理论也行,但是数据库大了很难定位准确的帧)。
原理是把视频拆成了图片,然后通过内容感知来切分场景镜头,选出每个场景中标志性的几张图片;接下来的部分就和上面的流程是一样了。
基于以上的架构,它目前拥有以下的特性:
1 、如果想要搜索到这个内容,该内容源文件必须在服务器上,或曾经在服务器上(取决于是否要提供预览功能);
a 、可能会有版权风险;
b 、提供预览会对储存和带宽产生挑战;
2 、内容的泛用性搜索上挑战,需要针对每个资源站定制爬虫;
a 、如果没有改站点的爬虫,并把视频 /图片爬回至服务器,就无法制作该站点资源的搜索索引;
b 、这是一个可刑可拷的爬虫;
3 、Faiss 限制
a 、搜索索引需要载入到内存中才能运行,1G 运行内存大约可以索引 500k 张图片(未压缩情况下)
4 、模型限制
a 、虽然可以在纯 CPU 环境中跑吧,速度也还行,但是没试过高并发业务场景;
b 、如果在纯 CPU 环境中跑,Faiss 每次更新索引会随着数据的增加而线性增加;
商业化问题:
1 、服务器挺贵的,带 GPU 的服务器更贵了,然后还需要大运存;
2 、虽然不提供直接的资源服务吧,但是怎么看怎么觉得这个爬虫十分可拷;
3 、广告支撑不起一个月的服务器开支,付费搜索真的有人用吗;
目前的想法:
1 、先从 Pixiv 入手进行落地;
大家有更好的想法或者方向期望指点一下,目前这个项目有一种只考虑了技术实现没考虑工业落地的场景;
如果对这个项目有兴趣也可以联系我。