首页 > 其他分享 >通过ModelScope开源Embedding模型将图片转换为向量

通过ModelScope开源Embedding模型将图片转换为向量

时间:2024-09-12 11:25:17浏览次数:10  
标签:DashVector Embedding img 模型 ModelScope 开源 embedding 向量

本文介绍如何通过ModelScope魔搭社区中的视觉表征模型图片转换为向量 ,并入库至向量检索服务DashVector中进行向量检索。

ModelScope魔搭社区旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单。

ModelScope魔搭社区的愿景是汇集行业领先的预训练模型,减少开发者的重复研发成本,提供更加绿色环保、开源开放的AI开发环境和模型服务,助力绿色"数字经济"事业的建设。 ModelScope魔搭社区将以开源的方式提供多类优质模型,开发者可在平台上免费体验与下载使用。

在ModelScope魔搭社区,您可以:

  • 免费使用平台提供的预训练模型,支持免费下载运行
  • 一行命令实现模型预测,简单快速验证模型效果
  • 用自己的数据对模型进行调优,定制自己的个性化模型
  • 学习系统性的知识,结合实训,有效提升模型研发能力
  • 分享和贡献你的想法、评论与模型,让更多人认识你,在社区中成长

前提条件

  • DashVector

    • 已创建Cluster
    • 已获得API-KEY
    • 已安装最新版SDK
  • ModelScope

    • 已安装最新版SDK:pip install -U modelscope

商品图像同款特征

简介

本模型是对商品图像进行表征向量提取,用户可基于表征向量进行大规模的同款/相似款商品搜索;无需额外输入,模型可自动进行箱包商品的主体抠图,并基于主体提取结果完成表征向量提取。

说明

关于商品图像同款特征模型更多信息请参考:商品图像同款特征

使用示例

说明

需要进行如下替换代码才能正常运行:

  1. DashVector api-key替换示例中的

  2. DashVector Cluster Endpoint替换示例中的

Python示例:

from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
from dashvector import Client


product_embedding = pipeline(
    Tasks.product_retrieval_embedding,
    model='damo/cv_resnet50_product-bag-embedding-models'
)


def generate_embeddings(img: str):
    result = product_embedding(img)
    return result['img_embedding']


# 创建DashVector Client
client = Client(
    api_key='{your-dashvector-api-key}',
    endpoint='{your-dashvector-cluster-endpoint}'
)

# 创建DashVector Collection
rsp = client.create('resnet50-embedding', dimension=512)
assert rsp
collection = client.get('resnet50-embedding')
assert collection

# 向量入库DashVector
img_url = 'https://mmsearch.oss-cn-zhangjiakou.aliyuncs.com/maas_test_img/tb_image_share_1666002161794.jpg'
collection.insert(
    ('ID1', generate_embeddings(img_url))
)

# 向量检索
docs = collection.query(
    generate_embeddings(img_url)
)
print(docs)

标签:DashVector,Embedding,img,模型,ModelScope,开源,embedding,向量
From: https://www.cnblogs.com/DashVector/p/18409836

相关文章

  • 【开源免费】基于SpringBoot+Vue.JS在线视频教育平台(JAVA毕业设计)
    本文项目编号T027,文末自助获取源码\color{red}{T027,文末自助获取源码}......
  • 【开源免费】基于SpringBoot+Vue.JS校园管理系统(JAVA毕业设计)
    本文项目编号T026,文末自助获取源码\color{red}{T026,文末自助获取源码}......
  • Snort 和 Suricata 开源代码规模解析:行数统计与对比
    Snort和Suricata作为两个知名的开源入侵检测和防御系统,它们的代码库相对庞大。Snort:Snort的代码库规模较为紧凑,随着版本的演进,代码行数逐渐增加。目前的Snort3.x版本的代码库大约有50万到60万行之间。这包括核心检测引擎、协议解析、插件扩展等多部分。Suricata:Suricata......
  • 开源低代码平台,JeecgBoot v3.7.1 大版本发布
    项目介绍JeecgBoot是一款企业级的低代码平台!前后端分离架构SpringBoot2.x,SpringCloud,AntDesign&Vue3,Mybatis-plus,Shiro,JWT支持微服务。强大的代码生成器让前后端代码一键生成!JeecgBoot引领低代码开发模式(OnlineCoding->代码生成->手工MERGE),帮助解决Java项目70%的重复......
  • .NET 多版本 WinForm 开源控件库 SunnyUI
    前言给大家推荐一款开源的Winform控件库,可以帮助我们开发更加美观、漂亮的WinForm界面。项目介绍SunnyUI.NET是一个基于.NETFramework4.0+、.NET6、.NET7和.NET8的WinForm开源控件库,同时也提供了工具类库、扩展类库和多页面开发框架。基于.NETFramework4.0......
  • Redis、Nginx、SQLite、Elasticsearch等开源软件成功的原因及它们对IT技术人员的启示
    引言这些年在自研产品,对于如何做好产品进行了一些思考。随着开源软件的蓬勃发展,许多开源项目已经成为IT行业的核心组成部分。像Redis、Nginx、SQLite、Elasticsearch这些知名的开源软件,已经成为了开发者的首选工具。这些开源软件不仅在技术性能上取得了重大突破,还在社区建设、生......
  • 【开源dcluster】一站式数据服务分析平台IDEA本地开发指南
    源码Gitee地址:https://gitee.com/zhenglv123456/dcluster在线文档:http://47.121.127.33:8090/在线体验:http://36.155.14.171:12345/dolphinscheduler/ui/login账号密码:test/test123  源码启动1.前端启动 进入dolphinscheduler-ui目录,执行以下命令 npmins......
  • 时间embedding
    左边的公式和time_embedding(1)的区别在于它们表示的维度不同。公式中的左边部分是一个概括性公式,用来说明如何为每个时间步(t)生成时间嵌入。而具体的time_embedding(1)展示的是当(t=1)时,如何生成一个更长维度的时间嵌入向量。1.左边公式的含义:左边的公式表示......
  • 万字长文 | Apache开源社区出海的“踩坑”之路,看完这3点你就明白了
    引言作为一名软件行业的从业者,我已经在开源社区Remote工作了两年时间。“技术运营”是一个相对小众的职业,所以如果你在这个行业工作,却找不到自己热情所在或擅长的事情,可能会感觉缺乏价值感(这一点我老板也很认同)。然而,如果你愿意为自己的情怀买单,并全心投入其中,这确实是一件伟大......
  • 【开源分享】PHP 在线客服系统源码 全开源无加密,支持自动刷新 网页即时接收消息
    智能化在线客服系统也是其中一个必备功能。其智能化主要体现在细节中,在保持客服人员工作正常进行的情况下,让效率变高。智能化在线客服系统采取“轮询”的工单分配方式,让合适的客服人员处理合适的问题;提供“视图”功能,让客服人员专注于重要工单;强大的“搜索”功能,迅速锁定目标客户......