语用学:从法律纠纷到AI对话,跨学科破解话外之音的实用武器
你有没有遇到过这种尴尬——对方说了一句”这个方案挺好的,再想想”,你当场觉得被夸了,回去认真修改,结果对方来了一句”我觉得还是不够好”。你当时就懵了。”不是挺好的吗?”
这种场景,在日常生活里比比皆是。我们每天都在说话,但真正理解对方说了什么,和真正理解对方想说什么,完全是两回事。这就是语用学要研究的核心问题。
说话和听话之间,隔着一整个宇宙
语言学里有个很经典的区分:语义学研究的是词语本身的意思,语用学研究的是说话人在特定情境下想用这句话表达什么。
举个例子。你说”今天真冷”。
语义学层面:这句话描述的是气温低的事实。
语用学层面:你可能是想让我关窗、想让我多穿点、想约我喝热咖啡、或者只是抱怨天气随口一说。
具体是哪种,得看上下文、语气、你和对方的关系、当时的场景。这就是语用学的魅力——它研究的是语言在实际使用中的意义,而不是词典里查得到那种死板的意义。
语用学之父格赖斯(H.P. Grice)提出了一个著名的”合作原则”。他说,人们在交流时会默认遵循一些准则:
- 量的准则:说的信息量要刚刚好,不要太多也不要太少
- 质的准则:要说真话,别撒谎
- 关系准则:说话要和相关
- 方式准则:说话要清晰、有条理
但现实是,我们经常”违反”这些准则。比如朋友问你”我新买的衣服好看吗”,你明明觉得丑,却说”挺特别的”。这其实就是在利用”违反合作原则”来传达言外之意——你不想伤害朋友,但也不想撒谎。
这就是”话外之音”的运作机制。
法庭上的语言博弈
语用学在法律领域的应用,比很多人想象的还要深刻。
想象这样一个场景。一个律师在庭审中问证人:”你那天有没有看到嫌疑人的脸?”
证人回答:”我当时在接电话。”
律师追问:”所以你没有看到?”
证人沉默。
从语义学看,证人只说了”我在接电话”,并没有明确说”我没看到”。但从语用学角度,证人这个回答已经是在回避核心问题了。律师的追问利用了隐含否定——当被问到A,对方却回答了B,通常意味着B是A的替代答案,即”我没有做A,但我做了B”。
这就是法律语用学研究的重点:语言如何被用来暗示、逃避、误导或强化。
另一个经典案例是关于”模糊限定语”的使用。比如合同里写” reasonable time”(合理时间),什么叫合理?三天算合理吗?三十天呢?这就需要语用学分析——在不同行业惯例、不同场景下,”合理”这个词的交际含义是什么。
我曾经帮一个朋友分析过一份租赁合同。合同里写”房屋如有损坏,租客需及时修复”。房子空调坏了,租客三个月没修,理由是”我觉得还没那么严重”。
从语义学看,”损坏”确实可以包括空调不制冷。但从语用学看,”及时修复”在租房惯例中的隐含意义是”发现问题后尽快处理”,三个月显然不符合这个交际规范。
如果走法律程序,律师会引用语用学原则来论证:在正常租房语境中,空调不制冷属于影响居住的基本问题,”及时”应理解为合理范围内的紧急处理,而非拖延数月。
法律语言从来不是中性的,它承载着大量的语境依赖和隐含意义。
AI如何学会”听懂人话”
如果说法律领域的语用学还比较传统,那AI对话系统中的语用学应用,就是当下最前沿的研究热点之一。
早期的聊天机器人有一个致命问题:它们能处理字面意思,但完全不懂言外之意。
比如用户说:”我最近总是失眠。”
早期的AI可能回答:”失眠可能导致记忆力下降、免疫力降低、情绪波动……建议咨询医生。”
这从语义上是正确的,但从语用学角度看,用户说这句话的交际意图可能是:
- 想要倾诉和安慰
- 想要一些轻松的建议
- 单纯吐槽,不需要医学报告
一个懂语用学的AI应该识别出这个”情感倾诉”意图,然后给出更合适的回应:”失眠确实挺难受的,最近压力很大吗?”
现在大语言模型(LLM)在处理这类问题时已经有了很大进步。但问题依然存在。
让我用一个实际的例子来说明。
假设用户说:”你觉得我这个人怎么样?”
AI如果只从语义层面理解,可能会回答:”我是一个人工智能,没有能力对人的性格或品质做出评价。”
但从语用学角度看,用户问这句话时的语境和意图非常复杂:
- 可能在寻求自我认知
- 可能在测试AI的拟人化程度
- 可能处于情绪低落期,需要情感支持
- 可能只是在闲聊
一个真正”懂”语用学的AI会考虑这些可能性,然后根据对话历史来调整回应策略。
从技术上讲,让AI理解语用学意图,目前主要有几种方法:
第一种是意图识别模型。
通过训练数据让模型学习不同类型的语言背后对应的交际意图。
# 伪代码示例:意图识别系统
class PragmaticIntentDetector:
def __init__(self):
self.intent_patterns = {
"emotional_support": {
"keywords": ["累", "烦", "难过", "睡不着", "压力"],
"context_markers": ["最近", "总是", "一直"],
"expected_response_type": "empathetic"
},
"advice_seeking": {
"keywords": ["怎么办", "应该", "如何", "建议"],
"context_markers": ["想", "需要", "请教"],
"expected_response_type": "guidance"
},
"small_talk": {
"keywords": ["哈哈", "是啊", "嗯嗯"],
"context_markers": [],
"expected_response_type": "casual"
}
}
def detect_intent(self, user_input, conversation_history):
# 结合当前输入和历史对话进行意图判断
intent_score = {}
for intent, pattern in self.intent_patterns.items():
score = self._calculate_match_score(
user_input,
pattern,
conversation_history
)
intent_score[intent] = score
return max(intent_score, key=intent_score.get)
def _calculate_match_score(self, text, pattern, history):
# 基于关键词匹配、上下文相关性和历史对话综合评分
keyword_score = self._keyword_match(text, pattern["keywords"])
context_score = self._context_relevance(text, pattern.get("context_markers", []))
history_score = self._history_consistency(text, history)
return 0.5 * keyword_score + 0.3 * context_score + 0.2 * history_score
第二种是语境建模。
语用学强调”语境决定意义”。AI需要建模对话的上下文环境——包括对话双方的关系、之前的交流内容、当前的场景等。
# 语境建模示例
class ContextModel:
def __init__(self):
self.context = {
"relationship": None, # 用户与AI的关系认知
"emotional_state": None, # 用户当前情绪状态
"topic_history": [], # 话题历史
"uncertainty_level": 0.0 # 用户表达的不确定性程度
}
def update_context(self, user_input):
# 从用户输入中推断语境变化
self.context["uncertainty_level"] = self._detect_uncertainty(user_input)
self.context["emotional_state"] = self._detect_emotion(user_input)
self.context["topic_history"].append(user_input)
def generate_response(self, user_input):
# 根据语境调整回应策略
context = self.context
if context["uncertainty_level"] > 0.7:
# 用户很不确定,给予更多支持和确认
return self._generate_supportive_response(user_input)
elif context["emotional_state"] == "negative":
# 用户情绪负面,优先情感支持
return self._generate_empathetic_response(user_input)
else:
# 正常语境,提供直接回应
return self._generate_direct_response(user_input)
第三种是会话含义计算。
这是基于格赖斯理论的直接应用。AI需要能够识别”违反了什么合作原则”来推断”隐含意义是什么”。
# 会话含义推理示例
class ConversationalImplicature:
@staticmethod
def infer_implicit_meaning(utterance, context):
"""
根据违反的合作原则推断隐含意义
"""
# 检查是否违反了"质的准则"(说了与字面不符的话)
if ConversationalImplicature._detect_sarcasm(utterance):
return {
"literal_meaning": utterance,
"implicature": "反讽/讽刺",
"pragmatic_intent": "表达相反的态度"
}
# 检查是否违反了"量的准则"(信息不足)
if ConversationalImplicature._detect_vagueness(utterance):
return {
"literal_meaning": utterance,
"implicature": "含糊/保留",
"pragmatic_intent": "避免明确表态或保留余地"
}
# 检查是否违反了"关系准则"(答非所问)
if ConversationalImplicature._detect_irrelevance(utterance, context):
return {
"literal_meaning": utterance,
"implicature": "回避/转移话题",
"pragmatic_intent": "不想直接回答或不愿谈论该话题"
}
return {
"literal_meaning": utterance,
"implicature": None,
"pragmatic_intent": "字面意图"
}
@staticmethod
def _detect_sarcasm(text):
# 基于情感对比检测反讽
positive_words = ["好", "棒", "厉害", "完美"]
negative_context = any(word in text for word in positive_words)
# 简化逻辑:实际系统中需要更复杂的检测
return negative_context
不过,要让AI真正”懂”语用学,还有很大的挑战。
最大的问题是语境的不确定性。同样的话,在不同关系的人之间说,含义完全不同。
你说”你变了”,对朋友说,可能是感慨;对伴侣说,可能是抱怨;对同事说,可能是暗示。AI如果没有准确判断双方关系的能力,就会给出完全错误的回应。
另一个挑战是文化差异。不同文化对”礼貌”、”直接”、”含蓄”的定义完全不同。中国人说”我考虑一下”,通常意味着”我拒绝了”;但直来直去的西方人可能会真的去”考虑”。
语用学在日常生活中的应用
其实你不需要是语言学家,也能从语用学知识中获益。
第一个应用:提升沟通效率。
理解”话外之音”,能让你更快把握对方的真实意图。下次有人对你说”这个想法挺新颖的”,别急着开心,先想想——在你们的关系和当前语境下,这句话是赞美还是委婉的否定?
第二个应用:避免误解。
很多时候,冲突不是因为立场不同,而是因为对语言的解读不同。你说过”随便”,对方理解成”我无所谓”,但你的隐含意图是”你定吧,但我希望选得好”。这种错位,就是语用学要解决的。
第三个应用:写作和表达。
如果你写邮件、发通知、做汇报,语用学能帮你更精准地控制接收者的理解。比如,你想让员工”注意格式”,直接说”注意格式”可能显得生硬,说”建议大家在提交前统一检查格式”则更委婉,但传达的意图更明确。
为什么语用学越来越重要
随着AI越来越深入地参与我们的对话,语用学的重要性也在快速上升。
十年前,客服机器人的回复是预设的模板,用户只能选数字菜单。现在,用户可以直接说”我想退款”,AI要理解这背后的意图(是想要全额退、部分退、还是想了解退款政策?),并给出合适的回应。
再比如,智能音箱的语音助手。你说”我有点冷”,它应该:
- 调高空调温度(如果智能家居已连接)
- 给你找一件外套
- 问你是不是需要关窗
- 或者只是简单地回应”是啊,今天确实挺冷的”
哪种回应更合适,完全取决于语境——是早上起床时说的,还是深夜加班时说的,是和谁说的,之前的对话内容是什么。
这就是语用学的用武之地。
说到底,语用学研究的是一件很朴素的事情:人与人如何真正理解彼此。
语言不是代码,不会因为输入相同就一定输出相同。语言是活的,它在每一次对话中产生新的意义,依赖语境、关系、文化、情绪,甚至说话时的微表情和语气。
法律纠纷中,一个字的多义可能导致百万损失;AI对话中,一句话的误读可能让用户感到被敷衍甚至被冒犯。语用学就是那个帮助我们理解”话外之音”的框架——它不保证你每次都能准确理解,但它给了你一套分析工具,让你至少知道”这里可能有问题”,然后去追问、去确认、去理解。
下次再遇到那种”你说东我理解成西”的情况,不妨想想:我们是在说不同的语言,还是在用同一种语言,表达了不同的意思?
这个问题本身,就已经是语用学在起作用了。
