电商客服做工单分类,完全可以用jev的choice、score、boolean三类能力,一次性判断工单所属队列、紧急程度,以及要不要转人工处理。它的核心作用不是自动给用户回消息,而是先把工单精准分到对应的处理通道里。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

这张封面图截自Vercel AI Gateway的Jev模型页,咱们这期内容是手把手教你用Jev搭电商客服工单自动分类系统,这张图只用来标注模型的官方入口,不是实际业务操作的步骤截图。
电商工单为什么适合 Jev
催发货、退款、商品破损、账号登录、开发票这些问题,平时全挤在同一个客服入口里。要是全丢给大模型自动回复,很容易出现越权承诺的问题;要是只靠写死的关键词规则,又根本兜不住用户五花八门的口语化表达。Jev最适合放在工单进系统的第一道结构化判断环节,直接把零散的用户文本转换成对应的处理队列、优先级标记和人工复核标记。
分类系统的核心逻辑
Jev支持在同一次请求里,并行跑多个问题去评估同一份状态数据。
放到电商场景里,你可以把用户发的消息、订单状态、付款状态、物流状态全部塞进state字段,让choice类型的判断输出对应处理队列,score类型的判断打紧急程度分,boolean类型的判断直接标记这单是不是涉及退款或者投诉。
后续业务代码直接按照提前设好的概率阈值做路由就行,全程不让模型直接碰退款、赔付承诺这类高风险操作。
搭建工单分类流程
- 整理输入:把用户消息、订单金额、物流状态、历史投诉次数全部汇总放进state里。
- 定义队列:choice选项就留售后、物流、支付、账号、其他这五类,别拆得太碎,不然反而容易乱。
- 定义紧急度:score设3到5档就行,每一档都写清楚对应什么具体场景。
- 设置人工兜底:只要判定概率接近阈值,或者命中投诉、退款、法律相关的关键词,直接转人工处理。
- 记录结果:把Jev的输出内容和原始工单一起存下来,后续排查分类错误的时候好复盘。
关键词规则、LLM 和 Jev 的差异
| 方案 | 优势 | 短板 |
|---|---|---|
| 关键词规则 | 便宜、结果完全可解释 | 用户口语化表达、多诉求混合的场景容易漏判 |
| 普通大模型 | 能直接生成回复内容 | 输出结果不稳定,权限边界要额外做多层控制 |
| Jev 分类 | 输出完全结构化,天生适合做路由分流 | 需要提前定义好判断规则和概率阈值 |
电商客服工单的落地样本怎么准备
正式接入上线之前,先从历史工单里每类各抽30条售后、物流、支付、账号和其他类的工单,用人工之前的分类结果当对照基准。Jev的分类不用一开始就做到100%替代人工,第一阶段只要能把特征明显的工单先分流走,就能省下客服大量初筛的时间。
如果你们平台本身有退款金额、发货时长、是否签收这类字段,尽量都塞进state里。只靠用户一句“东西坏了”,模型很容易瞎猜;要是同步加上订单已签收、还在售后期内、用户已经上传了破损图片这些信息,分类结果和紧急程度判断的稳定性会高很多。
| 样本类型 | 建议数量 | 验收重点 |
|---|---|---|
| 明确类 | 每类 30 条 | 是否能精准命中对应处理队列 |
| 混合诉求 | 50 条 | 是否正确触发转人工逻辑 |
| 高风险 | 30 条 | 退款、投诉类工单是否全进入兜底流程 |
自动派单前的安全边界
工单分类流程可以全自动化,但涉及资金、用户权益变更的操作绝对不能自动化。比如用户发消息说“我东西坏了要退款”,Jev可以把它分到售后队列,也可以标记成需要人工复核,但绝对不能直接调用退款接口。这样既提升了处理效率,又不会让模型的判断直接变成不可控的业务操作。
对客服主管来说,最实用的运营看板不用盯着模型分了多少单看,重点看每个队列的误分率、人工改派率和平均首次响应时间就行。只要改派率持续往下走,就说明你之前设的分类规则越来越合理。
电商工单分类示例
import { experimental_evaluate as evaluate } from 'ai';
export async function classifyTicket(ticket) {
const result = await evaluate({
model: 'typesafe-ai/jev',
state: {
message: ticket.message,
orderStatus: ticket.orderStatus,
paid: ticket.paid,
deliveryDays: ticket.deliveryDays,
},
questions: {
queue: {
type: 'choice',
instructions: 'Which team should handle this ecommerce ticket?',
criteria: {
aftersales: 'refund, return, damaged item, compensation',
logistics: 'shipping, tracking, delivery delay',
payment: 'charged twice, invoice, payment failed',
account: 'login, password, address, membership',
other: 'not covered by the above teams',
},
},
urgency: {
type: 'score',
instructions: 'How urgent is this ticket?',
criteria: ['routine', 'reply today', 'urgent human review'],
},
humanReview: {
type: 'boolean',
instructions: 'Should a human agent review this before any reply?',
},
},
});
return result.answers;
}
分类上线前要排查什么
- 队列名称别随便改,不然前后的历史数据没法对齐对比。
- 每个选项的描述要写清业务边界,别只放一个孤零零的名词。
- 退款和赔付类工单只能进人工复核流程,绝对不能自动执行。
- 判定结果落在灰区、概率不达标的工单,直接转人工,别硬塞到某个队列里。
上线验收标准
验收核心逻辑很简单:先抽200条历史工单跑离线回放,统计队列准确率、人工兜底比例,还有高风险样本的误分情况,只要退款、投诉、法律相关的工单误分太多,就先别开自动派单。跑验收的时候,运行环境要固定用Node.js 20以上版本、AI SDK 7.0.105以上版本,提前配置好服务端的AI_GATEWAY_API_KEY。
写相关调用代码的时候,接口调用只能放在Route Handler、Server Action或者独立后端服务里,千万别把网关密钥暴露在浏览器端代码里。











