当前位置: 首页 > news >正文

建设代刷网站怎么优化网站关键词排名

建设代刷网站,怎么优化网站关键词排名,台州市建设局网站,幸福宝推广app网站入口以图搜图服务快速搭建 电商公司,管理的商品少则几千,多则上百万。如何帮助用户从多如牛毛的商品中找到类似的商品就成了问题。 以图搜图就可以很好的帮助解决这个问题,通过 Towhee(resnet50 模型) Milvus 如何实现本…

以图搜图服务快速搭建

电商公司,管理的商品少则几千,多则上百万。如何帮助用户从多如牛毛的商品中找到类似的商品就成了问题。

以图搜图就可以很好的帮助解决这个问题,通过 Towhee(resnet50 模型) + Milvus 如何实现本地环境搭建以图搜图。

Towhee 负责解析图片的特征向量,Milvus 负责存储特征向量然后进行向量查询。

Milvus Bootcamp 提供了很多解决方案 ,https://milvus.io/bootcamp/
在这里插入图片描述

其中就包含以图搜图的解决方案,根据图片相视度解决方案demo,这里实现了比较时候适合公司前后的分离环境的开箱即用的api实现。

配合前端大致效果如下:
在这里插入图片描述

包含如下接口

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 越小相似度越高。

5.删除图片

根据id删除

Request

  • Method: POST
  • URL: /milvus/img/delete?id={id}&table={table}
    • 删除test表id为6的数据 /milvus/img/delete?id=6&table=test
  • Headers:
  • Body:

Response

  • Body
{"code": 10000,"message": "Successfully"
}

6.删除整个数据集

删除milvus的和mysql的表,这个接口慎用,mysql和milvus数据会全部清除。

Request

  • Method: POST
  • URL: /milvus/img/drop?table={table}
    • 删除test数据集: /milvus/img/drop?table=test
  • Headers:
  • Body:

Response

  • Body
{"code": 10000,"message": "Successfully"
}

7.重新加载已经解析出特征的数据到milvus

这个在milvus升级、迁移和milvus数据损坏的情况下使用

可以将数据集对应的mysql表upload_status更新为0进行重新入milvus。

Request

  • Method: POST
  • URL: /milvus/img/load?table={table}
    • 将test mysql笔中upload_status为0的数据重新加载到milvus中: /milvus/img/load??table=test
  • Headers:
  • Body:

Response

  • Body
{"code": 10000,"message": "Successfully"
}

快速实践

环境安装

首先我们先有如下环境 python3,mysql,Milvus

python3,mysql就不多说了

Milvus 参考 https://milvus.io/docs/v2.1.x/install_standalone-docker.md

源码

https://github.com/AndsGo/reverse_image_search

配置

找到config.py

替换对应的 MILVUS 配置T 和 MYSQL配置

import os############### Milvus Configuration ###############
MILVUS_HOST = os.getenv("MILVUS_HOST", "127.0.0.1")
MILVUS_PORT = int(os.getenv("MILVUS_PORT", "19530"))
VECTOR_DIMENSION = int(os.getenv("VECTOR_DIMENSION", "2048"))
INDEX_FILE_SIZE = int(os.getenv("INDEX_FILE_SIZE", "1024"))
METRIC_TYPE = os.getenv("METRIC_TYPE", "L2")
DEFAULT_TABLE = os.getenv("DEFAULT_TABLE", "milvus_img_search")
TOP_K = int(os.getenv("TOP_K", "10"))############### MySQL Configuration ###############
MYSQL_HOST = os.getenv("MYSQL_HOST", "127.0.0.1")
MYSQL_PORT = int(os.getenv("MYSQL_PORT", "3306"))
MYSQL_USER = os.getenv("MYSQL_USER", "root")
MYSQL_PWD = os.getenv("MYSQL_PWD", "123456")
MYSQL_DB = os.getenv("MYSQL_DB", "milvus")
ERP_MYSQL_TABLE = os.getenv("ERP_MYSQL_TABLE", "milvus_img_search")############### Data Path ###############
UPLOAD_PATH = os.getenv("UPLOAD_PATH", "tmp/search-images")DATE_FORMAT = os.getenv("DATE_FORMAT", "%Y-%m-%d %H:%M:%S")############### Number of log files ###############
LOGS_NUM = int(os.getenv("logs_num", "0"))

数据库表结构 ,表是自动生成的

CREATE TABLE `test` (`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',`milvus_id` bigint(20) DEFAULT NULL COMMENT 'milvus 数据id',`tags` varchar(32) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '标识',`brief` varchar(500) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '图片摘要',`upload_status` tinyint(2) DEFAULT '0' COMMENT '0 待上传到milvus 1成功上传到milvus',`feature` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin COMMENT '图片特征向量',`create_date` datetime(3) DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',`modify_date` datetime(3) DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '修改时间',PRIMARY KEY (`id`),KEY `idx_tags` (`tags`) USING BTREE,KEY `idx_milvus_id` (`milvus_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='图片上传记录表';

启动

sh start_server.sh

Attu

https://milvus.io/docs/attu.md

Attu是 Milvus 的高效开源管理工具,提供了GUI显示

img
原文:

http://www.zhongyajixie.com/news/34825.html

相关文章:

  • 中英双语网站程序seo每天一贴博客
  • seo网站运营百度推广运营专员
  • 番禺建设局网站万网注册域名查询官方网站
  • 温州微网站制作公司电话王通seo赚钱培训
  • 机关党建网站建设策划百度app下载安装官方免费下载
  • 网站风格和色调苹果被曝开发搜索引擎对标谷歌
  • 网站定制开发流程和功能网络科技公司
  • 无锡建设银行官网招聘网站如何用网站模板建站
  • 东川网站制作宁德市蕉城区疫情
  • 做哪些网站可以赚钱的建网站公司哪里好
  • 做购物网站哪个cms好用如何建立免费公司网站
  • 火车头采集发布wordpress常州网站seo
  • 在线商城网站开发代码如何自己做一个网址
  • 网页建站如何保存分享seo建站是什么
  • 植物提取网站做的比较好的厂家百度seo公司哪家好一点
  • 深圳网站制作公司报价如何进行线上推广
  • 政府网站建设国外能看吗运营seo是什么意思
  • 四川监理协会建设网站seo解释
  • wordpress 如何置顶文章汕头seo排名
  • 北京网页设计公司兴田德润优惠seo服务外包客服
  • 一般做外贸上什么网站上海谷歌seo
  • 关于网站建设请示网站推广优化流程
  • 网站开发应用开发全国疫情最新情况
  • 网站建设-设计竞价排名采用什么计费方式
  • 网站信息备案变更 哪里做静态网站模板
  • 旅游门户网站建设谷歌seo博客
  • 做北美市场的外贸网站百中搜优化
  • 电脑和手机同步编辑wordpresspc网站优化排名
  • 东莞做网站一般多少钱西安seo关键词查询
  • 网站建设及推广衬胶蝶阀江北seo页面优化公司