Contour · 面向时尚电商的 AI 尺码预测
退货问题的本质是尺码问题,而尺码问题本质上是一个物理问题。针对给定的身体数据(身体测量值,无需照片)与成衣(面料力学特性加成衣成寸),Contour 计算各身体分区的周向应变并对照该面料的拉伸极限,进而给出高置信度的推荐尺码;当没有合适尺码时,则如实弃权。智能体提供建议,代码作出裁定。
+40 个百分点
相比仅依腰围的传统尺码表,准确率提升幅度达 100% 对 60%
经标注的 105 对合成黄金测试集
67.6%
获得单一高置信度推荐尺码的配对比例,顾客无需跨尺码买二退一
同一 105 对黄金测试集,置信度不低于 0.80
39 / 105
在购买前即被拦截的尺码冲突(依腰围尺码表本会错发)
同一 105 对黄金测试集
基于 15 位顾客合成队列与 8 款服装目录的可运行机制演示。确定性应变引擎与基准测试完全离线运行,无需 API 密钥;可选智能体是唯一可调用模型的部分。
服装退货主要由尺码不合引起,其根因是力学问题,而非外观视觉问题。
53% 至 67% 的服装退货与尺码相关,约 63% 的顾客会采取跨尺码购买(即一次订购两个尺码退掉一个,参考 Veriprajna WP34 研究报告,2026 年,基于行业数据来源)。承运商吞噬了逆向物流成本,而牛仔裤因弹力、裤裆上升高度(rise)与腰部力学特性,恰恰是退货率最高的服装品类之一。
其根本原因显而易见:尺码表用 4 个一维数字去描述一个三维人体,并且完全不知道面料是零弹力的原色赤耳牛仔布还是四向弹力罗马布。因此,同样的腰围测量值,在硬质无弹牛仔裤上会让顾客选错尺码,而在弹力牛仔裤上则是正确尺码——尺码表根本无法区分这两种服装。跨尺码买二退一,是顾客面对无法感知面料的工具时作出的理性反应。
服装行业的本能反应一直是用更好的图片来解决退货。生成式虚拟试穿能让衣服穿在身上看起来很合身,但图片无法告诉你当顾客坐下时大腿围是否会超出该牛仔布的拉伸极限。尺码是否合身是一个力学事实:即各身体分区的周向应变是否突破该面料的弹性极限。这正是尺码表遗漏、渲染图从未具备的物理量,也是 Contour 计算的核心量。
一条流水线,分阶段呈现。承担核心责任的决策完全运行在经过单元测试的普通 Python 代码中,绝不由模型决定。
针对身体数据与成衣,流水线依次运行:面料力学智能体从供应商文案中提取结构化规格,对抗性审查器进行验证且有权否决阻断,应变引擎以纯代码裁定尺码,策略门控挑选合适尺码或如实弃权,最后由试穿说明智能体表述结果。在任何语言模型触及措辞之前,决定推荐结果的每一个数值均已计算完毕。
独立于任何语言模型之外的核心部分。对于每个候选尺码,应变引擎计算各分区应变(公式为身体周长减去成衣成寸周长除以成衣成寸周长),然后将每个分区的应变与面料的弹性极限及分区舒适区间进行对比。策略门控选取全部分区总遗憾值最低的尺码;若没有任一尺码能在所有分区均满足舒适要求,则如实弃权。这是承担核心责任的决策,完全运行于纯 Python 中,并由 8 个单元测试固化物理规律,因此系统信任绝不依赖模型幻觉。
在核心引擎之上,类型化智能体团队负责读取与交互沟通。FabricMechanicsAgent 将凌乱的商品文案(标题、纤维成分、克重与织造结构)转化为结构化的面料规格,包含弹力等级、弹性应变极限以及证明各项参数的原始文案片段。FabricMechanicsCritic 对照物理约束检查该规格并阻断逻辑矛盾。FitNoteAgent 对计算结果进行自然语言表述。各建议智能体支持自由切换提供商,默认采用 claude-opus-4-8;在无 API 密钥时面料提取回退至缓存规格,确定性引擎依然实时运行,因此演示可完全离线录制。智能体提供建议,代码作出裁定。
| 阶段 | 功能职责 | 实现基础 |
|---|---|---|
| FabricMechanicsAgent | 读取供应商商品文案,生成包含弹力等级、弹性应变极限、克重与佐证文案短语的结构化面料规格。 | LLM,类型化 |
| FabricMechanicsCritic | 对照物理约束审查面料规格并阻断矛盾,将异常项路由至人工审核而不下发推荐。 | LLM 加确定性规则 |
| Strain engine(应变引擎) | 针对每个候选尺码,计算各分区相对于面料弹性极限的周向应变。 | 纯代码,裁定 |
| Policy gate(策略门控) | 挑选全部分区总遗憾值最低的尺码,若无尺码在所有分区均达标则执行弃权。 | 纯代码,弃权 |
| FitNoteAgent | 用自然语言表述计算得出的结果(例如「臀部贴身,大腿宽松」)。它绝不参与数值计算。 | LLM,表述层 |
| 审计回执与 API | 生成可重放的 JSON 审计回执,并在 /api/fit 端点向 AI 购物智能体输出相同结果。 | 确定性输出 |
持久价值在于物理力学模型加上审计回执,而不是一个猜测尺码更准的模型。即使是完美的语言模型,依然需要面料力学、身体几何、分区应变计算、弃权策略以及可重放的回执。这套基础设施才是真正的产品;LLM 只是其中一个可随时替换的建议组件,正因如此,本方案绝不会随着基础模型的迭代而过时淘汰。
所有顾客与服装数据均为合成生成:包含 15 个身体样本的队列和 8 款服装目录,采用虚构名称。屏幕上的每一个数值均由引擎在运行时实时生成,绝非硬编码。
Riley 试穿 Ironside 14oz 原色赤耳直筒牛仔裤时,系统以 95% 的置信度推荐 29 码,且各分区均处于舒适状态。仅依腰围的尺码表会推荐 28 码,但这将是错误的:在 28 码下,大腿围会超出该零弹力牛仔布的拉伸极限。分区应变条让这一力学状态清晰可见,各分区落在面料舒适区间内时显示为绿色。尺码表无法感知面料,因而遗漏了决定尺码的关键变量。
将完全同一位顾客切换至外观相似的 Driftwood 弹力修身牛仔裤,正确尺码降为 28 码,置信度 90%,且各分区完全合格。此时仅依腰围的尺码表恰好也落在 28 码,这是因为该面料的弹力包容了大腿围度(而在原色赤耳牛仔布上大腿围会过紧)。这就是核心论点的集中体现:同一身体,一条裤子穿 29 码,外观相似的另一条穿 28 码,因为引擎计算了各面料的拉伸极限如何与该身体相匹配。
顾客 Jordan 试穿 Ironside 原色赤耳牛仔裤时出现真实的尺码冲突:小尺码大腿围过紧,大尺码腰围偏松,且在这款零弹力面料上没有任何一个尺码能在所有分区同时达标。Contour 以 58% 置信度给出诚实的弃权裁定,推荐相对最不差的尺码,并建议顾客跨尺码选购或咨询造型顾问。相比之下,仅依腰围的尺码表仍会盲目自信地输出 28 码。在标注黄金测试集中,引擎对 105 对数据中的 33 对执行了弃权,而不是强行猜测。
Maverick 原色赤耳弹力牛仔裤附带了物理上自相矛盾的供应商文案——100% 纯棉原色赤耳牛仔布却标有「四向弹力」。FabricMechanicsCritic 拒绝进行参数推断:原色赤耳与弹性纤维在力学上无法兼容,硬质梭织面料不可能具备四向弹力。系统不输出任何尺码推荐,并将该商品路由至人工审核。这属于诚实治理行为,而非计分指标,且该服装被刻意排除在计分黄金测试集之外;它的存在正是为了展示阻断机制。
在由 15 个身体样本针对 7 款计分服装构成的 105 对合成标注黄金测试集上,Contour 取得了 100% 的准确率,而仅依腰围的基线仅为 60%,提升达 40 个百分点;成功捕获 39 处尺码冲突,并将 67.6% 的样本判定为单一高置信度尺码。每次呈现均需声明测试范围:黄金测试集的标签采用了与引擎相同的可测量面料拉伸数据,因此 100% 是该构建数据集本身的特有属性,而非开放世界的通用保证。真正具有持久独立价值的数据是相比真实传统方案提升的 +40 个百分点,且在硬质面料上品类优势最为显著:原色赤耳为 100% 对 33%,硬质斜纹裤为 100% 对 40%,羊毛西服为 100% 对 53%,挺括贡缎为 100% 对 60%,弹力牛仔为 100% 对 53%,罗马布针织为 100% 对 87%,罗纹针织为 100% 对 93%。在超高弹力针织面料上,面料几乎包容了所有形变,简单的腰围匹配几乎能追平效果。
每一次推荐都会写入一份 JSON 审计回执:包含提取的面料规格及驱动各参数的精确原始文案片段、审查器裁决、完整的各尺码应变矩阵,以及决策结果与其置信度。相同的结果通过 /api/fit 以机器可读的 Payload 形式提供给 AI 购物智能体,输出推荐尺码、置信度、弃权标记、各分区合身度数组以及审计 ID。随着电商向代表我们进行交易的智能体演进,它们读取的尺码信号必须具备置信度评分且可审计——它是一份结构化报告,而非一张渲染图片。
它是尺码智能层、物理力学与诚实策略系统,而非更漂亮的渲染图或更花哨的猜测器。
| 关注维度 | 尺码表或虚拟试穿 | Contour |
|---|---|---|
| 面料拉伸极限 | 完全隐形;硬质与弹力面料使用相同数值 | 按身体分区对照各面料弹性极限精确计算 |
| 同一身体试穿两款相似牛仔裤 | 两者给出同一尺码,在硬质面料上常出错 | 原色赤耳推荐 29 码,弹力牛仔推荐 28 码,各自精准 |
| 当无合适尺码时 | 仍然输出一个盲目自信的尺码 | 如实弃权并建议跨尺码购买或咨询造型师 |
| 自相矛盾的供应商文案 | 不加校验直接放行 | 被对抗性审查器阻断,并路由至人工审核 |
| 由谁裁定尺码 | 查表法,或未经审计的模型 | 确定性、经单元测试验证的应变引擎,而非 LLM |
| AI 购物智能体读取的内容 | 一张图片,或没有任何机器可读数据 | 带有置信度评分、支持弃权感知并附带审计 ID 的 /api/fit 数据包 |
因为两者都无法感知面料。尺码表用 4 个一维数字去描述三维身体,根本无法分辨面料是零弹力的原色赤耳还是四向弹力罗马布。生成式试穿图片能让衣服在身上看起来很协调,却无法告诉你当顾客坐下时大腿围是否会超出面料的拉伸极限。合身是一个力学事实,即各分区的周向应变对照面料的弹性极限,而这正是尺码表和渲染图所遗漏的。Contour 直接计算该物理量,这也是为什么同一身体在原色赤耳上适合 29 码而在弹力牛仔裤上适合 28 码。
不是。这与我们的立论恰恰相反。虚拟试穿可以在身体上渲染出牛仔裤的外观,却依然无法知道它是否真正合身,因为漂亮的像素不等于合身数据。Contour 输入身体测量数据,并输出基于面料力学计算得出的尺码、置信度以及各分区合身说明。它是一份结构化报告,而不是一张图片,这也正是它能够被 AI 购物智能体在结账环节直接调用的原因。
不,我们并不作此宣称。100% 是在固定的 105 对合成标注黄金测试集上测得的,该数据集的标签使用了与引擎相同的可测量面料拉伸数据,因此它不是一个完全独立的理论真值系统,100% 只是该特定构建集的特有属性,而非开放世界的通用准确率保证。真正应当主打的核心指标是在相同标签下相比真实传统方法(仅依腰围匹配尺码)的提升幅度:Contour 领先 40 个百分点(100% 对 60%),且优势集中在最难把握合身度的硬质牛仔与正装品类。请将 100% 视为标注集上的内部上限,绝不要将其当作现实复杂场景下完美合身的承诺。
不需要。Contour 坚持隐私优先原则:仅输入测量数据,无需任何照片。演示直接接收厘米级测量值并对照服装面料力学进行核算,这也是我们在实际交付中会提供的保护隐私接口。设备端的照片测体功能在演示中仅为桩实现,未作构建,因此此处没有任何逻辑依赖单目人体重建技术。
在当前演示中暂未直连。Shopify、CLO-SET 和 Browzwear 连接器是在模拟数据夹具后方规范定义的适配器接口,并非实时生产集成。顾客、服装、商品文案和测量数据均为合成测试夹具,非真实目录。同时从范围上明确,这是一个降阶解析应变模型(页面所述的 Tier-1 与 Tier-2 物理模型),而非完整的有限元布料仿真;我们在 Tier-3 级别与 CLO3D 或 Browzwear 等 FEA 工具集成,并不在此重复造轮子。
因为承担核心责任的决策并不是由 LLM 作出的。尺码判定与弃权逻辑均在经过单元测试的纯 Python 代码中计算:针对每个候选尺码,引擎计算各分区相对于面料弹性极限的周向应变,并由 8 个单元测试固化这一物理机制。语言模型仅仅负责将凌乱的供应商文案解析为结构化面料规格并对最终说明进行润色;它绝不计算数值,也不作出决策。智能体提供建议,代码作出裁定,正是这一特性确保了它可以作为安全可靠的 API 供您的结账系统调用。
它会如实弃权,而不是盲目硬猜。当没有任何单一尺码能在所有分区均达到舒适标准时(例如在零弹力面料上,小号大腿过紧而大号腰围偏松),策略门控会推荐相对最不差的尺码并标记「建议跨尺码购买或咨询造型顾问」,而不是像传统尺码表那样自信地打印出一个错误尺码。在标注的 105 对黄金集上,引擎对 33 对执行了弃权。另一项诚实治理行为是对抗性审查器,它能阻断物理矛盾的供应商文案(例如原色赤耳带四向弹力),并将其路由至人工审核而不下发任何推荐。
能感知面料的物理力学,以及无合适尺码时如实弃权的严谨机制。
如果您的电商、逆向物流或工程团队正在探索如何为顾客(以及即将代表他们购物的 AI 智能体)提供值得信赖的尺码信号,我们真诚希望倾听您的想法。这是整个行业共同面临的挑战,答案也将属于全行业。