一、NLP 的范式转移
几年前做情感分析或文本分类,流程是这样的:收集标注数据 → 特征工程 → 训练模型 → 调参 → 部署。完整走下来需要团队里有了解机器学习的人,周期以周计。
现在做同样的任务:写一个 Prompt,调一个 API,拿结果。
这不是简化,是范式转移------从训练模型变成了调用服务。底层仍然是机器学习,但对使用者来说,从"怎么训练"变成了"怎么描述任务"。
二、一个情感分析,三行代码
javascript
const response = await fetch('https://api.example.com/v1/chat', {
method: 'POST',
headers: { 'Authorization': 'Bearer ' + apiKey },
body: JSON.stringify({
model: 'gpt-4',
messages: [{
role: 'user',
content: `分析以下评论的情感倾向,只回复 positive、negative 或 neutral:
评论:${userComment}`
}]
})
});
const data = await response.json();
这条请求取代了以前一整套 NLP pipeline。模型理解了"情感倾向"的含义,理解了什么算 positive,什么算 negative。不需要训练数据,不需要特征工程。
三、更复杂的任务:提取 + 结构化
情感分析只是最简单的场景。稍微复杂一点的任务,比如从一段客服对话中提取关键信息,也可以用同样的方式:
javascript
const prompt = `从以下客服对话中提取信息,返回 JSON:
{
"customer_name": "客户姓名或 null",
"issue_type": "问题类型(退货/换货/物流/其他)",
"urgency": "紧急程度(high/medium/low)",
"order_id": "订单号或 null"
}
对话:
${transcript}`;
关键在于指定了输出格式。JSON 化的输出让下游代码可以直接消费,不需要解析非结构化的文本。
四、什么时候该用 API,什么时候不该用
API 调用不是 NLP 的银弹。以下场景适合:
- 分类和情感分析:positive/negative、垃圾邮件检测、意图识别
- 信息提取:从非结构化文本中提取结构化数据
- 文本生成:摘要、润色、扩写
- 翻译和改写:跨语言、语气调整
不太适合的场景:
- 超大批量处理:API 调用的延迟和成本在百万级数据量上不可忽视
- 实时性要求极高:API 调用有网络延迟
- 敏感数据:文本不能离开本地网络时,本地小模型更安全
五、前端工程师的 AI 全栈能力
对前端工程师来说,这种范式转移意义尤其大。以前对接 NLP 能力需要后端配合搭建模型服务。现在前端可以直接调用 API,把 NLP 能力嵌入到浏览器端应用中------从用户输入到 AI 处理到结果展示,全部在客户端完成。
唯一的代价就是学会写 Prompt。而这个能力------用自然语言描述任务------恰好是技术写作和需求分析能力的延伸,不需要额外的专业背景。