电商公司管理的商品少则几千,多则上百万。如何帮助用户从多如牛毛的商品中找到类似的商品就成了问题。
以图搜图就可以很好的帮助解决这个问题,通过API接口item_search_img,可以快速实现本地环境搭建以图搜图服务。
配合前端大致效果如下:
包含如下接口
API接口
1.创建数据库
不同数据库对应不同的图片数据集合
Request
-
Method: POST
-
URL:
/milvus/img/table?table={tablename}
-
创建test数据集:
/milvus/img/table?table=test
-
-
Headers:
Response
-
Body
{ "code": 10000, "message": "Successfully", "data": null }
2.新增图片
新增图片支持 base64 和url新增
Request
-
Method: POST
-
URL:
/milvus/img/add
-
test 数据集新增图片数据:
/milvus/img/add
-
-
Headers: Content-Type:application/json
-
Body:
{ "tags": "风景|标签", "table": "test", "brief":"{\"title\":\"hello world\"} 这里存一些属性", "image": "base64(和url二选一,image优先级更高) ", "url":"http:///xxx.jpp" }
Response
-
Body
{ "code": 10000, "message": "Successfully", "data": "8 返回数据id" }
3.更新图片
更新图片支持 base64 和url,根据id进行更新
Request
-
Method: POST
-
URL:
/milvus/img/update
-
Headers: Content-Type:application/json
-
Body:
{ "id":"1 必填", "tags": "风景|标签", "table": "test", "brief":"{\"title\":\"hello world\"} 这里存一些属性", "image": "base64(和url二选一,image优先级更高) ", "url":"http:///xxx.jpp" }
Response
-
Body
{ "code": 10000, "message": "Successfully", "data": "8 返回数据id" }
4.以图搜图
根据图片搜索相似图片
Request
-
Method: POST
-
URL:
/milvus/img/search
-
Headers: Content-Type:application/json
-
Body:
{ "TOP_K": "2 查询多少个相似图", "table": "test", "url": "https://img.kakaclo.com/image%2FFSZW09057%2FFSZW09057_R_S_NUB%2F336bd601dfec33925ba1c581908b6c1e.jpg", "image": "base64(和url二选一,image优先级更高) ", }
Response
-
Body
{ "code": 10000, "message": "Successfully", "data": [ { "id": 513552, "tags": "", "brief": "", "distance": 0.00015275638725142926 }, { "id": 93, "tags": "", "brief": "", "distance": 0.0001584545971127227 } ] }
distance 越小相似度越高。