写点什么

CLIP-as-service 0.8.0 版本发布:新增支持大型 ONNX 模型文件

作者:Jina AI
  • 2022-10-25
    中国香港
  • 本文字数:1065 字

    阅读完需:约 3 分钟

CLIP-as-service 0.8.0 版本发布:新增支持大型 ONNX 模型文件



CLIP-as-service 是一种用于编码图像和文本的低延迟、高可扩展性服务。它可以作为微服务轻松集成到神经搜索解决方案中。

💡 CLIP-as-service 0.8.0 现已正式发布!

本次更新包含 3 个新增功能、1 个性能改进、1 个文档改进。


🆕 新功能

新增支持大型 ONNX 模型文件 (#828)

单个 ONNX 模型文件有 2GB 大小的限制,更大的 ONNX 模型将被拆分成许多的文件碎片保存。此版本支持导入包含大型 ONNX 模型碎片的文件夹压缩成的 zip 格式文件。我们现在可以提供所有 CLIP 模型在 ONNX 运行时的服务。

新增支持在 laion-2b 上训练的 ViT-B-32、ViT-L-14、ViT-H-14 和 ViT-g-14 的模型 (#825)

用户现在可以使用在 Laion-2B 数据集上训练的 OpenCLIP 提供的四个新 CLIP 模型:

  • ViT-B-32::laion2b-s34b-b79k

  • ViT-L-14::laion2b-s32b-b82k

  • ViT-H-14::laion2b-s32b-b79k

  • ViT-g-14::laion2b-s12b-b42k


ViT-H-14 模型在 ImageNet 上实现了 78.0% 的零样本 top-1 准确率,在 MS COCO 上的 Recall@5 上实现了 73.4% 的零样本图像检索。这是目前表现最好的开源 CLIP 模型。要使用新模型,只需在 Flow YAML 中指定模型名称,例如 ViT-H-14::laion2b-s32b-b79k



请参阅模型支持[1],以查看受支持模型的完整列表。

clip_client 将结果保存在原输入对象,并按 uuid 保持输出顺序 (#815)

在此版本中,clip_client 将获取的 embedding 结果直接存储在输入的 DocumentArray 中,而不是返回一个新的 DocumentArray。与此同时,现在调用 Client.encode返回的 DocumentArray 内条目的顺序与输入的 DocumentArray 的顺序相同。


注意:如果您之前的代码依赖于Client.encode 返回一个新 DocumentArray 实例,此处改变可能会影响您的下游任务。您可以运行以下代码来验证原输入的DocumentArray 是否包含 embeddings 并且保留了原始顺序。



📗 文档改进

零样本分类和检索任务的 CLIP 基准测试 (#832)

我们现在为零样本分类和检索任务的 CLIP 模型提供基准信息。此信息应有助于用户为其特定用例选择最佳 CLIP 模型。有关更多详细信息,请阅读 CLIP-as-service 用户指南中的基准页面[2]。

🚀 性能提升

停止回传图像内容以降低延迟 (#824)

调用Client.encode不再返回带有 embedding 的输入图像。因为 embedding 现在已插入到原始 DocumentArray 实例中,无需多此一举。因此,优化后现在的系统更快、响应更快。性能提升取决于图像大小和网络带宽。

引用链接

[1] 模型支持: https://clip-as-service.jina.ai/user-guides/server/#model-support

[2] Benchmark: https://clip-as-service.jina.ai/user-guides/benchmark/


用户头像

Jina AI

关注

神经搜索生态开创者 开源技术社区贡献者 2022-06-07 加入

Jina AI 成立于 2020 年 2 月,是一家业内领先的开源企业,连续两年上榜全球“AI100”榜单。致力于通过人工智能和深度学习技术,打造下一代云原生神经搜索框架,帮助开发者和企业打造跨模态和多模态应用。

评论

发布
暂无评论
CLIP-as-service 0.8.0 版本发布:新增支持大型 ONNX 模型文件_开源_Jina AI_InfoQ写作社区