291 lines
21 KiB
Python
291 lines
21 KiB
Python
"""Extracted knowledge rules with unchanged business behavior."""
|
||
|
||
|
||
knowledge_list = [
|
||
# ==================== 一、订单 ====================
|
||
{
|
||
"keys": ["查询订单", "查订单", "订单查询", "订单在哪里", "我的订单在哪", "帮我查订单", "为什么查不到订单"],
|
||
"text": (
|
||
"请提供订单号、入仓号或关联运单号,并核验订单归属。"
|
||
"查询结果以实际记录为准。查不到时,应核对号码、查询范围和数据同步情况,"
|
||
"不能直接认定没有发货,也不能编造运输或清关结果。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["订单号和运单号", "订单号是什么", "运单号是什么", "入仓号是什么", "入仓码是什么", "一票多个单号", "主子订单"],
|
||
"text": (
|
||
"订单号识别业务订单,入仓号用于收货归集,运单号识别运输任务或包裹。"
|
||
"一票货可能因分包、分批或阶段换号产生多个编号,"
|
||
"应根据实际关联记录分别确认,不能把换号当成新增货物。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["付款后没发货", "付款了没发货", "下单后没发货", "下单后多久发货", "修改订单", "订单能修改吗", "取消订单", "订单能取消吗", "更换渠道"],
|
||
"text": (
|
||
"下单或付款成功不代表已出运,还需核对收货、审核和运输安排。"
|
||
"修改、取消或换渠道需根据当前操作阶段确认。"
|
||
"变更申请不等于执行成功,是否产生费用按适用规则确认。"
|
||
)
|
||
},
|
||
|
||
# ==================== 二、客户信息 ====================
|
||
{
|
||
"keys": ["手机号查订单", "用手机号查", "客户编号查订单", "客户号查订单", "公司名称查订单", "用公司名查", "代客户查询", "帮别人查订单"],
|
||
"text": (
|
||
"可按系统支持的方式辅助查找,但必须核验身份、订单归属及代理权限。"
|
||
"不能仅凭手机号或公司名称披露他人的完整订单、地址和联系方式。"
|
||
"查询权限与修改权限需要分别确认。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["联系人填错", "联系人写错", "手机号填错", "电话填错", "邮箱填错", "客户资料修改", "客户信息修改"],
|
||
"text": (
|
||
"客户账户资料与本票收发货资料需要分别管理。"
|
||
"修改账户资料不一定同步修改历史和在途订单。"
|
||
"在途信息变更需确认相关操作方是否接受并生效。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["订单负责人", "谁负责这票", "客户待办", "没收到通知"],
|
||
"text": (
|
||
"负责人、客户待办和通知情况应根据实际记录确认。"
|
||
"待办需说明具体事项、提交渠道及已确认的期限。"
|
||
"没有联系或送达记录时,不能认定客户已收到通知;"
|
||
"没有分配记录时,不能编造负责人和反馈时间。"
|
||
)
|
||
},
|
||
|
||
# ==================== 三、地址 ====================
|
||
{
|
||
"keys": ["收货地址怎么填", "地址怎么填写", "地址怎么写", "邮编不对", "邮编错误", "地址不完整", "地址不全", "缺少门牌"],
|
||
"text": (
|
||
"国际收货地址通常需要国家、州省、城市、街道、门牌、邮编、收件人及电话。"
|
||
"缺失或不匹配可能影响派送,具体要求以目的地和承运商为准。"
|
||
"补交资料后仍需确认是否修改成功。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["最终送到哪里", "最后送到哪里", "收货地址确认", "目的地址是什么", "提货地址和收货地址", "提货地址一样吗"],
|
||
"text": (
|
||
"提货、交仓、中转、清关和最终收货地址用途不同。"
|
||
"最终目的地应查询本票已生效的地址,并按权限展示。"
|
||
"到达中转仓或清关场所,不代表到达最终收货地址。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["修改收货地址", "改地址", "地址可以修改吗", "可以改地址吗", "更换收件人", "收件人可以改吗", "收件人改地址", "改送其他仓", "换仓地址", "FBA地址确认"],
|
||
"text": (
|
||
"改址需要核对货物阶段和执行方处理能力,"
|
||
"未确认生效前不能告知新地址已启用。"
|
||
"FBA或海外仓需核对当前货件完整地址及仓代码,"
|
||
"不能仅按历史仓代码表安排配送。"
|
||
)
|
||
},
|
||
|
||
# ==================== 四、节点 ====================
|
||
{
|
||
"keys": ["节点是什么意思", "什么叫节点", "节点和轨迹", "节点是什么", "已提交是什么意思", "订单已提交", "已接单是什么意思"],
|
||
"text": (
|
||
"节点是某一步发生的事件,轨迹是多个运输事件组成的记录。"
|
||
"已提交、审核通过、已接单属于业务处理状态,"
|
||
"本身不能证明仓库收到实物或货物已经出运。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["已预报是什么意思", "预报是什么意思", "已入仓是什么意思", "入仓是什么意思", "已装柜是什么意思", "装柜是什么意思", "已出运是什么意思", "出运了吗"],
|
||
"text": (
|
||
"已预报通常表示信息已提交,不一定已交实物;"
|
||
"已入仓表示仓库收货,不一定完成检查;"
|
||
"已装柜表示完成装载,不代表已经离港。"
|
||
"已出运需有实际离港、起飞、发车或交运依据。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["到港是什么意思", "到港了吗", "已提取是什么意思", "提取是什么意思", "已交末端是什么意思", "交末端是什么意思", "派送中是什么意思", "开始派送了吗"],
|
||
"text": (
|
||
"到港表示到达港口,之后可能仍需清关和交接。"
|
||
"已提取、已交末端通常表示当地承运商接收货物,需要核对接收方。"
|
||
"派送中表示进入配送环节,以上均不等于收件人签收。"
|
||
)
|
||
},
|
||
|
||
# ==================== 五、轨迹 ====================
|
||
{
|
||
"keys": ["完整物流轨迹", "物流轨迹怎么查", "运输轨迹怎么查", "有单号没有轨迹", "有单号查不到", "轨迹好几天没更新", "物流几天没更新", "轨迹不更新"],
|
||
"text": (
|
||
"轨迹应说明数据来源、覆盖范围及最后有效事件时间。"
|
||
"暂无记录可能涉及未交接、扫描未回传或查询源异常,需要核实。"
|
||
"长期没有更新不能直接认定丢失,没有数据的阶段不能自行补齐。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["换单号后怎么查", "单号换了", "新旧单号", "官网轨迹不一样", "轨迹不一致", "节点重复", "节点时间不一致"],
|
||
"text": (
|
||
"换号需保留新旧编号关联。"
|
||
"不同来源或节点时间不一致时,应核对时区、原始事件、回传及更正记录。"
|
||
"同步时间较新不一定代表事件较新,排查方向不能当作已确认原因。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["实时位置", "货物现在在哪", "预计到达时间", "预计什么时候到", "轨迹能证明签收吗", "轨迹能当到货证明吗", "模拟轨迹"],
|
||
"text": (
|
||
"节点地点通常表示某时经过该处,不等于实时定位。"
|
||
"预计到达时间属于计划,应注明来源和条件。"
|
||
"签收争议需核对POD等凭证,演示或模拟轨迹不能证明真实运输和交付。"
|
||
)
|
||
},
|
||
|
||
# ==================== 六、货物状态 ====================
|
||
{
|
||
"keys": ["履约中是什么意思", "履约中代表什么", "头程完成是什么意思", "头程完成了吗", "订单完成就是签收吗", "订单完成是不是签收"],
|
||
"text": (
|
||
"履约中表示订单正在执行,不能据此判断具体位置或清关阶段。"
|
||
"当前系统的头程订单已完成,不等于末端已签收,"
|
||
"也不能直接证明客户已收到货物。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["货物是否完好", "货物完好吗", "有没有少件", "少了几件", "货物受潮", "货物进水", "部分到货", "部分签收", "只到了一部分"],
|
||
"text": (
|
||
"货况需依据检查、交接件数和照片等记录确认,运输正常不能证明完好。"
|
||
"部分到货或签收时,应分别核对总件数及各件进度。"
|
||
"没有检查依据时说明尚未核实,不能用一件状态代表整票。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["已签收但没收到", "显示签收没收到", "签收人不认识", "谁签收的", "货物异常", "物流异常", "滞留是什么意思", "货物滞留"],
|
||
"text": (
|
||
"签收争议应核对签收人、交付地点、代收及POD,必要时调查。"
|
||
"异常或滞留需明确发生环节和实际原因,不能直接等同海关扣货。"
|
||
"调查前不能擅自认定货物丢失或客户已经收到。"
|
||
)
|
||
},
|
||
|
||
# ==================== 七、清关 ====================
|
||
{
|
||
"keys": ["清关了吗", "我的货清关了吗", "是否清关", "清关完成没有", "清关完成了吗", "有没有放行", "出口放行就是清关完成吗"],
|
||
"text": (
|
||
"查询清关需明确国家、出口或进口环节,并核对有效记录。"
|
||
"出口放行不代表目的国进口清关完成,到港和已付款也不能证明放行。"
|
||
"没有可靠数据时应说明暂未取得结果,不能把未知当作已完成或未完成。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["已申报是什么意思", "申报了吗", "清关中是什么意思", "现在清关中吗", "查验是不是没收", "被查验了吗", "清关为什么慢", "清关怎么还没好"],
|
||
"text": (
|
||
"申报动作、申报受理和放行需分别核实;"
|
||
"清关中表示手续正在处理,查验不等于没收。"
|
||
"具体等待原因以实际反馈为准,"
|
||
"不能保证统一天数或一定放行,清关状态也不一定按固定顺序变化。"
|
||
)
|
||
},
|
||
{
|
||
"keys": ["清关完为什么没派送", "清关了怎么没派送", "整票都清关了吗", "是不是整票放行", "税款交了吗", "税交了吗", "放行证明", "清关证明"],
|
||
"text": (
|
||
"资料、税费和放行状态需分别核实,客户付款不一定代表税款已缴。"
|
||
"放行范围需核对申报单、批次及包裹,不能用一件代表整票。"
|
||
"放行后可能仍需提货和末端交接;凭证提供需核对关联、授权和脱敏要求。"
|
||
)
|
||
},
|
||
{
|
||
"keys":["公司","柏悦","柏悦物流","介绍","哪家","哪家货代","你们是哪家","公司地址","办公地址","洛杉矶地址","纽约地址"],
|
||
"text":"浙江柏悦物流位于义乌,主营中欧跨境物流专线,依托义乌、宁波口岸优势,服务中小跨境卖家。主要渠道:欧洲海运快线、义乌-中欧铁路、中欧卡航、欧洲空运(空派)、英国空运,均支持欧洲、英国双清包税与VAT递延。义乌、泉州、广州、深圳均可交仓,公司地址位于:洛杉矶:10767 7th Street, Rancho Cucamonga, California 91730纽约:Door 13-14,75 Carter Dr Edison, New Jersey 08817义乌:浙江省义乌市福田街道稠州北路 1399 号 8613-8615 室深圳:深圳市南山区粤海街道海珠社区海德三道 1258 号卓越后海金融中心 1101。"
|
||
},
|
||
{
|
||
"keys":["海运","船运","海派","海运快线","樱花快线","欧洲海运价格","海运多少钱","海运多久"],
|
||
"text":"欧洲海运快线(双清/递延)单价:21KG+ 12.3元/kg,101KG+ 10.3元/kg,500KG+ 10.2元/kg,2000KG+ 10.0元/kg。时效:开船后38-45天提取。可走樱花快线(+0.3元/kg),递延价减1.7元/kg。主派送为UPS/DHL/DPD/CWE统配。"
|
||
},
|
||
{
|
||
"keys":["铁路","中欧班列","班列","义乌铁路","火车","铁路价格","铁路多久","铁路多少钱"],
|
||
"text":"义乌-中欧铁路专线单价:21KG+ 15.5元/kg,100KG+ 和 1000KG+ 均为13.5元/kg。时效:发车后36-40天提取。VAT递延减1元/kg。只限送义乌仓,义乌装柜经阿拉山口/霍尔果斯出境。"
|
||
},
|
||
{
|
||
"keys":["卡航","卡车","卡派","卡航价格","卡航多久","卡航多少钱"],
|
||
"text":"中欧卡航单价:21KG+ 19.4元/kg,101KG+ 和 500KG+ 17.4元/kg,2000KG+ 及 4000KG+ 17.3元/kg。时效:发车后欧盟16-20天提取。递延减1.5元/kg,普卡时效18-22天。纯纺织品另加5元/kg。"
|
||
},
|
||
{
|
||
"keys":["空运","空派","航空","欧洲空运","空运价格","空运多久","空运多少钱"],
|
||
"text":"欧洲空运专线(空派)单价:21KG+ 39元/kg,45KG+ 38元/kg,71KG+ 37元/kg,101KG+ 36元/kg。时效:10-13天左右提取;快线8-13天,直飞快线12-15天。一票多件单件不足12KG按12KG计费。"
|
||
},
|
||
{
|
||
"keys":["英国海运","英国铁路","中英卡航","英国专线"],
|
||
"text":"英国专线(DPD)双清价格:英国海运21KG+ 12.8元/kg、101KG+/301KG+ 10.9元/kg,时效约40天提取;英国铁路21KG+ 18.0元/kg、101KG+ 16.2元/kg,发车后25-30天提取;中英卡航21KG+ 21.4元/kg、101KG+ 19.4元/kg,发车后20-22天提取。VAT自税/递延价更低(海运10.0/8.1、铁路15/13.2、卡航18.4/16.4)。北极航线英国海运25-28天,价格单询。卡航单件不超30kg、尺寸≤98×68×59cm。"
|
||
},
|
||
{
|
||
"keys":["英国空运","英国空运价格","英国空运多久","英国空运多少钱","英国","UK","伦敦"],
|
||
"text":"英国空运专线(双清)单价:22KG+ 48元/kg,51KG+ 44元/kg,101KG+ 42元/kg,时效8-10个自然日提取。VAT自税/递延为44/40/38元/kg,带电货47.5/42.5/41.5元/kg。拒收北爱尔兰、苏格兰高地等偏远地址。"
|
||
},
|
||
{
|
||
"keys":["报价","价格","费用","计费","怎么收费","计费重量","计费重量怎么算","材积重","体积重","多少钱","运费","运费怎么算","单价"],
|
||
"text":"运费计算方式:阶梯单价 × 计费重量。计费重量 = 实重与材积重取大值,材积 = 长×宽×高(cm)÷6000,即1CBM=167KG。各渠道最低起收21KG(英国空运22KG)。单件计费重不足13KG的渠道(铁路、卡航)按5元/kg加收超轻费;空运单件不足12KG按12KG计费。偏远地址加7元/kg,单票最低250元。价格不含税,税点以开出的发票为准。"
|
||
},
|
||
{
|
||
"keys":["时效","运输时效","多久","要几天","多长时间","几天到","什么时候到"],
|
||
"text":"各渠道时效:欧洲海运快线开船后38-45天提取;中欧铁路发车后36-40天提取;中欧卡航发车后16-20天提取;欧洲空运10-13天提取;英国空运8-10个自然日提取。海关查验、罢工、节假日等不可抗力导致的时间不计入。"
|
||
},
|
||
{
|
||
"keys":["揽收","上门取件","上门收货","可以上门取货吗","交仓","交货","哪里交仓"],
|
||
"text":"义乌、深圳(龙华观澜、宝安福园)、广州(石井)、泉州均可交仓,义乌仓10:00-21:00收货。欧洲空运交仓义乌+1元/kg,泉州、广州+0.5元/kg;海运、铁路、卡航泉州交货+0.5元/kg。"
|
||
},
|
||
{
|
||
"keys":["入仓","进仓","仓库收货","仓库地址","仓库在哪","义乌仓","深圳仓","广州仓","交仓地址","送仓"],
|
||
"text":"义乌仓:义乌市稠江街道梦娜袜业德贸路东三门进,李东文 19558263692(10:00-21:00)。深圳龙华:龙华区观澜街道君子布社区张一村路黄背坑路1号B栋,张长印 18688937838。深圳宝安:福园二路九号海亨通物流B区C09-C14。广州:恒河沙仓储石井仓211,潘志红 13789206500。送货需打印交接清单随货交仓。"
|
||
},
|
||
{
|
||
"keys":["理赔","货损","丢件","赔付","破损","压坏","索赔","怎么理赔","丢件怎么赔","理赔多久"],
|
||
"text":"遗失赔付:未提取上网遗失按申报价值赔偿,最高不超过40元/kg,不退运费;已提取遗失按服务商标准,最高100USD/票。开查时间:交仓后7天未提取可申请开查,开查30天无果走索赔。签收后亚马逊未上架需2周内提出调查,包裹异常需1个月内提出。外包装无损的内件丢失不支持理赔,易碎品损坏不支持理赔。可自购保险,保费为货值千分之三(电池千分之五)。"
|
||
},
|
||
{
|
||
"keys":["超轻费","计费重量不足","最低计费","重量不够怎么收费"],
|
||
"text":"单件计费重量不得低于13KG(空运12KG),可整票按平均13KG算,不足部分按5元/kg加收超轻费。例:单箱只有12KG,加收5×1=5元超轻费。欧洲热门仓卡派直送要求单件平均计费重12KG,不足按2元/kg加收派送费。"
|
||
},
|
||
{
|
||
"keys":["偏远","偏远费","偏远地址","偏远怎么查","偏远收费"],
|
||
"text":"偏远地址加收7元/kg(不含燃油),单票偏远费最低消费250元/票。需要自行到UPS/DPD官网查询目的地址是否偏远,我司出货时不另行通知,以账单为准,偏远费6个月内有效。"
|
||
},
|
||
{
|
||
"keys":["超重","超长","超大","尺寸限制","尺寸超了","超尺寸怎么收费"],
|
||
"text":"欧洲空运最长边≤99cm、次长边≤75cm、实重<24KG。英国DPD单件≤30KG,尺寸100×70×60cm以内,超重或超长各加收330元/件。UPS单边最长≤99cm、次边≤75cm、单件<24KG,超出加收240元+100元。热门仓卡派直送:单件超40KG加收30元/件。"
|
||
},
|
||
{
|
||
"keys":["敏感","敏感货能发吗","带电","电池","液体","粉末","禁品","不能寄","什么不能寄","违禁品","拒收","拒接"],
|
||
"text":"可接带标准箱100瓦以下非危电池/内电产品(C卡航、海运快线均可),资料齐全加1元/kg,资料不齐加2元/kg;手机、平板电脑加5元/kg。拒接:纯液体、纯粉末、药品、食品、易燃易爆、仿牌侵权、木制品(空运)、陶瓷手表等反倾销品、电子烟、管制刀具、枪支。电池第一个托收400元/件,第二个起100元/件,600元封顶。"
|
||
},
|
||
{
|
||
"keys":["清关","清关资料","清关要什么资料","递延","VAT","VAT递延","双清","双清包税","包税","DDP"],
|
||
"text":"欧洲、英国渠道均支持双清包税与VAT递延(只付关税,增值税销售后缴纳)。递延需提供法人护照/身份证、欧盟VAT和EORI号及回执、营业执照、4份模板文件原件扫描件PDF。罗马尼亚等欧盟国家有二次清关风险,二次关税由客户自行缴纳。"
|
||
},
|
||
{
|
||
"keys":["报关","怎么报关","单独报关","报关费","报关多少钱"],
|
||
"text":"单独报关费用:空运350元/票,海运200元/票,铁路250元/票,卡航200元/票,续页费50元/页。一达通报关500元/票。单票品名最多5个,第6个起加收30元/个。报价不含税,税点以开出的发票为准。"
|
||
},
|
||
{
|
||
"keys":["亚马逊","亚马逊仓","FBA","FBA头程","海外仓","仓库配送","卡派直送"],
|
||
"text":"支持FBA头程送亚马逊仓,热门仓卡派直送(德国WRO5/HAJ1/DTM1/DTM2、法国CDG7/LIL8、意大利TRN3、西班牙BCN8、罗马尼亚EMAG等)。卡派直送优势:超重附加费少、不限尺寸重量、上架快、基本无丢件。法国、意大利、西班牙其他亚马逊仓不能超UPS标准。"
|
||
},
|
||
{
|
||
"keys":["人工客服","人工","客服","转人工","在线吗","上班","工作时间","营业时间","几点","周六","周日","星期六","星期日","星期天","礼拜","周末","双休","节假日","放假","休息"],
|
||
"text":"人工客服在线时间:周一至周五 9:00—18:00。周六、周日及法定节假日人工客服不上班。非工作时间可以先留言或提交需求,业务员会在下一个工作日回复您。"
|
||
},
|
||
{
|
||
"keys":["电话","联系方式","怎么联系","联系你们","微信"],
|
||
"text":"可以联系您的专属业务员,或在人工客服在线时间(周一至周五 9:00—18:00)通过在线客服咨询。建议提前准备好运单号、货物信息(品名、重量、尺寸、目的国),方便快速处理。"
|
||
},
|
||
{
|
||
"keys":["退件","退回","退货","退运","怎么退运"],
|
||
"text":"海运/铁路为散货拼柜,已装柜不接受退件和扣件。空运国外扣件费200欧/票,收件人改派地址最低200元/票。退回海外仓:德国境内15欧/件,欧盟境内25欧/件,操作费100元/票,5个工作日免仓储,超期1欧/kg/天。重派德国10欧/件、欧盟20欧/件。"
|
||
}
|
||
]
|
||
|
||
def search_knowledge(question):
|
||
"""按关键词命中打分:命中的关键词越长越具体,得分越高"""
|
||
q = question.lower()
|
||
best, best_score = None, 0
|
||
for item in knowledge_list:
|
||
for k in item["keys"]:
|
||
if k.lower() in q:
|
||
score = len(k) # 长关键词更具体,优先
|
||
if score > best_score:
|
||
best, best_score = item["text"], score
|
||
return best
|