温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
电老板,微信用了几年,图片、截图、语音、视频全都实实在在躺在你自己的硬盘上,这些东西加起来其实就是一个属于你个人的私有素材库。在你有没有过这种时候?几个月前群里发过一段视频,你记得大概是什么画面就是想不起来任何一个能搜的关键词。微信自带的搜索只能匹配文本关键词,你记不住原话,他就帮不了你。文件就在磁盘上,为什么搜不到?第一,微信把图片、视频、语音全部改成了哈希文件名,原始文件名直接丢掉,还分散在多层目录里,文件本身不带任何语音标签。第二,微信的搜索只认聊天文本、视频里的画面、截图里的内容,语音里说了什么,他完全不理解。那能不能自已给微信外挂一套多模态搜索?先看输入,我这次索引了25跟50,视频127张图片,三段音频,全都是哈希文件名,没有一个字的标签。本地只做两件事儿,压缩和裁剪。图片用POL缩到9000PB以内,视频音频用SMK压一下裁断,注意这里没有OCR。
01:00
啊,也没有语音转文字,这是这套方案和传统字法最大的区别。然后是关键的一步分plastictic search9.5新增了一个semantic字段类型,你只要在mapping里声明它绑定一个推理端点,写入文档时eltic search就自动把媒体编码成向量。没有Pipeline,不用自己声明向量维度,也不用手动调推理接口。整个Mapping的核心就四行,而且图片、视频、音频的写入格式是同一个型号,只有typeb这一个磁带片,这些向量落在同一个1024维空间里。一个模型,三种模态共享一个空间,这就是跨模态检索能成立的原因。查询测同样简单,用文字搜就是一条普通的matchc,用图片、视频、音频搜就是KN,查询向量都由服务端自动生成,返回的结果就是这个空间里的最近邻,所以文字能命中视频,图片也能命中视频,看实际效果。我输入夜景灯光这四个字,不在任何一个文件名里,索引里也没有任何文本标签儿,返回的是画面,确实是夜景,确实有灯光。
02:00
的视频,他理解的是画面内容本身,换一个主持人,你要命中再看跨模态,我直接拖一张图片进去,当查询条件,返回的是语意相近的视频,图片和视频在同一个向量空间里,所以用图搜视频是天然支持的,不需要任何额外代码。传统关键词搜索要求你记得原文的字眼,这套方案匹配的是内容的含义。如果你对今天的分享感兴趣,可以登录腾讯云ES控制台,为你的微信加上本地多模态搜索外挂。
我来说两句