FBA出单资料、实体生成资料、全套资料实体抽取落库及应用
需求详细文档:https://alidocs.dingtalk.com/i/nodes/oP0MALyR8k7y4Br5hYYAg4AD83bzYmDO?utm_scene=person_space
一、需求背景
基于实体抽取应用效果,调整线上实体抽取的逻辑,增加数据来源
需求实现:
一、实体生成类型定义

二、调整原实体存储逻辑
a、实体类型修改为两种类型(新增一个字段来记录),一种是抽取,一种是生成,原多套资料的实体和FBA出单的实体都是抽取,新增的实体生成为生成类型。
b、原实体类型字段改到具体实体关键词维度记录(全套资料为2,FBA资料为3),即每一个实体词都有一个类型,原多套资料初始化的实体类型字段要调整位置,新增的FBA的插入,如果是多个类型则该实体词记录多个类型
举例:
"Applicable Scenario": [ {"keyword":"Sport","type":"2,3"} ,{"keyword":"Home","type":"2,3"}],
"Color": [ {"keyword":"Red","type":"2"} ],
"Core Product Term": [ {"keyword":"Mask","type":"2"} ],
"Material": [ {"keyword":"PP","type":"2"} ],
"Product Accessories": [ {"keyword":"Bag","type":"2"}],
"QuantityPack": [ {"keyword":"2pcs","type":"2"} ],
"Target User Group": [ {"keyword":"Kid","type":"2"}]
二、修改实体抽取的服务
新增FBA出单资料、实体生成资料
a、FBA出单资料,定期全量执行,执行后的数据与原全套资料的数据进行融合存储
步骤一:按照SKU维度执行,筛选并确定FBA链接,筛选满足以下条件的FBA链接:
➢ 链接历史销量大于0;
➢ 链接状态为在线;
➢ 所属店铺状态正常;
➢ 所属站点为英语站点(US、AU、CA、GB);
➢ 店铺所属部门为“智能研发”或“亚马逊平台运营中心”。
➢ 每个 SKU 按销量降序,最多保留前5条链接(注意需要在任务表中记录抽取的时候的asin明细,后面要用到)。
步骤二:获取属性信息,并清洗,字段如下:
➢ 标题;
➢ 五点描述;
➢ 产品描述。
产品描述按以下规则清洗:
1. 将转义的换行符还原为真实换行;
2. 解码HTML实体;
3. 移除HTML标签并保留段落换行;
4. 将不间断空格转换为普通空格;
5. 合并连续空白字符;
6. 删除空行及首尾空格;
7. 输出干净的纯文本描述。
(处理代码参考具体需求文档)● 步骤三:以聚合后的 SKU 资料调用实体抽取批量接口 http://showdoc.zhcxkj.com/web/#/118/6499,接口返回实体(拼装逻辑与多套资料的一致)。
● 步骤四:实体入库:
➢ 数据保存到实体库,只保存新增的实体词(注意可能原来这个实体词是2类型,如果3类型也抽取出来了,这个时候需要调整类型字段);
➢ 新增实体的来源类型标记为“FBA出单资料(3)”。
● 执行时机:
○ 首次全量执行:过滤停产,全站点仿牌,全站点禁售的SKU,剩余的SKU轮循进行调用(注意筛选不出来FBAlisting的数据不执行)
○ 增量执行:
➢ 每天执行一次;筛选付款时间范围为昨天00:00至今天00:00的SKU,采用左闭右开区间;
➢ 针对这个时间区间的SKU进行一次重新调用,具体判断逻辑如下;
- SKU 历史没有执行过:正常执行。
- SKU 历史执行过,且上一次链接条数等于 5:不执行。
- SKU 历史执行过,且上一次链接条数少于 5:
- 本次出单 ASIN 在上次抽取范围内:不执行。
- 本次出单 ASIN 不在上次抽取范围内:重新抽取。
b、实体生成
● 步骤一,筛选产品:
1. 以SKU维度执行,筛选条件:
客户ID为1、非组合SKU、非成人用品、非全站点仿牌产品、非全站点禁售产品、非停产产品、产品终审通过、主类目复审通过。
产品表仅用于筛选SKU及获取图片。标题、五点、描述、实体名称和产品中文名称统一通过多套资料接口获取。
2. 确认已有的实体信息
执行实体生成前,必须确认当前 SiteCode + SKU 对应的以下任务均已执行完成一次完整的流程:
➢ 英文全套资料实体抽取成功;
➢ FBA出单资料实体抽取成功。
不符合2的数据标记为暂不执行,七天后chogn
步骤二、实体抽取资料准备
1、获取抽取的实体信息,读取全套资料、FBA出单资料下四类实体
➢ Applicable Object
➢ Applicable Scenario
➢ Functional Features
➢ Target User Group
同一类型内按实体词去重。某个类型无数据时传空数组;四个类型均无数据时传空对象,并继续根据产品文本和图片生成。
confirmed_entities: {
Applicable Object: xxx,
Applicable Scenario: xxx,
Functional Features: xxx,
Target User Group: xxx
}
2. 获取产品图片:
➢ 从 rb_product.ImageUrl 获取产品首图;
➢ 从 rb_product_image 获取有效的非封面场景图,图片数量上限为 8 张(不含首图)。
● 处理规则:
➢ 首图固定排在第一位;
➢ 场景图排在首图之后;
➢ 无可用图片时,使用文本资料继续生成。
3.获取多套资料等信息
● 步骤二:调用批量实体生成批量接口 http://showdoc.zhcxkj.com/web/#/118/6974。
入参说明:model_name 固定为 gpt-5。
● 步骤三:清洗接口返回结果:
仅处理接口状态为成功的结果,并读取 expanded_entities
保留以下五种实体类型:
➢ Applicable Object
➢ Applicable Scenario
➢ Functional Features
➢ Purchase Motivation
➢ Target User Group
每个实体保留:
● 实体类型
● 实体词 value
● 置信度 confidence
返回参考样例:

● 步骤四:实体入库,注意与抽取的实体不在同一条数据中,保存到类型为生成实体的那条数据中:
已存在相同实体词时不重复新增,但更新置信度
新实体词正常新增
标记来源类型为 实体生成来源(类型为11)
● 执行时机:
○ 首次初始化所有符合SKU条件的SKU,注意这个需求上线的时候先初始化全套的实体,再初始化FBA的实体,再初始化实体生成的实体
○ 增量触发
初始化完成之后,根据全套资料生成任务或者FBA资料抽取任务来触发,即有这两类任务完成的SKU,触发一次实体生成资料。
五、应用文档:
https://alidocs.dingtalk.com/i/nodes/o14dA3GK8g50BqLnFn2P0EL9V9ekBD76?utm_scene=person_space




全套资料的抽取,描述部分也要按照这里的描述清洗逻辑来执行
1. 将转义的换行符还原为真实换行;
2. 解码HTML实体;
3. 移除HTML标签并保留段落换行;
4. 将不间断空格转换为普通空格;
5. 合并连续空白字符;
6. 删除空行及首尾空格;
7. 输出干净的纯文本描述。