智能客服
智能客服是 LLM 落地最成熟的场景之一。传统方案基于规则或检索,体验僵硬;LLM 方案能理解复杂意图和多轮对话。
架构设计
用户消息 → 意图分类 → 知识检索 → LLM 生成 → 格式化成标准回复
↓
情感检测 → 升级到人工
技术要点
class CustomerServiceAgent:
def __init__(self):
self.intent_classifier = load_intent_model()
self.knowledge_base = VectorStore("kb_index")
self.llm = ChatOpenAI(model="gpt-4o-mini")
self.escalation_rules = load_escalation_rules()
def handle_message(self, message, user_info):
# 1. 意图识别
intent = self.intent_classifier.predict(message)
if intent.confidence < 0.6:
return self.clarify_intent(message)
# 2. 检索知识
context = self.knowledge_base.search(message, k=3)
# 3. 检查是否需升级
if self.should_escalate(intent, user_info):
return self.create_ticket(message, user_info)
# 4. LLM 生成回复
response = self.llm.invoke(self.build_prompt(
message, intent, context, user_info
))
return response
效果指标
- 首解率(FCR):65-80%,比传统方案高 15-20 个百分点
- 人工转接率:降低 30-50%
- 平均处理时间:从 8 分钟降到 2 分钟
- 满意度(CSAT):提升 10-15%
编程助手
GitHub Copilot 的成功证明了 LLM 在代码场景的巨大价值。企业级编程助手需要更多考虑安全性和私有代码保护。
核心功能
- 代码补全:根据上下文预测后续代码
- 对话式调试:用自然语言描述问题,模型建议修复方案
- 代码审查:自动发现潜在 bug 和代码风格问题
- 文档生成:从代码自动生成注释和 API 文档
- 代码转换:系统间迁移(如 Python 2→3,Java→Kotlin)
私有化部署考量
# 本地代码补全引擎(使用代码专用模型)
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained(
"deepseek-ai/deepseek-coder-6.7b-instruct",
device_map="auto",
load_in_4bit=True
)
tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/deepseek-coder-6.7b-instruct")
def code_completion(prefix, suffix=""):
# FIM(Fill-in-the-Middle)格式
prompt = f"<fim_prefix>{prefix}<fim_suffix>{suffix}<fim_middle>"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=128)
return tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:])
内容生成
内容生成覆盖写作、营销、社交媒体等多个方向。
常见场景
| 场景 | 输入 | 输出 | 质量要求 |
|---|---|---|---|
| 产品文案 | 产品参数+卖点 | 电商详情页文案 | 转化率导向,真实 |
| 社交媒体 | 话题+风格指示 | 小红书/微博帖子 | 平台调性匹配 |
| 邮件营销 | 目标+受众 | 营销邮件 | 个性化,避免垃圾邮件 |
| 新闻摘要 | 长文章 | 200 字摘要 | 信息准确,保持关键点 |
| SEO 文章 | 关键词+大纲 | 优化文章 | 搜索引擎排名靠前 |
工作流设计
def generate_marketing_copy(product_info, platform, tone):
# 1. 提取关键卖点
features = extract_features(product_info)
# 2. 适配平台格式
platform_template = get_template(platform)
# 3. 多版本生成
versions = []
for t in tone:
prompt = build_prompt(product_info, features, platform_template, t)
versions.append(llm.invoke(prompt))
# 4. A/B 测试短链接
best_version = pick_best_by_ctr(versions)
return best_version
教育
教育场景下,LLM 可以作为自适应学习系统的核心引擎。
典型应用
- 智能出题:根据知识点自动生成选择题、填空题和编程题
- 作文批改:不仅打分,还能给出修改建议和示范修改
- 个性化辅导:根据学生的答题历史,针对性地讲解薄弱环节
- 知识点生成:将复杂概念转化为适合特定年龄段的解释
- 模拟面试:针对面试场景进行模拟练习和反馈
def generate_quiz(topic, difficulty, count=5):
prompt = f"""
为主题 "{topic}" 生成 {count} 道{difficulty}难度的选择题。
要求:
- 每道题 4 个选项,只有一个正确
- 包含详细的答案解析
- 覆盖该主题的不同子知识点
输出格式为 JSON 数组。
"""
response = llm.invoke(prompt)
return parse_quiz(response)
搜索增强
传统搜索引擎基于关键词匹配,LLM 搜索可以理解语义、聚合信息和直接给出答案。
架构差异
传统搜索:
用户查询 → 分词 → 倒排索引匹配 → 排序 → 返回链接列表
LLM 搜索:
用户查询 → 查询理解 → 多路召回 → 重排序 → LLM 综合 → 生成回答 + 引用
实现要点
- 查询改写:将口语化问题转换为更利于检索的形式
- 多路召回:同时使用语义搜索和关键词搜索
- 信息综合:从多个来源提取关键信息,避免偏见
- 引用标注:每条事实都需要标明来源,支持用户核查
- 时效性:对需要最新信息的问题,优先检索近期内容
落地经验总结
成功要素
- 明确边界:清晰定义 LLM 做什么和不做什么
- 评估先行:上线前定义好质量标准,建立评估流程
- 渐进式上线:先覆盖 20% 流量,验证效果后逐步放量
- 人工兜底:保留人工干预通道,关键场景必须有人审
- 持续监控:上线后持续跟踪指标,建立异常告警
常见失败原因
- 幻觉控制不足导致用户信任崩塌
- 延迟太高影响用户体验
- 成本失控,单个 query 成本超出预算
- 缺乏兜底机制,模型出错时无人处理
- 评估指标不全面,优化单一指标导致整体效果下降