有一个产品明细表,数据10万条,带价格,现在有一个1000条产品的表格,需要到10万条数据里面找最相似的,并将价格列出来,同一产品名称不同,比如数据库里有大竹杆,大扫把,竹扫把1.9米,大扫帚等,我们查的产品可能是芨芨草扫把,需要从里面找到最相似的,我们现在的做法是系统一个字符一个字符去比对,找到比对上最多的,列出来,人工判定,今天通过大模型比对了一些案例,感觉效果很好,
主要体现在:一、分词很好,能找出一条数据里面的关键词,能识别规格型号,材质、工艺、品牌等等,都能识别出来;
二、有逻辑,比如,烧杯有50ml、100ml、500ml,能找到最接近的;
三、能根据逻辑判断哪个最相似,
如,玻璃烧杯/100ml 高型烧杯|50ml 高型烧杯|3000ml,这三个最接近的是哪两个,大模型给出的回答是:我们可以设定一个简单的评分系统,其中每个匹配的特征得到一定的分数,不匹配的特征得0分。假设满分为3分(每项1分),
我们可以这样计算:1.关键名词:烧杯与高型烧杯在功能上相似,但高型烧杯更具体,考虑到这一点,我们可以给“烧杯”与“高型烧杯”之间相似度评分为0.5分(因为高型烧杯是烧杯的一种,但不是所有烧杯都是高型的)。
2.3.材质:“玻璃”在第一个描述中出现,而在后两个描述中未提及。但由于烧杯通常默认为玻璃材质,我们可以假设相似度为1分,除非有相反的证据。
4.5.规格尺寸:容量不同,这意味着在这一项上没有相似性,得分为0分。
6.基于以上,我们可以计算两两之间的相似度得分:玻璃烧杯/100ml 与 高型烧杯|50mlo名称相似度 = 0.5分o材质相似度 = 1分o规格尺寸相似度 = 0分o总相似度 = 1.5分玻璃烧杯/100ml 与 高型烧杯|3000mlo名称相似度 = 0.5分o材质相似度 = 1分o规格尺寸相似度 = 0分o总相似度 = 1.5分高型烧杯|50ml 与 高型烧杯|3000mlo名称相似度 = 1分(因为两者都是高型烧杯)o材质相似度 = 1分(假设两者都是玻璃材质)o规格尺寸相似度 = 0分o总相似度 = 2分如果将总分3分视为完全相同,那么可以认为:“玻璃烧杯/100ml”与另外两种烧杯的相似度为50%(1.5/3)。“高型烧杯|50ml”与“高型烧杯|3000ml”的相似度为66.67%(2/3)。
但是,大模型只能一个一个去问,如果我有一个数据库,存了10万条数据,现在有1000条数据去一条一条找10万条数据里面最相似的,用什么样的方法更好呢?
假设我们现在有"关键名词、型号、尺寸及规格、材质、工艺、重量、标准号、外观颜色、包装、其他技术要求"这些属性,我们对10万条基础数据进行处理,让大模型先分词,然后导出存到本地查询数据库里,若每次查询的时候就先导入大模型,分词完以后,到本地查询数据库,用常规模糊查询,但是,这里面有个特别关键的问题,外面的系统查询能不能做的更像大模型,比如,导出一个烧杯75ml,分词以后,烧杯,75ml,但是系统只有50ml和100ml的,还有其他的250ml的,等等,能不能导出最接近的价格略高的那个尺寸,如这几个里面最优解就是100ml,这种怎么实现,这种例子很多,再比如,系统存了单位是公斤,如果大模型,天然的知道和kg是一个东西,然而,导出以后,没有大模型的帮助,这些都很难判断,类似的例子太多了。
谁有更好的办法解决这个问题,可以联系我,价格面议。
任务到期关闭
一品威客网已聚集超千万专业人才,为雇主提供一站式优质服务