先给有条件的结论:如果演示只用于确认功能方向,且你能拿到可独立复现的样本数据,那么演示环境与实际环境不一致并不妨碍判断工具是否适合;但如果演示结果将直接用于决定采购或长期接入,就必须把差异写成可核对的项目,否则结论无效。验证的核心不是追问“演示是不是真的”,而是把双方对同一事实的不同理解拆成可复现的输入、可观察的输出和可对照的边界。
多个角色对同一事实理解不同,通常不是谁在说谎,而是各自看到的层面不同。销售看到的是功能可用,技术看到的是数据链路,业务看到的是结果是否符合预期。把差异归类,能避免把精力花在争论上。
归类之后,每一类都能转成一个可以核对的项目,而不是停留在“感觉不一样”。
第一步,要求对方提供演示所用的输入样本,哪怕只是脱敏后的一小部分。你拿同样的输入在自己环境跑一遍,比较输出。这一步能直接暴露数据差异和版本差异。
第二步,约定一组边界条件并写入记录,例如空值比例、单次处理上限、并发数量、权限层级。不要问“支持多大数据量”,而要问“超过某个量之后会发生什么”,并请对方在演示中当场触发这个边界。
第三步,把口头承诺改写成可观察的现象。例如把“结果准确”改成“在给定样本上,人工抽查前若干条结果,错误类型有哪些”。这一步的结果会决定下一步:如果边界行为可复现,说明差异可控;如果对方回避触发边界,说明演示结论不能外推。
假设你所在团队准备评估一款关键词挖掘工具。售前演示中,输入十个种子词,工具返回了一批相关词,看起来覆盖很全。你回到自己环境,用同样的十个种子词,却发现返回数量明显偏少,且部分词与业务无关。
这时不要先下结论说工具不行,而是按下面顺序核对:先确认两边输入的种子词是否完全一致,包括大小写和空格;再确认两边选择的地域、语言、时间范围是否相同;然后确认演示是否开启了某个默认关闭的扩展选项;最后确认演示版本与你获得的版本号是否一致。假设核对后发现,差异来自演示开启了扩展匹配而你的环境默认关闭,那么结论就变成“功能存在,但需要手动开启并评估开启后的噪声水平”,而不是“工具不适用”。这个假设说明:差异本身不否定适用性,无法定位的差异才否定适用性。
有一种情况会让上述验证全部作废:演示环境与你要使用的环境在数据来源上根本不同,且对方无法提供任何可迁移的输入样本。例如演示用的是对方自建的干净语料,而你的实际数据来自多个格式不统一的内部系统,且对方以保密为由拒绝让你带样本进入演示。
在这种情况下,即使演示看起来完美,也不能据此判断适用性,因为你无法确认工具在你真实数据上的行为。此时正确的做法不是继续加码演示,而是要求一次受限的真实数据试跑,或者把评估目标降级为“仅确认功能清单”,并在采购决策中明确标注这一限制。请求量或抓取量在演示中表现正常,不能单独证明工具在你的环境中也会正常,因为数据来源不同本身就是一种合理解释。
把上面所有核对结果整理成一页差异清单,包含三列:演示中的表现、你环境中的表现、差异原因是否已定位。对于已定位的差异,写明触发条件和影响范围;对于未定位的差异,写明需要对方提供什么才能继续。这份清单会直接影响下一步:已定位且影响可控的差异,可以进入试用或小范围接入;未定位的差异,应暂停采购流程,直到对方给出可复现的说明。如果对方只能提供口头解释而无法提供可核对的输入或边界行为,那么无论演示多么流畅,都不足以支撑“适合”这个结论。