技术深度解析
Kagi Snaps 代表了与传统图像搜索架构的重大工程分水岭。传统系统(如 Google Images 或 Bing Visual Search)依赖以下管道:(1)图像摄取与元数据提取;(2)特征向量生成(例如通过 ResNet 或 CLIP 嵌入);(3)在向量数据库中进行近似最近邻搜索;(4)基于文本相关性信号和 PageRank 式链接权威性进行排序。图像本身从未被“理解”——它只是被匹配。
相比之下,Snaps 将多模态大语言模型(MLLM)直接集成到搜索响应路径中。当用户执行搜索并返回图像时,Kagi 的后端将排名靠前的图像候选通过 MLLM 处理(很可能是 LLaVA 或 GPT-4V 的精调变体,尽管 Kagi 未披露具体模型)。MLLM 联合处理图像像素和用户查询文本,生成自然语言摘要,描述图像内容、提取文字(OCR)、识别物体和场景,并推断上下文或叙事。
关键的工程挑战是延迟。即使在优化硬件上,对高分辨率图像进行一次完整的 MLLM 推理可能需要 2-5 秒。为了使 Snaps 感觉即时,Kagi 可能采用了多种优化技术:
- 推测解码:系统在空闲计算周期内预先生成搜索索引中前 N 个图像的摘要,并缓存以供即时检索。
- 自适应分辨率:初始推理使用低分辨率缩略图,仅在处理复杂图像(如密集图表或文字密集的幻灯片)时才触发高分辨率推理。
- 模型蒸馏:较小的、更快的“学生”模型(例如 7B 参数)处理大多数查询,而较大的“教师”模型(例如 70B 参数)仅在边缘情况或置信度较低时被调用。
这一方法的开源参考是 LLaVA 仓库(GitHub: haotian-liu/LLaVA,目前 20k+ 星标),它展示了多模态数据的视觉指令微调。另一个相关项目是 CogVLM(GitHub: THUDM/CogVLM,15k+ 星标),它使用视觉专家模块实现深度图像理解。这些仓库提供了像 Snaps 这样的生产系统可以构建的基础架构,并在此基础上添加缓存、延迟优化和搜索特定的排序集成。
| 优化技术 | 延迟降低 | 质量权衡 | 部署复杂度 |
|---|---|---|---|
| 推测解码(预缓存) | 60-80% | 对快速变化的图像可能产生过时摘要 | 中等(需要缓存失效逻辑) |
| 自适应分辨率 | 40-60% | 低分辨率推理时轻微精度损失 | 低(简单的分辨率阈值) |
| 模型蒸馏(7B vs 70B) | 50-70% | 复杂查询上 5-10% 的精度下降 | 高(需要训练管道) |
数据要点: 对于静态或缓慢变化的图像,推测解码提供了最佳的延迟增益,同时质量退化最小,使其成为 Kagi 技术栈中最可能的主要优化手段。这种权衡是可接受的,因为大多数搜索图像(例如历史照片、产品图片)不会频繁更新。
关键玩家与案例研究
Kagi 并非唯一探索多模态搜索的玩家,但其订阅制、无广告的模式使其独树一帜。以下是竞争格局的分解:
- Google Lens / Google Multisearch:Google 的视觉搜索工具结合了 OCR、物体检测和文本到图像匹配。它在识别物体和翻译文字方面表现出色,但不会生成上下文摘要或解释“这意味着什么”。它仍然依赖广告支持,因此用户体验针对点击率而非理解深度进行了优化。
- Microsoft Bing Visual Search / Copilot:Bing 在其 Copilot 聊天界面中集成了 GPT-4V 进行图像理解。用户可以上传图像并提问。然而,这是一个对话式功能,并未集成到核心搜索结果页面中。它需要用户明确操作(上传或点击),并且不会自动应用于每个图像结果。
- Perplexity AI:Perplexity 的搜索引擎使用多模态模型来回答带有图像的查询,但其重点是基于文本的答案并辅以支持性图像,而非分析作为搜索结果返回的图像。
- You.com:在其聊天界面中提供多模态能力,类似于 Bing Copilot,但缺乏在搜索结果页面上的自动图像分析。
| 功能 | Kagi Snaps | Google Lens | Bing Visual Search | Perplexity AI |
|---|---|---|---|---|
| 在 SERP 上自动分析图像 | 是 | 否(需要点击) | 否(需要上传) | 否 |
| 生成上下文摘要 | 是 | 否 | 是(在聊天中) | 是(在答案中) |
| 无广告体验 | 是 | 否 | 否 | 是(付费版) |
| 需要订阅 | 是 | 否 | 否 | 可选 |
| 典型延迟 | ~1-2 秒 | ~0.5 秒 | ~2-5 秒 | ~3-8 秒 |